《汇编中的加法指令》由会员分享,可在线阅读,更多相关《汇编中的加法指令(6页珍藏版)》请在金锄头文库上搜索。
1、加法指令|加法指令ADD|加进位的加法指令ADC|加1指令INCADD|格式:ADDOPRD1,OPRD2|功能:OPRD1=OPRD1+OPRD2|ADD所影响的标志位有:CF、DF、PF、SF、ZF和AF。|目的操作数可以是累加器、通用寄存器及存储器操作数。ADC|格式:ADCOPRD1,OPRD2|功能:OPRD1=OPRD1+OPRD2+CF|所影响的标志位与ADD相同|ADC多用于多字节运算中,若有两个4字节的数,已分别放在FIRST和SECOND开始的存储区中,每个数占4个存储单元。存放时,最低字节在地址最低处。INC|格式:INCOPRD|功能:OPRD=OPRD+1|用途:在循
2、环程序中修改地址指令和循环次数等。INC指令执行的结果不影响CF位,而对其他5个标志位AF、OF、PF、SF和ZF有影响。标志位的变化规则|有进位时CF1,无进位时CF0。OF位则根据操作数的符号及其变化情况来设置;若两个操作数的符号相同,而结果的符号与之相反时,OF=1;否则OF=0。溢出位OF既然是根据数的符号及其变化来设置的,当然它是用来表示带符号数的溢出的。关于CF的使用:|CF位可以用来表示无符号数的溢出。由于无符号数的最高有效位只是数字意义,而无符号怠义,所以从该位产生的进位应该是结果的实际进位值,但是在有限数位的范围内就说明了结果的溢出情况,另一方面,它所保存的进位值有时是有用的。例如,双字长数运算时,可以利用进位值把低位字的进位计入高位字中等。这可以根据不同情况在程序中加以处理。|OF位可以用来表示带符号数的溢出,CF位可以用来表示无符号数的溢出。|说明:因为OF表示的只是有符号数即只有两个操作数符号相同,而结果的符号与之相反时,OF=1,即表示有符号数溢出。|CF是进位标志,如果不是上述的地位字的进位加到高位,即在有限的数位内如果无符号数相加结构进位了,则说明相加结构溢出。