- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理33指令系统ⅴ控制转移
第二部分8086/8088指令系统四. 程序控制转移指令 程序控制转移类指令用来控制程序的执行顺序。程序的执行顺序是由CS和IP确定的 (一)无条件转移指令 JMP (二)条件转移指令 (三)循环控制指令 (四)子程序调用与返回指令 (五)中断指令(一) 无条件转移指令JMP 格式: JMP OPRD功能: 若OPRD为16位数,则IP?OPRD,实现段内转移; 若OPRD为32位数,则IP?OPRD低16, CS?OPRD高16,段间转移。注解: (1)OPRD常是标号Lable,即某条指令的符号地址。 先定义标号,后引用,为“向后引用”; 先引用标号,后定义,为“向前引用”。(2)该指令有如下5种形式: ①、JMP SHORT Lable ;段内短转移 SHORT为短转移运算符(可以省略),标号为短标号8bit,范围不超过-128~+127。 执行:IP?OFFSET 标号Lable,CS不变。 ②、JMP NEAR PTR Lable;段内直接转移 NEAR PTR为近距离属性运算符,标号是近标号16bit。范围不超过-32768~+32767。 执行:IP?OFFSET 标号Lable,CS不变。 ③、JMP R16 /MEM16;段内间接转移 OPRD是16bit的寄存器或者存储器地址。范围是段内任何地方。 执行:IP?(R16),CS内容不变。 ④、JMP FAR PTR Lable ;段间直接转移 FAR Lable是远距离属性运算符,Lable是远标号,在另一个代码段内。 执行:IP?OFFSET Lable,CS ? SEG Lable。 ⑤、JMP MEM32:段间间接转移 MEM32为双字单元的存储器地址,不能够用Reg替代。转移范围可达1MB。 执行:IP?(MEM低16,前2字节),CS?(MEM高16,后2字节)。例:JMP SHORT Again;段内短转移 JMP NEAR PTR Begin;段内直接转移 JMP WORD PTR [BP] [DI] ;段内间接转移 JMP BX;段内间接转移 JMP FAR PTR Next;段间直接转移 JMP DWORD PTR [BX] [DI] ;段间间接转移第二部分8086/8088指令系统四. 程序控制转移指令 (一)无条件转移指令JMP (二)条件转移指令19条 1、基于算术标志位的的条件转移指令10条 JC/JNC JO/JNO JS/JNS JE/JNE(JZ/JNZ)JP/JNP(JPE/JPO) 2、基于无符号数的条件转移指令4条 JA/JNBE JAE/JNB JB/JNAE JBE/JNA 3、基于有符号数的条件转移指令4条 JG/JNLE JGE/JNL JL/JNGE JLE/JNG 4、计数器为0条件转移指令1条 JCXZ (三)循环控制指令 (四)子程序调用与返回指令 (五)中断指令格式: J×× SHORT Lable功能:IP←(IP)+disp(8bit) CS 不变 ①根据FR中标志位来判断是否需要转移。 ②如满足转移条件,则转移到指定的目标地址。 ③如不满足转移条件,则顺序执行下一条指令。注解: (1)全部条件转移指令都是段内直接短转移,转移地址的偏移量限制在-128~+127范围内。 (2)条件转移指令中,条件缩写字母的含义是: A—Above高于 B—Below低于 C—Carry进位 E—Equal等于 G—Greater 大于 L—Less小于 N—Not无 O—Over溢出 S—Sign符号 J—Jump跳转PE/PO—Parity Even奇偶性偶/奇 1、基于算术标志位的的条件转移指令(1)JC—有进位/借位转移指令 形式:JC标号 功能:CF=1转移到标号处执行,否则顺序执行。(2)JNC—无进位/借位转移指令 形式:JNC标号 功能:CF=0转移到标号处执行,否则顺序执行。(3)JO—溢出转移指令 形式:JO标号 功能:溢出(OF=1)转移到标号处执行,否则顺序执行。(4)JNO—无溢出转移指令 形式:JNO 标号 功能:未溢出(OF=0)转移到标号处执行,否则顺序执行。(5)JS—负数转移指令 形式:JS 标号 功能:若结果为负(SF=1)转移到标号处执行,否则顺序执行。(6)JNS—正数转移指令 形式:JNS 标号 功能:若结果为正(SF=0)转移到标号处执行,否则顺序执行。 (7)JE/JZ—等于转移指令 形式:JE/JZ 标号 功能:若等于(ZF=1)转移到标号处执行,否则顺序执行。(8)JNE/JNZ—不等于转移指令 形式:JNE/JNZ 标号 功能:若不等于(ZF=0)转移到标号处执行,否则顺序执行。(
文档评论(0)