- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章5控制转移
条件转移指令(18条) 4、条件转移指令 格式:J条件 标号 功能:若满足条件,则程序转移到标号地址去执行,否则继续执行下一条指令 说明:条件转移指令是以标志位的状态,或者是以标志位的逻辑运算结果作为转移依据的。如果满足转移条件,则程序转移到指定的目标地址,否则,继续执行下一条指令。 条件转移都是短转移,转移距离只能在(-128~+127)内完成。 简单转移:条件是由标志寄存器中的标志的状态决定的转移。 复杂转移:条件是由有符号数和无符号数比较大小决定的转移。 A:Above 高于 N:Not 非、无 B:Below 低于 O:Overflow 溢出 C:Carry 进位 S:Sign 符号 E:Equal 等于 Z:Zero 零 G:Great 大于 PE:Parity Even 偶校验 L:Less 小于 PO:Parity Odd 奇校验 条件字母 简单转移指令(10条) FR JC 标号; CF=1有进位,则转移到标号所在地址 JNC 标号; CF=0无进位,则转移到标号所在地址 CF JZ/JE 标号; ZF=1结果为零,则转移到标号所在地址 JNZ/JNE 标号;ZF=0结果为非零,则转移到标号所在地址 ZF JS 标号; SF=1结果为负,则转移到标号所在地址 JNS 标号; SF=0结果非负,则转移到标号所在地址 SF JP 标号; PF=1结果1的个数为偶数个,则转移 JNP 标号; PF=0结果1的个数为奇数个,则转移 PF JO 标号; OF=1结果溢出,则转移到标号所在地址 JNO 标号; OF=0结果未溢出,则转移到标号所在地址 OF 简单转移:条件是由标志寄存器中的标志的状态决定的转移。 复杂转移指令(8条) 复杂转移:条件是由有符号数和无符号数比较大小决定的转移。 无符号数转移指令:比较两个无符号数,并根据比较结果转移 JA 标号 ;两数比较,高于则转移(JNBE) JNA 标号 ;两数比较,不高于则转移(JBE) JB 标号 ;两数比较,低于则转移(JNAE) JNB 标号 ;两数比较,不低于则转移(JAE) 有符号数转移指令:比较两个有符号数,并根据比较结果转移 JG 标号 ;两数比较,大于则转移(JNLE) JNG 标号 ;两数比较,不大于则转移(JLE) JL 标号 ;两数比较,小于则转移(JNGE) JNL 标号 ;两数比较,不小于则转移(JGE) 循环控制指令(4条) 循环控制指令用来控制程序段循环执行的次数,循环次数必须放在CX寄存器中 循环控制指令是段内短距离相对转移指令,转移距离为-128~+127 5、循环指令 LOOP 格式:LOOP 标号 功能:将CX←CX-1,若CX≠0则转到标号地址去执行,否则执行下一条指令 说明:LOOP指令相当于下面两条指令的组合: DEC CX JNZ 标号 但LOOP指令不影响标志位。 LOOP指令可以控制程序段无条件循环执行CX指定的次数,通常放在循环体末尾。 MOV CX,100 ;指定循环100次 AGAIN: ∶ ;循环体入口 ∶ ;循环体 LOOP AGAIN ;CX←CX-1,若CX≠0则转到AGAIN ∶ ;循环结束 6、循环指令 LOOPZ/LOOPE 格式:LOOPZ/LOOPE 标号 功能:若ZF=1且CX-1→CX≠0则转到标号地址去执行,否则执行LOOPE后面的指令 说明:LOOPE指令需要同时满足两个条件才进行循环转移。注意指令中检测的ZF是前面指令影响的结果,不是本指令CX-1的结果 LOOPE指令常用于在一个数据区中寻找内容与规定字符不相同的单元。 SUB DI,BX INC DI MOV CX,DI ;字节数即循环次数送CX DEC BX NEXT: INC BX CMP BYTE PTR[BX],0 ;与0相比较 LOOPE NEXT ;若ZF=1且CX-1→CX≠0则循环转到NEXT JNE FOUND ;若ZF=0,表示找到非0字节,转FOUND处理 ∶ ;ZF=1,未找到,作未找到处理 FOUND:∶ 【例】要在某存储区中查找第一个非0字节,可用以下程序实现,假定该存储区首地址在BX中,末地址在DI中。 7、循环指令 LOOPNZ/LOOPNE 格式:LOOPNZ/LOOPNE 标号 功能:若ZF=0且CX-1→CX≠0则转到标号地址去执行,否则执行LOOPNE后面的指令 说明:该指令与LOOPZ指令仅ZF条件标志不同。 LOOPNE指令常用于在一个数据区中寻找内容与规定字符相同
您可能关注的文档
- 焊接知识讲座原版.ppt
- 煤基合成油项目可行性研究报告.ppt
- 煤矿地质学(第八章地质资料的获得与利用).ppt
- 煤矿地质构造培训.ppt
- 牛版文言特殊句式复习.ppt
- 物态变化赵新.ppt
- 物流金融的操作模式以及主要运作方式解析(博商).ppt
- 物理因素及其对健康的影响8.ppt
- 物理必修一名师分析教材精品.ppt
- 物质世界与物理学绪论.ppt
- 2025届衡阳市第八中学高三一诊考试物理试卷含解析.doc
- 2025届湖南省娄底市双峰一中等五校重点中学高三第二次诊断性检测物理试卷含解析.doc
- 天水市第一中学2025届高三第二次联考物理试卷含解析.doc
- 2025届金华市重点中学高三考前热身物理试卷含解析.doc
- 2025届北京市石景山区第九中学高三第四次模拟考试物理试卷含解析.doc
- 江苏扬州市2025届高三第一次模拟考试物理试卷含解析.doc
- 2025届江苏省南通市高级中学高考物理五模试卷含解析.doc
- 广东省清远市华侨中学2025届高三第一次调研测试物理试卷含解析.doc
- 辽宁省凤城市2025届高三第五次模拟考试物理试卷含解析.doc
- 内蒙古巴彦淖尔市重点中学2025届高考仿真卷物理试卷含解析.doc
文档评论(0)