1、1、加法指令ADD2、加进位的加法指令ADC3、加1指令INC,1. 加法指令ADD,格式:ADD OPRD1,OPRD2功能:OPRD1OPRD1+OPRD2,说明:完成两个操作数的相加,结果送至目的操作数OPRD1。其中目的操作数可以是累加器,通用寄存器及存储器操作数。ADD指令影响所有标志位CF、DF、PF、SF、ZF和AF。,例如:,ADD AL,30 累加器与立即数相加ADD BX,3000H 通用寄存器与存储器单元内容相加ADD DI,CX 通用寄存器之间ADD DX,DATABX+SI 通用寄存器与存储单元内容相加ADD BUFFSI,DX 存储器操作数与寄存器相加,2. 加进位
2、的加法指令ADC,格式:ADC OPRD1,OPRD2功能:OPRD1OPRD1+OPRD2+CF,说明:ADC指令与ADD指令类似,只是在两个操作数相加 时,要把进位标志CF的现行值加上去,结果送至目的操作数。ADC指令影响所有标志位CF、DF、PF、SF、ZF和AF。ADC指令主要用于多字节运算中。若有两个4字节的数,已分别放在自FIRST和SECOND开始的存储区中,每个数占4个存储单元。存放时,最低字节在地址最低处,则可用以下程序段实现相加。,例题,计算13579BDF H+02468ACE H的值MOV DX,1357 HMOV AX,9BDF HMOV AX,8ACE H CF=1
3、,(AX)=26ADHMOV DX,0246 H (DX)=159H,3. 加1指令INC,格式:INC OPRD功能: OPRDOPRD,说明:完成对指定的操作数OPRD加1,然后返回此操作数。此指令主要用于在循环程序中修改地址指针和循环次数等。INC指令执行的结果不影响CF位,而对其他5个标志位AF、OF、PF、SF和ZF有影响。,例题,MOV AL,-2 (AL)=-2ADD AL,1 (AL)=-1,CF=0ADD AL,1 (AL)=0,CF=1ADC AL,4 (AL)=5,CF=0MOV AL,-2 (AL)=-2ADD AL,1 (AL)=-1,CF=0INC AL (AL)=0,CF=0ADC AL,4 (AL)=4,CF=0,