微机原理3-3指令系统Ⅴ控制转移.ppt
《微机原理3-3指令系统Ⅴ控制转移.ppt》由会员分享,可在线阅读,更多相关《微机原理3-3指令系统Ⅴ控制转移.ppt(48页珍藏版)》请在三一办公上搜索。
1、,第二部分 8086/8088指令系统四程序控制转移指令 程序控制转移类指令用来控制程序的执行顺序。程序的执行顺序是由CS和IP确定的(一)无条件转移指令 JMP(二)条件转移指令(三)循环控制指令(四)子程序调用与返回指令(五)中断指令,(一)无条件转移指令JMP 格式:JMP OPRD功能:若OPRD为16位数,则IPOPRD,实现段内转移;若OPRD为32位数,则IPOPRD低16,CSOPRD高16,段间转移。注解:(1)OPRD常是标号Lable,即某条指令的符号地址。先定义标号,后引用,为“向后引用”;先引用标号,后定义,为“向前引用”。,(2)该指令有如下5种形式:、JMP SH
2、ORT Lable;段内短转移 SHORT为短转移运算符(可以省略),标号为短标号8bit,范围不超过-128+127。执行:IPOFFSET 标号Lable,CS不变。、JMP NEAR PTR Lable;段内直接转移 NEAR PTR为近距离属性运算符,标号是近标号16bit。范围不超过-32768+32767。执行:IPOFFSET 标号Lable,CS不变。,、JMP R16/MEM16;段内间接转移 OPRD是16bit的寄存器或者存储器地址。范围是段内任何地方。执行:IP(R16),CS内容不变。、JMP FAR PTR Lable;段间直接转移 FAR Lable是远距离属性运
3、算符,Lable是远标号,在另一个代码段内。执行:IPOFFSET 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
4、指令系统四程序控制转移指令(一)无条件转移指令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(三)循环控制指令(四)子程序调用与返回指令(五)中断指令,格式:JSHORT Lable功能:IP(IP)+disp(8bit)CS 不变
5、 根据FR中标志位来判断是否需要转移。如满足转移条件,则转移到指定的目标地址。如不满足转移条件,则顺序执行下一条指令。注解:(1)全部条件转移指令都是段内直接短转移,转移地址的偏移量限制在-128+127范围内。,(2)条件转移指令中,条件缩写字母的含义是:AAbove 高于 BBelow 低于 CCarry 进位 EEqual 等于 GGreater 大于 LLess 小于 NNot 无 OOver 溢出 SSign 符号 JJump 跳转PE/POParity Even奇偶性偶/奇,1、基于算术标志位的的条件转移指令,(1)JC有进位/借位转移指令 形式:JC 标号 功能:CF=1转移到标
6、号处执行,否则顺序执行。,(2)JNC无进位/借位转移指令 形式:JNC 标号 功能:CF=0转移到标号处执行,否则顺序执行。,(4)JNO无溢出转移指令 形式:JNO 标号 功能:未溢出(OF=0)转移到标号处执行,否则顺序执行。,(3)JO溢出转移指令 形式:JO 标号 功能:溢出(OF=1)转移到标号处执行,否则顺序执行。,(5)JS负数转移指令 形式:JS 标号 功能:若结果为负(SF=1)转移到标号处执行,否则顺序执行。,(6)JNS正数转移指令 形式:JNS 标号 功能:若结果为正(SF=0)转移到标号处执行,否则顺序执行。,(7)JE/JZ等于转移指令 形式:JE/JZ 标号 功
7、能:若等于(ZF=1)转移到标号处执行,否则顺序执行。,(8)JNE/JNZ不等于转移指令 形式:JNE/JNZ 标号 功能:若不等于(ZF=0)转移到标号处执行,否则顺序执行。,(10)JNP/JPO奇性转移指令 形式:JNP/JPO 标号 功能:若结果的低8位有奇数个“1”(PF=0)转移到标号处执行,否则顺序执行。,(9)JP/JPE偶性转移指令 形式:JP/JPE 标号 功能:若结果的低8位有偶数个“1”(PF=1)转移到标号处执行,否则顺序执行。,该组指令需要检测单个位,常与TEST连用,2、基于无符号数的条件转移指令,(1)JA/JNBE大于/不低于不等于转移指令(AB)形式:JA
8、/JNBE 标号 功能:若大于(CF=0 且 ZF=0)转移到标号处执行,否则顺序执行。,(2)JAE/JNB大于等于/不低于转移指令(AB)形式:JAE/JNB 标号 功能:若大于等于(CF=0 或 ZF=1)转移到标号处执行,否则顺序执行。,(4)JBE/JNA低于等于/不高于转移指令(AB)形式:JBE/JNA 标号 功能:若小于(CF=1 或 ZF=1)转移到标号处执行,否则顺序执行,(3)JB/JNAE低于/不高于不等于转移指令(AB)形式:JB/JNAE 标号 功能:若小于(CF=1 且 ZF=0)转移到标号处执行,否则顺序执行。,该组指令需要检测CF、ZF位,常与CMP连用,(1
9、)JG/JNLE大于/不小于不等于转移指令(AB)形式:JG/JNLE标号 功能:若大于(SF=OF 且 ZF=0)转移到标号处执 行,否则顺序执行。,(2)JGE/JNL大于等于/不小于转移指令(AB)形式:JGE/JNL标号 功能:若大于等于(SF=OF 或 ZF=1)转移到标号处 执行,否则顺序执行。,3、基于有符号数的条件转移指令,(3)JL小于/不大于不等于转移指令(AB)形式:JL/JNGE标号 功能:若小于(SFOF 且 ZF=0)转移到标号处执 行,否则顺序执行。,(4)JLE小于等于/不大于转移指令(AB)形式:JLE/JNG标号 功能:若小于等于(SFOF=1 或 ZF=1
10、)转移到标号处执行,否则顺序执行。,该组指令需要检测SF、OF、ZF位,常与CMP连用,JCXZ计数零转移指令 形式:JCXZ标号 功能:若CX=0,转移到标号处执行,否则顺序执行。,4、计数器为0条件转移指令,MOV AL,1000H TEST AL,01H JZ NO MOV CL,0 JMP EXIT NO:MOV CL,1EXIT:HLT,例:在存储器的数据段存放了1个8位无符号数,偏移地址为1000H,判断它是否偶数。是,则将CL寄存器置1,否则CL置0。,第二部分 8086/8088指令系统四程序控制转移指令(一)无条件转移指令 JMP(二)条件转移指令(三)循环控制指令 1、LO
11、OP 2、LOOPE/LOOPZ 3、LOOPNE/LOOPNZ(四)子程序调用与返回指令(五)中断指令,特点:(1)段内短距离相对转移指令,控制程序段的循环执行。(2)循环次数由CX指定。1、循环转移指令 LOOP形式:LOOP short-lable功能:CXCX-1,若(CX)0,则(IP)=(IP)+disp8,转移到目标地址;否则结束循环,继续执行下一句。注解:功能相当于:DEC CX JNZ short-lable,但LOOP对FR无影响。,例:求S=1+2+3+100,MOV CX,100 MOV AX,0 MOV DX,0001HREPEAT:ADD AX,DX INC DX
12、LOOP REPEAT HLT,2、相等(为零)循环转移指令LOOPE/LOOPZ 形式:LOOPE/LOOPZ short-lable 功能:CXCX-1;若CX0且ZF=1,则(IP)=(IP)+disp8,转移到目标地址循环;否则执行下一条指令。,3、不相等(不为零)循环转移指令 LOOPNE/LOOPNZ 形式:LOOPNE/LOOPNZ short-lable功能:CXCX-1;若CX0且ZF=0,则(IP)=(IP)+disp8,转移到目标地址;否则执行下一条指令。,例:从0B00H单元开始存放了256字节的字串,里面有若干“#”,请寻找到第一个“#”后送入AL,且将其地址送入DX
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 指令系统 控制 转移

链接地址:https://www.31ppt.com/p-6284415.html