用加法指令时结果超出寄存器范围怎么办?
P54
------
MOV AX,123BH
MOV DS,AX
MOV AL,0
ADD AL,[0] ;显然如果内存单元数据都是FFH
ADD AL,[1] ;加起来肯定超出寄存器AL大小
ADD AL,[2]
------
可以改成:
MOV AX,123BH
MOV DS,AX
MOV AX,0 ;临时存放数据
MOV BX,0 ;存放累加结果
MOV BL,[0]
MOV AL,[1]
ADD BX,AX
MOV AL,[2]
ADD BX,AX
------
可是问题3.5怎么办?没有比AX更大的寄存器了。
可能这里也需要知识屏蔽一下^_^ |