JMP指令 您所在的位置:网站首页 near汇编 JMP指令

JMP指令

2023-12-25 04:21| 来源: 网络整理| 查看: 265

JMP指令是汇编语言中的一种跳转指令。该指令分直接转移和间接转移两种,直接转移又可分短程(SHORT)、近程(NEAR)和远程(FAR)3种形式。当程序执行到JMP指令时,就无条件地转移到指令中所指示的目的地址。

1、短程转移(直接短转移)

指令格式:JMP SHORT OPRD 语法格式:JMP 地址标号 ;(IP)=(IP)+8位位移量 指令功能:OPRD为转移地址的标号,指令中的SHORT规定了OPRD为有符号的8位二进制数,OPRD为转移地址的偏移量。该指令将程序执行的顺序转移到由(IP)+OPRD形成的新的程序执行的目标地址,从而实现程序的转移。转移的目标地址OPRD在指令中可以直接使用标号地址,但要求转移的目标地址的范围只能在JMP指令所处地址的-128~+127字节范围之内,如超出该范围,汇编时出错。

2、近程转移(段内直接转移)

指令格式:JMP NEAR PTR OPRD 语法格式:JMP 地址标号 ;(IP)=(IP)+16位位移量 指令功能:与短程转移的功能和要求相同,不同之处是近程转移的OPRD为有符号的16位二进制数,指令将程序执行的顺序转移到由(IP)+OPRD形成的新的程序执行的目标地址,转移的目标地址的范围只能在JMP指令所处地址的-32768~+32767字节范围之内,如超出该范围,汇编时出错。使用该指令时NEAR可省略。

3、段间直接转移(远程转移)

指令格式:JMP FAR PTR OPRD 语法格式:JMP 地址标号 ;(IP)= 新的偏移地址, ;(CS)= 新的代码段地址 指令功能:指令中用FAR PTR规定了该指令为段间的转移,OPRD为目的地址的标号,目的地址与JMP指令所在地址不在同一段内。执行该指令时要修改CS和IP的内容,将OPRD所在段的段地址送CS中,OPRD的段内偏移地址送IP中。

4、段内间接转移

指令格式:JMP WORD PTR OPRD 语法格式:JMP reg16/mem ;(IP)= 新的偏移地址 指令功能:与短程转移的功能和要求相同,不同之处是段内间接转移的OPRD 可以是除立即数外的任何寄存或存储器寻址方式,转移的目标地址由OPRD的内容确定。

5、段间间接转移

指令格式:JMP DWORD PTR OPRD 语法格式:JMP mem32 指令功能:指令中用DWORD PTR规定了该指令为段间间接转移,OPRD只能是存储器寻址方式。执行该指令时将寻址到的内存单元的第一个字送入IP中,第二个字送入CS中。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有