汇编语言,想知道ADD和ADDC的具体区别,最好有例子可是说明,不明白这个进位是怎么算的.

问题描述:

汇编语言,想知道ADD和ADDC的具体区别,最好有例子可是说明,不明白这个进位是怎么算的.
1个回答 分类:数学 2014-10-16

问题解答:

我来补答
ADD 两数相加,不加进位位.
ADDC 两数相加,同时再加个进位位.进位当时为1就加1 为0就加0相当于不加
一般用在多字节数相加中.最低位相加,用ADD ,加完后,可能产生进位,高字节相加就用ADDC
这样,低字节相加产生的进位就会被加进来.
比如 0080H + 0180H
低字节相加用 ADD
80H+80H=100H 用ADD指令得到 00H 并溢出产生进位 C=1
高字节 相加用 ADDC
00H+01H=01H 用 ADDC 指令两数相加结果 01H会再加上进位位 1 得到 02H
0080H+0180H = 02 00H
再比如
0080H + 0101H
80H+01H = 81H 没有溢出进位为 C=0
00H+01H =01H 用ADDC指令会 再加进位位 C=0 得到 01H
结果 0080H+0101H = 0181H
 
 
展开全文阅读
剩余:2000