80X86汇编语言电子教案(3-2-算术指令)

80X86汇编语言电子教案(3-2-算术指令)

ID:37694870

大小:140.38 KB

页数:17页

时间:2019-05-28

80X86汇编语言电子教案(3-2-算术指令)_第1页
80X86汇编语言电子教案(3-2-算术指令)_第2页
80X86汇编语言电子教案(3-2-算术指令)_第3页
80X86汇编语言电子教案(3-2-算术指令)_第4页
80X86汇编语言电子教案(3-2-算术指令)_第5页
资源描述:

《80X86汇编语言电子教案(3-2-算术指令)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第三章80X86的指令系统和寻址方式3.380X86的指令系统根据功能分:学习要求ò数据传送指令1.指令的基本功能ò算术指令2.指令的执行对标志位的影响ò逻辑指令3.指令中的寻址方式ò串处理指令4.寄存器使用的限制和隐含使ò控制转移指令用的情况ò处理机控制指令5.指令使用要求—白燕—三算术指令算术指令包括加法指令减法指令乘法指令除法指令十进制调整指令—白燕—1.加法运算指令加法指令ADDDST,SRC执行操作(DST)¬(SRC)+(DST)CF为进带进位加法指令ADCDST,SRC位标志执行操作(DST)¬

2、(SRC)+(DST)+CF加1指令INCOPR执行操作(OPR)¬(OPR)+1交换并相加指令XADDDSTSRC执行操作TEMP¬SRC+DSTSRC¬DSTDST¬TEMP—白燕—ò除INC指令不影响CF标志外以上指令均对状态标志位正常影响ò操作数可以为字字节386及后继机型可以为双字操作数ò操作数类型必须一致ò操作数种类为M通用R立即数ò双操作数指令最多只能有一个为存储器òXADD指令只能用于486及其后继机型且该指令的SRC只能使用寄存器寻址DST可用寄存器或任一存储器寻址—白燕—例ADDAL5立即

3、数ADDDIDI通用寄存器ADDBLVARB内存操作数ADC[BX+SI-3]AXINCVARBXADDBLDL假设指令执行前BL=12HDL=02H执行后BL=14HDL=12H—白燕—加法指令对状态标志位CF/OF/ZF/SF的影响1结果为负ZF=1结果为0SF=0否则0否则1和的最高有效位有向高位的进位CF=0否则1两个操作数符号相同而结果符号与之相反OF=0否则即正数正数负数负数负数正数时OF=1CF位表示无符号数相加的溢出OF位表示带符号数相加的溢出—白燕—n=8bit带符号数(-128~127)无

4、符号数(0~255)带符号数和无符号数都不溢出无符号数溢出0000010000000111+00001011+111110110000111100000010带(+4)+(+11)=+15OF=0带(+7)+(-5)=+2OF=0无4+11=15CF=0无7+251=2CF=1带符号数和无符号数都溢出带符号数溢出1000011100001001+11110101+011111000111110010000101带(-121)+(-11)=+124OF=1带:(+9)+(+124)=-123OF=1无135+2

5、45=124CF=1无:9+124=133CF=0—白燕—例MOVAX7896HAX=7896H标志位不变即AH=78HAL=96HAL=0EHAH=78HADDALAHAX=780EHCF=1ZF=0SF=0OF=0ADDAHALAH=86HAL=0EHAX=860EHCF=0ZF=0SF=1OF=1ADDAL0F2HAL=00HAH=86HAX=8600HCF=1ZF=1SF=0OF=0ADDAX1234HAX=9834HAH=98HAL=34HCF=0ZF=0SF=1OF=0—白燕—例8086和8028

6、6中实现两个双精度数的加法源操作数BXCX目的操作数DXAXDX=0002HAX=0F365HBX=0005HCX=0E024H指令序列(1)ADDAX,CX(2)ADCDX,BX(1)执行后AX=0D389HCF=1OF=0SF=1ZF=0(2)执行后DX=0008HCF=0OF=0SF=0ZF=0在80386及其后继机型中因机器字长为32位故可以直接用双字指令实现32位字的相加例如ADDEAXECX但是该方法可以推广到64位字的相加上—白燕—例假设有100个16位无符号数存放在从12345678H开始的内

7、存中现需要求它们的和假设32位的和保存在DX高位和AX寄存器中……答MOVAX,1234HMOVDS,AX置数据段寄存器值MOVSI,5678H置指针初值MOVAX,0MOVDX,AX和初始化MOVCX,100NEXT:ADDAX,[SI]计算累加和ADCDX,0INCSIINCSI修改地址指针DECCX循环做100次JNZNEXT……—白燕—3.减法运算指令减法指令SUBDST,SRC执行操作(DST)¬(DST)-(SRC)带借位减法指令SBBDST,SRC执行操作(DST)¬(DST)-(SRC)-CF

8、减1指令DECOPR执行操作(OPR)¬(OPR)-1求补指令NEGOPR执行操作(OPR)¬-(OPR)比较指令CMPOPR1,OPR2执行操作依(OPR1)-(OPR2)结果影响标志—白燕—比较并交换指令CMPXCHGDST,SRC执行操作累加器AC与DST相比较如AC=DST则ZF1DSTSRC否则ZF0ACDST注意累加器可以为ALAX或EAX寄存器SRC只能用81632位寄存器DST可用寄

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。