1.带进位加法指令(ADC,Add with Carry)
指令格式
指令的动作
把目标DST、源SRC和进位标志CF相加, 结果送到目标DST。
该指令实现带进位的加操作。
注意:源和目标的尺寸必须一致。
.386
.model flat,C
.code
start:
sub eax,eax
adc eax,2
stc
adc eax,2
end start
#include<stdio.h>
int main()
{
unsigned char vch1=188,vch2=172,vch3=233;
unsigned int sum=0;
_asm{
sub edx,edx
add dl,vch1
adc dh,0
add dl,vch2
adc dh,0
add dl,vch3
adc dh,0
mov sum,edx
}
printf("sum=%u\n",sum); //sum=593
return 0;
}
2.带借位减法指令(SBB,SuBtraction with Borrow)
SBB指令的一般格式( Integer Subtraction with borrow)
SBB指令的动作
把目标DST减去源SRC和借位标志CF,结果送到目标DST
该指令实现带借位减操作。
注意:源和目标的尺寸必须一致。