《程序控制指令》PPT课件

《程序控制指令》PPT课件

ID:39025370

大小:268.02 KB

页数:58页

时间:2019-06-23

《程序控制指令》PPT课件_第1页
《程序控制指令》PPT课件_第2页
《程序控制指令》PPT课件_第3页
《程序控制指令》PPT课件_第4页
《程序控制指令》PPT课件_第5页
资源描述:

《《程序控制指令》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.3.5程序控制指令控制转移指令分为:转移指令循环控制指令调用和返回指令中断指令1表4-6控制转移类指令类别指令名称指令格式无条件转移无条件转移JMP目标标号调用/返回过程调用CALL过程名调用/返回条件转移(无符号数)(CF/ZF)过程返回RET弹出值高于/不低于也不等于转移JA/JNBE目标标号高于或等于/不低于转移JAE/JNB目标标号低于/不高于也不等于转移JB/JNAE目标标号低于或等于/不高于转移JBE/JNA目标标号2续表(2)类别指令名称指令格式条件转移(CF/ZF)条件转移(有符号数)(OF/SF/ZF)进位

2、位为1转移JC目标标号进位位为0转移JNC目标标号等于/结果为0转移JE/JZ目标标号不等于/结果不为0转移JNE/JNZ目标标号大于/不小于也不等于转移JG/JNLE目标标号大于或等于/不小于转移JGE/JNL目标标号小于/不大于也不等于转移JL/JNGE目标标号3续表(3)类别指令名称指令格式条件转移(有符号数OF/SF/ZF)条件转移(OF/PF/SF)小于或等于/不大于转移JLE/JNG目标标号溢出转移JO目标标号不溢出转移JNO目标标号奇偶位为0/奇偶性为奇转移JNP/JPO目标标号奇偶位为1/奇偶性为偶转移JP/JP

3、E目标标号符号标志位为0转移JNS目标标号符号标志位为1转移JS目标标号4续表(4)类别指令名称指令格式循环控制(CX/ZF)循环LOOP目标标号等于/结果为0循环LOOPE/LOOPZ目标标号不等于/结果不为0循环LOOPNE/LOOPNZ目标标号CX内容为0转移JCXZ目标标号中断中断INT中断类型溢出时中断INTO中断返回IRET5转移指令的实质:改变IP(或者CS和IP)的内容。对标志位flags的影响:所有转移指令不会影响标志位flags。分类:分为无条件转移和条件转移两种。1.转移指令6(1)无条件转移指令-JMP本

4、指令无条件转移到指定的目标地址,以执行从该地址开始的程序段。根据设置CS、IP的方法,JMP指令可实现短近远距离跳转,指令分成4种情况。①段内直接转移:JMPdisp指令中给出的8/16位的位移量加到IP,CS保持不变。②段内间接转移:JMPreg/memreg/mem中的16位偏移地址送IP,CS保持不变。③段间直接转移JMPsegment:offset指令中给出的16位的段和16位的偏移地址送到CS和IP。④段间间接转移JMPmem32mem32中的16位的段和16位的偏移地址送到CS和IP。7转移的目标地址由指令直接给

5、出。指令中给出的目标地址实际上是一个相对于IP的位移量:JMPdisp;位移量转移范围汇编语言中格式8位-128~+127JMPSHORTOPRD;短距离16位-32768~+32767JMPNEARPTROPRD或OPRD;近距离注意:disp的助记符写为新IP’,而disp的机器码为位移量d(新IP’=原IP+位移量d)例:JMP0120H;直接转向0120H(缺省为NEAR)JMPSHORTLP;转向LPJMPNEARPTRBBB;转向BBB由于是段内转移,故转移后CS内容保持不变①段内直接转移8无条件段内转移直接转移:J

6、MPLable转移目标地址:段基地址CS不变;偏移地址IP=当前IP+位移量(16位)JMPLableLabel┇┇┇代码段位移量近地址标号CS:IP=9②段内间接转移转移的目标地址由寄存器或存储单元的内容给出。例1:JMPSI;近距离若(SI)=1200H,则指令执行后,(IP)=1200H,于是转向代码段的偏移地址1200H处开始执行。注意:目标地址以段内偏移的形式给出,而不是相对于IP的位移量,所以它是一个16位的操作数。10无条件段内转移间接转移:JMPBXJMPWORDPTR[BX]JMPBX┇┇┇代码段数据段BX=1

7、200┇XXHXXHIP指令码CS:IP11例2:JMP[BX+DI]设指令执行前:(DS)=3000H,(BX)=1300H,(DI)=1200H,(32500H)=2350H;则指令执行后:(IP)=2350H在汇编语言中,段内间接寻址通常写成:JMPWORDPTR[BX+DI]表示所取得的目标地址是一个字。12③段间直接转移在指令中直接给出要转移到的目的段地址和偏移地址。例:JMP2000H:1000H;远距离执行时,(IP)←1000H,(CS)←2000H注意:直接地址为符号地址时,段间直接转移指令中的符号地址前应加操

8、作符FARPTR。例:JMPFARPTRfar_label;远距离其中的far_label为远类型的标号。13无条件段间转移直接转移:JMPFARPTRLable远地址标号JMPLabel┇┇┇代码段1代码段2XXHXXHXXHXXHIPCSCS:IP=14转移

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。