- 1、本文档共52页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理教案7-2
算术运算指令 有5类指令: 加法指令 减法指令 乘法指令 除法指令 十进制调整指令 算术运算指令 表2 算术运算类指令一览表 算术运算指令 表2 算术运算类指令一览表 ( 续 ) 加法指令 共3条: ADD 加法 ADC 带进位加法 INC 加 1指令 加法指令 ADD 指令 ? 基本格式和功能 指令格式: ADD DST, SRC 执行的操作: (DST)←(DST)+(SRC) 寻址方式: ADD mem/reg, mem/reg/data 加法指令 ADD 指令 ? 说明 相加操作影响标志位OF、SF、ZF、AF、PF、CF。 src可以为通用寄存器、存储器或立即数。 dest可以是通用寄存器或存储器,但不能是立即数。 src 和dest不能同时为存储器操作数。 src 和dest不能使用段寄存器。 可进行8位或者16位的加法,但d与s长度要相同。 相加后源操作数不变。 加法指令 ADD 指令 ? 例子 例1:指令举例: ADD AX,0FF00H ADD Byte PTR [SI],13H ADD AX,BX 例2:错误的指令: ADD AX,BL ADD [SI+3],[BX][DI] ADD DS,DX 加法指令 ADC 指令 ? 基本格式和功能 指令格式: ADC DST, SRC 执行的操作: (DST) ←(DST)+(SRC)+CF 寻址方式: ADC mem/reg, mem/reg/data 加法指令 ADC 指令 ? 说明 与ADD指令一样,ADC同样影响 6个状态标志位。 其中CF在指令中参与计算,计算后根据结果重新设置CF的值。 加法指令 ADC指令 ? 用途 ADC指令常用在多字节数相加的场合,利用CF把低字节的进位加到高字节中去。 加法指令 ADC指令 ? 例子 例:用指令实现以下两个32位数的相加运算: 107C932AH 加法指令 INC指令 ? 基本格式和功能 指令格式: INC dest 执行的操作: (dest)←(dest)+1 寻址方式: INC mem/reg 加法指令 INC指令 ? 基本格式和功能 目的操作数dest可以是8位或16位通用寄存器或存储单元,但不能为立即数。 指令执行时把操作数看成是无符号数,加1后设置PF,AF,ZF,SF和OF,但特别要注意,INC指令不影响CF。 加法指令 INC指令 ? 基本格式和功能 例1:AL=05H,则INC AL后,AL=06H 例2:AX=0FFFFH,则INC AX后,AX=? 减法指令 共5条: SUB 减法 SBB 带借位减 CMP 比较 DEC 减1指令 NEG 求补指令 减法指令 SUB, SBB 和 CMP指令 ? 基本格式和功能 指令格式: SUB / SBB / CMP DST, SRC 执行的操作: SUB: (DST)←(DST)-(SRC) SBB: (DST)←(DST)-(SRC)-CF CMP: (DST)-(SRC) 不保存结果,但影响各标志位 减法指令 SUB, SBB 和 CMP指令 ? 基本格式和功能 寻址方式: SUB(SBB,CMP) mem/reg, mem/reg SUB(SBB,CMP) mem/reg, data 说明: d和s不能同为存储器操作数 d不能为立即数。
文档评论(0)