瑞星卡卡安全论坛技术交流区系统软件 【求助】80x86汇编中存储器偏移量的疑惑

1   1  /  1  页   跳转

【求助】80x86汇编中存储器偏移量的疑惑

【求助】80x86汇编中存储器偏移量的疑惑

假如单元的首地址为1000H,该单元连续存放了A、B、C、D、E、F、G、H几个字符,如果把第3个字符送到AL寄存器中,应该使用的指令是MOV AL,3[1000]还是MOV AL,2[1000]呢?

下面有几道题,请帮忙解答:
1、把首地址为BLOCK的字数组的第6个字送到DX寄存器中,请写出指令。
2、ARRAY数组存放了7个字数据,请写出指令把其中的包含的0送AX寄存器:
    ARRAY DW 23,26,2,100,32000,54,0
最后编辑2005-07-30 15:41:01
分享到:
gototop
 

【回复“6829729”的帖子】
我刚学了这个的了:是MOV AL,2[1000]
因为第一个的偏移地址相对来说是0啊,第二个是1啊,第三个当然是2了,这只是逻辑问题.如果是MOV AL,3[1000],那就指的是第四个了 啊.

1、把首地址为BLOCK的字数组的第6个字送到DX寄存器中,请写出指令。指令:
lea si,block
mov DX,[si+10]
第一个字的首地址0
第2个字的首地址2
第三个字的首地址4
第四个字的首地址6
第五个字的首地址8
第六个字的首地址10
2、ARRAY数组存放了7个字数据,请写出指令把其中的包含的0送AX寄存器:
ARRAY DW 23,26,2,100,32000,54,0
方法:lea si,ARRAY
    mov ax,[si+12]
就可以了,你自己再仔细看看吧,说不定我还有错呢..
对于字:有公式了:第n个字的首地址:2n-2呀!
gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT