- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 转移指令原理
寻址方式: 立即数寻址 直接寻址 寄存器间接寻址 寄存器相对寻址 基址变址寻址 相对基址变址寻址 第九章 转移指令的原理 转移指令 可以修改IP,或同时修改CS和IP的指令统称为转移指令。 转移指令就是可以控制CPU执行内存中某处代码的指令。 转移指令 段内转移:只修改IP,例如 jmp ax 短转移:修改IP的范围为 -128~127 近转移:修改IP的范围为 -32768~32767 段间转移:同时修改CS和IP,例如jmp 1000:0 转移指令 无条件转移指令 条件转移指令 循环指令 过程 中断 9.1 操作符 offset offset 在汇编语言中是由编译器处理的符号,它的功能是取得标号的偏移地址。 问题9.1 9.2 jmp指令 无条件转移指令 它指出两种信息: 转移的目的地址 转移的距离 9.3 依据位移进行转移的jmp指令 jmp short 标号 段内短转移,它对IP的修改范围是-128~127。 也就是说,它向前转移时可以最多越过128个字节,向后转移时最多越过127个字节。 标号:指代码段中的标号,指明了指令要转移的目的地,转移指令执行后,CS:IP指向标号处的指令 理解 jmp short 标号 的机器码 jmp short 标号 的功能是:(IP) = (IP) + 8位位移 (1)8位位移 = “标号”处的地址 - jmp指令后的第一个字节的地址 (2)short 指明此处的位移为8位位移 (3)8位位移的范围为-128~127,用补码表示 (4)8位位移由编译程序在编译时算出。 依据位移进行转移的jmp指令 jmp near ptr 标号 jmp near ptr 标号 的功能是:(IP) = (IP) + 16位位移 (1)16位位移 = “标号”处的地址 - jmp指令后的第一个字节的地址 (2)near 指明此处的位移为16位位移 (3)16位位移的范围为-32768~32767,用补码表示 (4)16位位移由编译程序在编译时算出。 依据位移进行转移的jmp指令 jmp short 标号 段内短转移 jmp near ptr 标号 段内近转移 9.4 转移的目的地址在指令中的jmp指令 jmp far ptr 标号 在该类指令的机器码中包含了标号所在段的段地址和标号在段中的偏移地址 9.5 转移地址在寄存器中的jmp指令 jmp 16位寄存器 功能: (IP) = (16位寄存器) 9.6 转移地址在内存中的jmp指令 jmp word ptr 内存单元地址 段内近转移 jmp dword ptr 内存单元地址 段间转移 从内存单元地址处开始存放两个字,高地址处的字是转移的目的段地址,低地址处是转移的目的偏移地址。 检测点9.1 (1) assume cs;code data segment ? data ends code segment start: mov ax, data mov ds, ax mov bx, 0 jmp word ptr [bx+1] code ends end start 检测点9.1 (2) assume cs:code data segment dd data ends code segment start: mov ax, data mov ds, ax mov bx, 0 mov [bx], ____ mov [bx+2], ____ jmp dword ptr ds:[0] code ends end start 检测点9.1 (3) 2000:1000 BE 00 06 00 00 00 00 … mov ax, 2000h mov es, ax jmp dword ptr es:[1000h] (CS)= ? , (IP)= ? 9.7 jcxz 指令 条件转移指令 所有的条件转移指令都是短转移,在对应的机器码中包含转移的位移,而不是目的地址。 对IP的修改范围为: -128 ~ 127 jcxz 指令 jczx 标号 操作: 当(CX) = 0 时, (IP) = (IP)+8 位位移 当(CX) ≠ 0时,程序执行下一条指令 检测点9.2 assume cs:code code segment start:
您可能关注的文档
- 第九章 作用于呼吸系统药.ppt
- 第九章 保险市场及监管.ppt
- 第九章 公务员的申诉及控告.ppt
- 第九章 储氢材料与磁性材料.ppt
- 第九章 Simulink 仿真_MATLAB全教学(安装、使用、运算、编程、仿真、应用及接口).pptx
- 第九章 分子病及代谢缺陷病.ppt
- 第九章 利率互换及货币互换.ppt
- 第九章 国际贸易政策分析(国际经济学,沈明其).ppt
- 第九章 冲突及管理.ppt
- 第九章 城市历史文化遗产保护及再利用.pptx
- 2025年安徽工商职业学院单招职业技能测试题库带答案(典型题).docx
- 2025年洛阳科技职业学院单招职业技能测试题库带答案(新).docx
- 2025年荆门职业学院单招职业技能测试题库及答案(易错题).docx
- 2025年宣化科技职业学院单招职业技能测试题库(精练).docx
- 2025年包头职业技术学院单招职业技能测试题库带答案(新).docx
- 2025年江西工商职业技术学院单招职业技能测试题库带答案(精练).docx
- 2025年黑龙江农业经济职业学院单招职业技能测试题库精编.docx
- 2025年山东艺术设计职业学院单招职业技能测试题库带答案(基础题).docx
- 2025年陕西工商职业学院单招职业技能测试题库带答案(突破训练).docx
- 2025年承德护理职业学院单招职业技能测试题库【word】.docx
最近下载
- 毕业论文-基于MATLAB的光伏发电研究及其仿真.doc
- Shimano禧玛诺自行车5W60A DEORE XT M770 RD-M771 后变速器 使用说明书.pdf
- 青少年活动中心设计规范.doc
- 2022-2023学年北京市通州区三年级(下)期末语文试卷.docx VIP
- [阜阳]2024年安徽阜阳市县(市区)中小学新任教师招聘495人笔试历年典型考题及解题思路分析附带答.docx VIP
- BitTok 全球Web3 支付生态 系统白皮书1.0.pdf
- 资源统计专员求职个人简历求职简历大学生优秀简历模板.doc VIP
- 血液透析中心感染防控组织结构和全员培训制度.docx VIP
- 建筑工程施工质量控制要点ppt课件.pptx
- 老年人安全风险防范.pptx
文档评论(0)