转移地址在内存中的jmp指令
功能
修改CS/IP的值
格式
- 段内转移 jmp word ptr 内存单元地址
- 段间转移 jmp dword ptr 内存单元地址
示例
assume cs:code, ds:data
code segment
data segment
dw 256 dup(0)
data ends
start:
mov ax, 1122H ;此处将字型数据1122H赋给寄存器ax
mov ds:[0], ax ;此处将寄存器ax的值赋给内存单元ds:[0]
jmp word ptr ds:[0] ;此处将IP的值改为ds:[0]中的值1122H
mov ax, 1122H ;此处将字型数据1122H赋给寄存器ax
mov bx, 2
mov [bx], ax ;此处将寄存器ax的值赋给内存单元ds:[2]
jmp word ptr [bx] ;此处将IP的值改为ds:[2]中的值1122H
mov ax, 1122H ;此处将字型数据1122H赋给寄存器ax
mov ds:[0], ax ;此处将寄存器ax的值赋给内存单元ds:[0]
mov word ptr ds:[2], 3344H ;此处将字型数据3344H赋给内存单元ds:[2]
jmp dword ptr ds:[0] ;此处将CS:IP的值改为3344H:1122H
code ends
end start