主题:帮忙~~帮忙~~~
haoson
[专家分:10] 发布于 2007-06-18 21:25:00
MOV AL,BCD1
ADD AL,BCD2
DAA
MOV BCD3,AL
MOV AL,BCD1+1
ADC AL,BCD2+1 问题1:为什么用ADC而不用ADD指令?
DAA
MOV BCD3+1,AL 问题2:BCD3+1 单元存放的是BCD1单元与BCD2单元内容之和的 高位 还是 低位?
回复列表 (共4个回复)
沙发
塞北江南 [专家分:1350] 发布于 2007-06-18 21:33:00
MOV AL,BCD1
ADD AL,BCD2
DAA
MOV BCD3,AL
MOV AL,BCD1+1
ADC AL,BCD2+1 问题1:为什么用ADC而不用ADD指令?---考虑到有可能向高位有进位
DAA
MOV BCD3+1,AL 问题2:BCD3+1 单元存放的是BCD1单元与BCD2单元内容之和的 高位 还是 低位?-----高位
板凳
skloveyang [专家分:0] 发布于 2007-06-18 22:13:00
MOV BCD3+1,AL
AL 不是低位吗,为什么是高位?
3 楼
haoson [专家分:10] 发布于 2007-06-18 22:22:00
可以具体解释一下为什么是 高位 吗?
4 楼
塞北江南 [专家分:1350] 发布于 2007-06-19 08:42:00
按照字单元的存储规则,高地址存放高位,低地址存放低位
我们计算加法不也是先加低位后加高位吗?
BCD3是低地址,存放低位,BCD3+1是高地址,存放高位,与用哪个寄存器计算的无关!
我来回复