《算术逻辑运算类》PPT课件

《算术逻辑运算类》PPT课件

ID:36915857

大小:925.60 KB

页数:49页

时间:2019-05-10

《算术逻辑运算类》PPT课件_第1页
《算术逻辑运算类》PPT课件_第2页
《算术逻辑运算类》PPT课件_第3页
《算术逻辑运算类》PPT课件_第4页
《算术逻辑运算类》PPT课件_第5页
资源描述:

《《算术逻辑运算类》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章算术和逻辑运算指令算术运算类指令用来执行二进制的算术运算:加减乘除。这类指令会根据运算结果影响状态标志,有时要利用某些标志才能得到正确的结果;使用他们时请留心有关状态标志重点掌握加法指令:ADD、ADC、INC减法指令:SUB、SBB、DEC、CMP、NEG4.3.2算术运算类指令算术运算类指令可处理:不带符号/带符号的8/16位二进制数不带符号的压缩型(2位BCD码)/非压缩型(一位BCD码,高4位补0)十进制数对于加法和减法指令,带符号和不带符号的加减运算的操作过程无区别,可用同一条加法/减法指令完成对于乘法除法运算,运算过程完全不同,分别设有不带符号和带符号的

2、乘法除法的指令对于十进制运算,先采用二进制运算指令,后进行十进制调整的方式来实现加法指令:ADD,ADC和INC减法指令:SUB,SBB,DEC,NEG和CMP他们分别执行字或字节的加法和减法运算,除INC和DEC不影响CF标志外,其他按定义影响全部状态标志位操作数组合:运算指令助记符reg,imm/reg/mem运算指令助记符mem,imm/reg4.3.2.1加法和减法指令ADDdest,src;加法:dest←dest+src;ADD指令使目的操作数加上源操作数,和的结果送到目的操作数SUBdest,src;减法:dest←dest-src;SUB指令使目的操作数减

3、去源操作数,差的结果送到目的操作数1.加和减指令MOVAX,7348H;AX=7348HADDAL,27H;AL=48H+27H=6FH,AX=736FH;OF=0,SF=0,ZF=0,PF=1,CF=0ADDAX,3fffH;AX=736FH+3FFFH=B36EH;OF=1,SF=1,ZF=0,PF=0,CF=0例4加法SUBAH,0F0H;AH=B3H-F0H=C3H,AX=C36EH;OF=0,SF=1,ZF=0,PF=1,CF=1MOVwordptr[200H],0EF00H;[200H]=EF00H,标志不变SUB[200H],AX;[200H]=EF00H-

4、C36EH=2B92H;OF=0,SF=0,ZF=0,PF=0,CF=0SUBSI,SI;SI=0;OF=0,SF=0,ZF=1,PF=1,CF=0例5减法ADCdest,src;加法:dest←dest+src+CF;ADC指令除完成ADD加法运算外,还要加上进位CF,结果送到目的操作数SBBdest,src;减法:dest←dest-src-CF;SBB指令除完成SUB减法运算外,还要减去借位CF,结果送到目的操作数2.带进位加和减指令MOVAX,7856H;AX=7856HMOVDX,8234H;DX=8234HADDAX,8998H;AX=01EEH,CF=1AD

5、CDX,1234H;DX=9469H,CF=0SUBAX,4491H;AX=BD5DH,CF=1SBBDX,8000H;DX=1468H,CF=0例6无符号双字加法和减法CMPdest,src;做减法运算:dest-src;CMP指令将目的操作数减去源操作数,但差值不回送目的操作数比较指令通过减法运算影响状态标志,用于比较两个操作数的大小关系,后面跟转移指令判断两个无符号数大小用JC/JNC或JA/JNBE或JB/JNAE指令判断两个带符号数大小用JG/JNLE或JL/JNGE3.比较指令CMP(compare)INCreg/mem;增量(加1):reg/mem←reg/

6、mem+1DECreg/mem;减量(减1):reg/mem←reg/mem-1INC指令和DEC指令是单操作数指令与加法和减法指令实现的加1和减1不同的是:INC和DEC不影响CF标志INCSI;SI←SI+1DECbyteptr[SI];[SI]←[SI]-14.增量和减量指令例7比较指令CMP(compare)若自BLOCK开始的内存缓冲区中,有100个带符号字数据,要找出其中的最大数,把它存到MAX单元中MOVBX,OFFSETBLOCKMOVAX,[BX]INCBXINCBXMOVCX,99AGAIN:CMPAX,[BX]JGNEXTMOVAX,[BX]NEXT

7、:INCBX,INCBXDECCXJNZAGAINMOVMAX,AXHLTNEGreg/mem;reg/mem←0-reg/memNEG指令对操作数执行求补运算,即用零减去操作数,然后结果返回操作数求补运算可表达成:将操作数按位取反后加1NEG指令对标志的影响与用零作减法的SUB指令一样NEG指令也是一个单操作数指令NEG指令执行的结果一般总是使CF=1除非操作数为0时CF=05.求补指令NEG(negtive)MOVAX,0FF64HNEGAL;AL=0-64H=9CH,AX=FF9CH;OF=0SF=1,ZF=0,PF=1

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

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

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