




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 控制类指令 程序转移指令 处理机控制指令 2 实例 CODESEGMENT MOVAX 1MOVBX 2ADDBX AXJMPLOOPADDBX 4ADDBX 5 LOOP1 CODEENDS 程序中每条指令的寻址是由CS和IP决定的 让程序转移到另一个位置需要修改IP 段内转移 NEAR 或CS IP 段间转移 FAR 如段内转移 128 127 则称为短转移 用SHORT来表示 3 说明 段内转移和段间转移 直接转移直接给出目标地址 间接转移目标地址存放在寄存器或内存单元中 当通过寄存器间接转移时 只能完成段内间接转移 4 实例 MOVAX 0JMPNEXTMOVBX 0MOVCX 0NEXT MOVAH 4CHINT21H MOVAX 0NEXT MOVBX 0MOVCX 0JMPNEXTMOVAH 4CHINT21H 说明 目标地址的计算以当前IP的值为中心 前移或者后移 称为相对转移 以新的值完全代替当前的IP值 称为绝对转移 在86系列中 所有的段内直接转移都是相对转移 所有的段内间接转移和段间间接转移都是绝对转移 5 JMP无条件转移指令 无条件转移指令的格式 JMP标号 无条件转移指令跳转到指定的位置去执行程序 因此指令中必须给出转移位置的地址 即给出标号 分类段内直接转移 段内间接转移段间直接转移 段间间接转移 6 段内直接转移 无条件转移指令的格式 JMPNEAR LABEl IP DISP 16位 IP NEAR LABEl是一个近标号 相对位移量DISP范围在 32768 32767之间 该标号在本段内使用 实例JMPNEXTANDAL 7FHNEXT XORAL 7FH 7 段内直接短转移 无条件转移指令的格式 JMPSHORT LABEl IP DISP 8位 IP SHORT LABEl是一个短标号 相对位移量DISP的范围是在 128 127之间 该标号在本段内使用 实例JMPSHORTNEXTANDAL 7FHNEXT XORAL 7FH 8 段内间接转移 无条件转移指令的格式 JMPREG16 MEM16 IP DISP 16位 IP 实例JMPSIJMP BX JMPWORDPTR BP DI 9 段间直接转移 无条件转移指令的格式 JMPFAR LABEl OFFSET IP 标号是一个远标号 该标号在另一个代码段内 10 段间间接转移 无条件转移指令的格式 JMPMEM32 MEM32 IP MEM32 2 CS 注意 段间的间接转移指令的操作数不能是寄存器 11 条件转移指令概述 标号所有条件转移指令的目标操作数都是短标号 即转向的目标地址距转移指令的下一条指令的第一个字节的相对位移量必须在 128到 127 一个字节所能表示的 范围之内 若条件满足 则将这个相对位移量加到指令指针寄存器IP上以实现其转移 所有条件转移指令对状态标志均无影响 12 条件转移指令 判断两个数大小的条件转移指令测试单个标志的条件转移指令 13 判断两个数大小的条件转移指令 对于判断无符号数大小的条件转移指令 用 高于 和 低于 表示两个数的关系 对于判断带符号数大小的条件转移指令 用 大于 和 小于 表示两个数的关系 14 判断无符号数大小的条件转移指令 JA JNBEJA指令 高于转移 JNBE指令 不低于等于转移 JNA JBEJNA指令 不高于转移 JBE指令 低于 等于转移 15 判断无符号数大小的条件转移指令 JAE JNBJAE指令 高于 等于转移 JNB指令 不低于转移 JNAE JBJNAE指令 不高于等于转移 JB指令 低于转移 16 实例 1 在BUF为首地址的内在单元中 存放两个数据34 78 求出最大值 存放在RESUlE的内存单元中 2 在BUF为首地址的内在单元中 存放三个数据34 78 11 求出最大值 存放在RESUlE的内存单元中 3 在BUF为首地址的内在单元中 存放五个数据34 78 11 98 2求出最大值 存放在RESUlE的内存单元中 17 判断有符号数大小的条件转移指令 JG JNLEJG指令 大于转移 JNLE指令 不小于等于转移 JGE JNLJGE指令 大于等于转移 JNL指令 不小于转移 18 判断有符号数大小的条件转移指令 JL JNGEJL指令 小于转移 JNGE指令 不大于等于转移 JLE JNGJLE指令 小于等于转移 JNG指令 不大于转移 19 测试单个标志的条件转移指令 1 测试ZF 零标志 1 JE JZ指令JE 相等时转移 JZ 结果等于0时转移 2 JNE JNZ指令JNE 不相等时转移 JNZ 结果不等于0时转移 20 测试单个标志的条件转移指令 测试CF 进位标志JC JNC指令1 JC当满足CF 1时 转移到目标地址 2 JNC当满足CF 0时 转移到目标地址 3 测试SF 符号标志JS JNS指令1 JS当满足SF 1时 转移到目标地址 2 JNS当满足SF 0时 转移到目标地址 21 测试单个标志的条件转移指令 测试PF 奇偶标志1 JP JPE 为偶数 当满足PF 1时 转移到目标地址 2 JNP JPO 为奇数 当满足PF 0时 转移到目标地址 5 测试OF 溢出标志1 JO 溢出转移 当满足OF 1时 转移到目标地址 2 JNO 末溢出转移 当满足OF 0时 转移到目标地址 22 实例 给两个无符号数 求最大值和最小值 把大写字母转换为小写字母求出1 10之间的偶数4 在BUF为首地址的内在单元中 存放若干个8位的有符号数 统计数组中大于0的数的个数 并将结果存入RESUlT字节单元中 23 循环控制指令 LOOPLOOPZ LOOPE LOOPNZ LOOPNE 24 LOOP循环控制指令 格式 LOOP标号 标号是短标号 范围 128 127 执行操作 CPU执行LOOP标号时 进行两步操作 1 CX 1 CX2 判断CX中的值 不为0则继续执行循环体 若为0 则退出循环体顺序往下执行 注意 要执行LOOP循环指令 则必须把循环次数预先送入CX中 LOOP为循环体的最后一个语句 25 LOOPZ LOOPE 循环控制指令 格式 LOOPZ标号 标号是短标号 范围 128 127 执行操作 CPU执行LOOPZ标号时 进行两步操作 1 CX 1 CX2 判断CX中的值 CX 0且ZF 1 结果为0 则继续执行循环体 CX 0 CX 0且ZF 0 结果不为0 则退出循环体 顺序往下执行 26 LOOPNZ LOOPNE 循环控制指令 格式 LOOPNZ标号 标号是短标号 范围 128 127 执行操作 CPU执行LOOPNZ标号时 进行两步操作 1 CX 1 CX2 判断CX中的值 CX 0且ZF 0 结果不为0 则继续执行循环体 CX 0 CX 0且ZF 1 结果为0 则退出循环体 顺序往下执行 27 处理器控制指令 这一类指令可以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年4月北京门头沟龙泉镇城市协管员招聘1人考前自测高频考点模拟试题及答案详解(易错题)
- 2025昆明市第三人民医院重症医学科见习护理人员招聘(7人)模拟试卷及完整答案详解1套
- 2025春季河南新乡工商职业学院招聘考前自测高频考点模拟试题及答案详解1套
- 2025年中职高考对口升学(理论考试)真题卷【旅游大类】模拟练习
- 2025河南郑州市中华保险招聘模拟试卷及答案详解参考
- 2025辽宁抚顺高新热电有限责任公司招聘专业技术人员18人考前自测高频考点模拟试题及答案详解参考
- 安全培训效果评语课件
- 2025年山东第一医科大学附属省立医院(山东省立医院)公开招聘部分紧缺岗位聘用制工作人员(58人)模拟试卷及一套完整答案详解
- 2025广东阳春市高校毕业生就业见习招募31人(第三期)模拟试卷及答案详解(必刷)
- 安全培训效果考核课件
- 核桃肽粉生产技术规程(征求意见稿)编制说明
- 《储能技术》课件-3.各种类型的蓄能技术
- (2025)企业首席质量官培训考核试题(附含答案)
- 农业现代化种植技术培训课件
- 中城汽车(山东)有限公司审计报告
- 锂电池pack工厂安全培训课件
- 大学博士竞赛试题及答案
- 钢结构彩钢瓦施工工艺与技术交底
- 2025版煤矿安全规程宣贯培训课件
- 梁启超家教家风课件
- 第5课 我们说方言教学设计-2025-2026学年小学地方、校本课程浙教版(2024)人·自然·社会
评论
0/150
提交评论