微机原理与应用第4章3节2010SGQ.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与应用第4章3节2010SGQ

复习 1、8086指令系统都包括哪些类指令。 2、MOV、XCHG、PUSH、POP、XLAT、LEA指令用法和应用范围及对标志位的影响。 时间:2010—9月25日(第四周周六) 熟悉8086的基本指令对标志的影响、符号扩展的含义、压缩和非压缩BCD的格式 掌握基本指令:ADD/ADC/INC、SUB/SBB/DEC/CMP/NEG、DAA/DAS、AAA/AAS、MUL/IMUL、DIV/IDIV、 了解不常使用的指令:AAM/AAD; 加法指令 压缩的BCD码: 一个字节可表示两个BCD数 十进制数 压缩BCD 非压缩BCD 0 0000 0000 0000 0000 1 0000 0001 0000 0001 2 0000 0010 0000 0010 …… ………… …………… 9 0000 1001 0000 1001 10 0001 0000 00000000 11 0001 0001 00000001 12 0001 0010 00000010 例:45+ 54 0100 0101 + 0101 0100 例45+55 BCD码加法的规则: 两个BCD数对应的BCD码位用二进制加法相加,若产生的和小于10则保持不变,结果正确;如果产生的和≥10,非法BCD数,则在和数上作加6修正 两个BCD数对应的BCD码位用二进制加法相加后,如果向高位BCD码产生了进位,说明逢十六进一,丢掉了6,所以也要作加6修正。加6修正的原因是:BCD数实际上就是十进制数的另一种表示方法,因该保持逢十进一 例 98+77 mov al,68h ;al 68h,压缩BCD码表示真值68 mov bl,28h ;bl 28h,压缩BCD码表示真值28 add al,bl ;二进制加法:al 68h+28h 90h daa ;十进制调整:al 96h ;实现压缩BCD码加法:68+28=96 减法指令 例: SUB BX,CX ;BX? BX - CX SUB [BP+2],CL ; BP +2 ? BP +2 - CL SUB AL,20 ;AL ? AL -20 SUB SI,5010H ;SI ? SI -5010H SUB WORD PTR [DI],1000H ; DI +1 DI ? DI +1 DI -1000H 例: SBB AX,2030H;执行:AX ? AX ? 2030H ? CF SBB WORD PTR [DI+2],1000H; DI +3 DI +2 ? DI+3 DI+2 -1000H -CF SBB DX, [BX+20H] 例: DEC AX ; AX -1,结果送AX DEC BL ;BL ? BL -1 DEC BYTE PTR [DI+2] ;将DI+2所指向的一个字节的内存单元减一 例:NEG AL ;对AL中的数求补,结果送AL NEG CX ;对CX中的数求补,结果送CX mov al,68h ;al 68h,压缩BCD码表示真值68 mov bl,28h ;bl 28h,压缩BCD码表示真值28 sub al,bl ;二进制减法:al 68h-28h 40h das ;十进制调整:al 40h ;实现压缩BCD码加法:68-28=40 mov ax,1234h mov bx,4612h sub al,bl das ;34-12=22,CF=0 xchg al,ah sbb al,bh das ;12-46=66,CF 1 xchg al,ah ;1 1234-4612=6622 JMP指令:段内相对转移 JMP指令:段内寄存器间接转移 JMP指令:段内存储器间接转移 JMP指令:段间直接转移 JMP指令:段间间接转移 SHL / SAL指令 SHR指令 SAR指令 ROL指令 ROR指令 RCL指令 RCR指令 逻辑运算指令 8086有一连串的条件转移指令,以某些标志位或者这些标志位的逻辑运算 作为依据,若满足这些指令所规定的条件,则程序转移至指定目标;否则, 则程序顺序执行该条件转移指令的下一条指令。 指定目标 下一条指令 N Y 条件转移指令 判断两数相等与否:JZ/JNZ:结果为零/结果不为零 跳转 JE/JNE: 结果相等/结果不相等 跳转 判断两数大小 : JNC/JC A B/A B/A B 无符号 JAE/JBE A≥B/A≤B JNA/JNB A≤B/ A≥B JNAE/JNBE A B JG/JL A

文档评论(0)

5500046 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档