+ -
当前位置:首页 → 问答吧 → 初学汇编请教

初学汇编请教

时间:2011-07-09

来源:互联网

实现95+59的BCD码加法,并将结果存入30H,31H单元
MOV A,#95H
ADD A,#59H
DA A
MOV 30H,A
MOV A,#00H
ADDC A,#00H 加进位
DA A
MOV 31H,A

我想问的是,红色的那句为什么加的是#00H。。。注释上写的是加进位,是不是所有有进位的都是加#00H,然后再使用十进制调整指令? 不是很懂红色的那句。谢谢各位

作者: guohaoqing   发布时间: 2011-07-09

楼主也看到了,在 ADDC A,#00H 前面是 MOV A,#00H。这说明在执行ADDC A,#00H后,如果前面的运算95H+59H如果有进位那么A就会为1,没有就会为0。显然是有进位的啦。如果是12H+32H,当然就没有进位了。楼主可以仔细分析一下。

作者: haojiahuo50401   发布时间: 2011-07-09