- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算术运算类指令 一、加法指令 1、加法指令ADD 功能:将源操作数的内容和目的操作数的内容相加,相加后的结果保存在目的操作数中,并根据结果置相关标志位 例:加法运算 ADD AL , 30 ;累加器与立即数相加 ADD BX , [3000H] ;通用寄存器与存储单元内容相加 ADD DI , CX ;通用寄存器之间相加 ADD BETA[SI] , DX ;存储器操作数与寄存器相加 这些指令对标志位 CF 、 OF 、 PF 、 SF 、 ZF 和 AF 有影响。 2、带进位加法指令ADC 功能:ADC指令将源与目的操作数相加,再加上进位CF标志,结果送目的操作数 ADC指令按状态标志的定义相应设置 用法:ADC指令主要与ADD配合,实现多精度加法运算 【例】无符号双字加法运算。 MOV AX,4652H ;AX=4652H ADD AX,0F0F0H ;AX=3742H,CF=1 MOV DX,0234H ;DX=0234H ADC DX,0F0F0H ;DX=0F325H,CF=0 例:两个无符号双精度数的加法例子,求0002F365H+0005E024H=? 在内存的 First 和 Second 开始的区域中分别存放着 2F365H 和 5E024 H 两个数,要求求其和,并存入 Third 中。 3、增1指令INC 功能:对指令中指定操作数的内容加1后,又回送给该操作数 INC指令不影响进位CF标志,按定义设置其他状态标志 用法:主要用于在循环程序中修改地址指针和循环次数等 加法指令小结 加法指令对标志位的影响:ADD和ADC指令对所有的6个状态标志都有影响,INC指令不影响CF,影响其他5个标志。学习加减法指令要会设置标志、使用标志。 例题:(对错混排) ADD AL,25H ADD BYTE PTR[BX],05 ADD AL,125H ADD WORD PTR[BX],05 ADD AX,2500H ADD AL,BL ADD AX,05 ADD [BX],05 二、减法指令 1、减法指令SUB 功能:将目的操作数内容与源操作数内容相减之后的结果(差)存入目的操作数中,对操作数的使用及标志位的影响同ADD指令 例3:减法运算 MOV AL,0FBH ;AL=0FBH SUB AL,07H ;AL=0F4H,CF=0 MOV BX,1FEH ;BX=1FEH SUB AL,BL ;AL=0F6H,CF=1 2、带借位减法指令SBB 功能:用目的操作数减去源操作数,还要减去标志位CF的值,并将相减的结果回送给目的操作数。与ADC指令类似,在实际编程中,SBB指令主要用于两个多字节/字二进制数的相减运算。 用法:SBB指令主要与SUB配合,实现多精度减法运算 例4:双字减法 MOV AX,4652H ;AX=4652H SUB AX,0F0F0H ;AX=5562H,CF=1 MOV DX,0234H ;DX=0234H SBB DX,0F0F0H ;DX=1143H,CF=1 ;DX.AX=0234 4652H -F0F0 F0F0H =1143 5562H 3、减1指令DEC 功能:完成对指令中指定操作数的内容减1后,又回送给该操作数。与INC指令一样,DEC指令通常也用于在循环过程中对地址指针和循环次数的修改 三条减法指令用法: ①SUB、SBB、DEC三条指令的指令格式以及基本用法与ADD、ADC、INC相同。 ②SUB和SBB影响所有6个状态标志: ③DEC不影响CF标志,影响其他5个标志。 4、求补指令NEG 功能:对指令中指定的操作数内容取补后,再将结果回送给该操作数。 对一个操作数求补实际上就相当于用0减去该操作数的内容,故NEG指令也属于减法指令。该指令的间接求法是将操作数的内容按位求反末位加1后,再回送给该操作数 0-XXXX XXXXB =( 1111 1111B + 1 )-XXXX XXXXB 求补运算也可以表达成:将操作数按位取反后加1 NEG指令对标志的影响与用零作减法的SUB指令一样 理解N
文档评论(0)