📄 asslandat46.dat
字号:
无条件转移指令JMP
指令格式:JMP OPRD
其中OPRD为转移的目的地址。程序转移到目的地址所指向的指令继续往下执行。
指令功能:JMP指令将无条件地控制程序转移到目的地址去执行。当目的地址仍在同一个代码段内,称为段内转移;当目标地址不在同一个代 码段内,则称为段间转移。这两种情况都将产生不同的指令代码,以便能正确地生成目的地址,在段内转移时,指令只要能提供目的地址的段 内偏移量即够了;而在段间转移时,指令应能提供目的地址的段地址及段内偏移地址值。
本组指令对标志位无影响。
<1>段内直接转移指令:JMP NEAR 标号
即:JMP NEAR 标号; (IP)<--disp16+(IP)
JMP SHORT 标号; (IP)<--disp8+(IP)
<2>段内间接转移指令:JMP OPRD
例如:JMP BP; 转向(SS):(BP)
JMP JNEAR[BX]; 转向(CS):(BX)+JNEAR
JMP WORD PTR[BX][DI]; 转向(CS):(BX)+(DI)
<3>段间直接转移指令:JMP FAR 标号
由于标号之前用FAR说明为远的属性,因而只能是一条段间转移指令。执行该指令时,将把标号所在的段的值送CS,将标号在所属段内的偏移 量送IP,从而形成新的转移地址CS:IP
<4>段间间接转移指令:JMP OPRD其中的OPRD为存储器双字操作数。段间间接转移只能通过存储器操作数来实现。
例如:指令JMP DWORD PTR[BX],其操作数是一个双字类型的存储器操作数,它指向数据段DS,段内偏移为(BX)。从这个DS:BX开始的前两 个字节中,存放了目标地址的段内偏移值,后两个字节中,存放了目标地址所在的新的段的段基址,分别将它们送至IP及CS,便形成了新的 转移地址。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -