修改IP,或者同事修改CS和IP的指令统称为转移指令
只修改IP,段内转移,比如jmp ax
同时修改CS和IP,称为段间转移,比如jmp 1000:0
短转移IP的修改范围为-128-127。
近转移IP的修改范围为-32768-32767。
转换指令类型
无条件转移:jmp
条件转移指令
循环指令
过程
中断
assume cs:codesg
codesg segment
start: mov ax,offset start ;相当于mov ax,0
s: mov ax,offset s ;相当于mov ax,3,因为第一条指令的长度是3,所以s的标号为3
codesg ends
end start
无条件转移指令
需要转移的目标地址,还有转移的距离(段间转移、段内短转移、段内近转移)
jmp short 标号 ;段内短转移,对IP修改范围是-128~127
似乎短转移jmp xxx的机器码不会直接带上跳转地址,即IP。
而是带上了转移的偏移。