I have written the simple program as follows..
BYTE xdata u_buf1[1] _AT_ 0x4001; BYTE xdata u_buf[1] _AT_ 0x4000; void main(){ int val; OEB=0xFF; u_buf[3]="a,b"; u_buf1[3]="c,d"; while(1){ IOB=u_buf1[1]; } } I keil debugger memory window it is showing that both of variabls u_buf[1] and u_buf1[1] is storing at location X:0x0000. Whether i assigned them different location. and junk valu is displaying at 0x0000 location.