主题:[讨论]新手求助一个小问题
leilei0728
[专家分:0] 发布于 2006-06-25 20:44:00
MOV AX, 1000H
MOV DS, AX
MOV SI,2000H
MOV DI,3000H
MOV CX,100
AGAIN : MOV AL,[SI]
MOV [DI],AL
INC SI ;修改地址指针(SI) ←(SI)+1
INC DI ;修改地址指针(DI) ←(DI)+1
DEC CX ;修改个数(CX) ←(CX)-1
JNZ AGAIN ;结果不为0返回执行
以上这个程序循环部分MOV AL,[SI]这个指令是什么意思?!AL是8位,SI是16位,怎么传递数据?!
回复列表 (共2个回复)
沙发
aboutbmp [专家分:830] 发布于 2006-06-25 22:22:00
SI保存了一个地址,将这个地址对应的byte值传递给AL
板凳
宽 [专家分:150] 发布于 2006-06-26 14:51:00
以上这个程序循环部分MOV AL,[SI]这个指令是什么意思?
si存放的是地址,mov al,[si] 是把si地址的内容传送给al
AL是8位,SI是16位,怎么传递数据?!
al是8们的。si是16位的没错,但[si]取的是si地址的内容。
我来回复