能修改CS以及IP的指令都是转移指令。它分为段内转移,段间转移。
段内转移:只修改IP的值
段间转移:同时修改CS以及IP的值
段内转移根据转移的距离远近分为:短转移,近转移
短转移:转移范围为-128 – 127
近转移:转移范围为-32768 –32767
根据转移情况又分为:
无条件转移指令
条件转移指令
循环指令
过程
中断
<1> jmp short xxx(行号)
这个是短转移指令,实现段内的转移,在翻译成机器码的时候,码内并没有目标地址,有的只是转移位移,这样做的好处就是防止目标地址过大的时候超出转移的范围。所以
jmp short xxx 本质上是 令 (IP)= (IP)+ 8bit( 转移位移)
<2>jmp near ptr xxx(行号)
Jmp near xxx本质上是令(IP)= (IP)+16bit(转移位移)
<3>jmp far ptr xxx(行号)
同时修改CS以及IP,能在机器码中找到目标地址
<4>jmp reg
(IP) = (reg),修改IP的地址
<5>jmp word ptr 内存单元地址(段内转移)
含义:内存单元存放一个字也就是两个字节,