[工学]第三章-80X86的寻址方式和指令系统-6.pptVIP

[工学]第三章-80X86的寻址方式和指令系统-6.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工学]第三章-80X86的寻址方式和指令系统-6

3.5 80x86的寻址方式及新增指令 一、虚地址方式下的寻址方式 比例因子 具有比例因子的变址寻址 具有比例因子的基址加变址寻址 具有比例因子的相对基址加变址寻址 二、80286增强与增加的指令 1 增强的指令 PUSH IMUL 移位指令 2 增加的指令 PUSHA/POPA INS/OUTS 高级语言类 三、80386/80486增强与增加的指令 1 数据传送 2 算术运算 3 逻辑运算与移位 4 位操作 5 字节置‘1’ 6 Cache管理类 (IP) ← ( mem ), (CS) ← (mem+2 ) mem ( DD类型 ) (IP) ← 符号地址的偏值 (CS) ← 符号地址的段值 符号地址 ( FAR属性) (IP) ← ( reg ) 或(IP) ← (mem) reg (16位)或 mem ( DW类型 ) (IP) ← (IP)当前+ 16位位移量 符号地址 ( NEAR属性) (IP) ← (IP)当前+ 8位位移量 符号地址 (SHORT) 执行操作 操作数 当前IP的值为控制转移指令下一条指令的偏移地址。 位移量 = 符号地址的偏移量 - 当前IP的值。 符号地址(目标地址)= 当前IP的值 + 位移量 (3) 、小结 : 指令格式: JMP 操作数 各控制转移指令允许使用的转移方式 √ × × √ 段 间间接 √ × × √ 段 间 直接方式 √ × × √ 段 内间接方式 √ × × √ 段内直接近 方 式 × √ √ √ 段内直接短 方 式 子程调用CALL 循环转移 LOOPxx 条件转移 Jcc 无条件转移JMP 转移方式 3、循环控制指令 格式 : LOOPxx  符号地址 执行 操作 : ①(CX) ← (CX)- 1 此操作不影响标志 ② 检查转移条件xx,满足转向目标地址去执行;    不满足执行LOOPxx后一条指令 转移方式 只允许段内直接短方式,跳转范围-128~127 CX=0或ZF=1 CX≠0且ZF=0 LOOPNZ CX=0或ZF=0 CX≠0且ZF=1 LOOPZ CX=0 CX≠0 LOOP 不转移条件 转移条件 助记符 与条件转移指令不同的是:循环指令隐含 ( CX ) 减1操作。 LOOP指令 …… DEC CX JNZ next …… LOOP next 循环指令说明: LOOP退出循环条件是(CX)=0 LOOPZ和LOOPNZ提供了提前结束循环的可能, 不一定要等到(CX)=0才退出循环。 ▲ 在串中查找字符,查到了,就可退出,      可用LOOPNZ,不相等时继续查找。 ▲比较两串时,当有字符不等,就可退出,说明两字符串不等。      可用LOOPZ,当相等时继续比较。 ▲执行完 LOOPNZ或LOOPZ后,根据ZF标志的值判断结果 对查找字符,ZF=1,说明找到;否则没有找到。 对串比较,ZF=1, 说明两串相等;否则不等。 4、中断指令 中断(Interrupt): 有时当系统运行或程序运行期间遇到某些特殊情况, 需要计算机自动执行一组专门的例行程序来进行处理。 中断例行程序(或中断子程序)(Interrupt routine): 所执行的这组程序就称为中断子程序。 种类: 中断分为内部(软)中断和外部(硬)中断两种。 内部中断—如除法运算中除数为0、中断指令引起的中断。 外部中断—处理I/O设备与CPU之间的通信。 中断与过程调用: 中断是随机事件或异常事件引起,调用则是事先已在程序中安排好 ; 响应中断请求不仅要保护断点地址,还要保护FLAGS内容; 调用指令在指令中直接给出子程序入口地址,中断指令只给出中断向量码,入口地址则在向量码指向的内存单元中。 六、处理器控制指令 (一)标志处理指令 1、CLC (Clear carry flag ) 清CF标志 2、STC(Set carry flag ) 置CF标志 3、CMC(Complement carry flag ) 对CF求反 4、CLD(Clear direction flag ) 清DF标志 5、STD(Set direction flag ) 置DF标志 6、CLI(Clear interrupt flag )

文档评论(0)

jiupshaieuk12 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档