您的位置首页生活小窍门

汇编JMP语句

汇编JMP语句

http://www.cnblogs.com/sunt/archive/2010/11/25/1887657.html 直接到这看看吧格式描述举例类别说明jmp 16位寄存器以16位寄存器的值改变IPjmp ax段内转移 jmp 段地址:偏移地址以立即数改变段地址和偏移地址jmp 0045H:0020H段间转移 jmp short 标号以标号地址后第一个字节的地址来改变IP,实际上这个功能可以作如下描述:(IP)=(IP)+8bit位移8bit位移指的是从jmp指令后第一个字节开始算起jmp short sign段内短转移对IP的修改范围是-128->127,实际算法是编译器根据当前IP指针的指向来计算到底偏移多少个字节来指向下一条指令,下面这段代码就会出编译错误jmp short sdw 200 dup(2)s: mov ax,4因为跳转超过了范围jmp near ptr 标号以标号地址后第一个字的地址来改变IP,实际上这个功能可以作如下描述:(IP)=(IP)+16bit位移16bit位移指的是从jmp指令后第一个字节开始算起jmp near ptr sign段内近转移对IP的修改范围是-32768->32767jmp far ptr标号以标号的段地址和指令地址同时改变CS和IPjmp far ptr sign段间转移 jmp word ptr 内存地址以内存地址单元处的字修改IP,内存单元可以以任何合法的方式给出jmp word ptr ds:[si]jmp word ptr ds:[0]jmp word ptr [bx]jmp word ptr [bp+si+idata]段内转移 jmp dword ptr内存地址以内存地址单元处的双字来修改指令,高地址内容修改CS,低地址内容修改IP,内存地址可以以任何合法的方式给出jmp dword ptr [bx]段间转移s1 segmentdw 0a0bh, 0c0dhs1 ends…mov ax,s1mov ds,axjmp dword ptr ds:[0]    格式  描述  搜扰首举例  类别  说明  jmp 16位寄存器  以16位寄存器的值改变IP  jmp ax  段内转移   jmp 段地址:偏移地址  以立即数改变段地址和偏移地址  jmp 0045H:0020H  段间转移   jmp short 标号  以标号地址后第一个字节的地址来改变IP,实际上这个功能可以作如下描述:(IP)=(IP)+8bit位移8bit位移李兆指的是世数从jmp指令后第一个字节开始算起  jmp short sign  段内短转移  对IP的修改范围是-128->127,实际算法是编译器根据当前IP指针的指向来计算到底偏移多少个字节来指向下一条指令,下面这段代码就会出编译错误jmp short sdw 200 dup(2)s: mov ax,4因为跳转超过了范围  jmp near ptr 标号  以标号地址后第一个字的地址来改变IP,实际上这个功能可以作如下描述:(IP)=(IP)+16bit位移16bit位移指的是从jmp指令后第一个字节开始算起  jmp near ptr sign  段内近转移  对IP的修改范围是-32768->32767  jmp far ptr标号  以标号的段地址和指令地址同时改变CS和IP  jmp far ptr sign  段间转移   jmp word ptr 内存地址  以内存地址单元处的字修改IP,内存单元可以以任何合法的方式给出  jmp word ptr ds:[si]jmp word ptr ds:[0]jmp word ptr [bx]jmp word ptr [bp+si+idata]  段内转移   jmp dword ptr内存地址  以内存地址单元处的双字来修改指令,高地址内容修改CS,低地址内容修改IP,内存地址可以以任何合法的方式给出  jmp dword ptr [bx]  段间转移  s1 segmentdw 0a0bh, 0c0dhs1 ends…mov ax,s1mov ds,axjmp dword ptr ds:[0]    格式  描述  举例  类别  说明  jmp 16位寄存器  以16位寄存器的值改变IP  jmp ax  段内转移   jmp 段地址:偏移地址  以立即数改变段地址和偏移地址  jmp 0045H:0020H  段间转移   jmp short 标号  以标号地址后第一个字节的地址来改变IP,实际上这个功能可以作如下描述:(IP)=(IP)+8bit位移8bit位移指的是从jmp指令后第一个字节开始算起  jmp short sign  段内短转移  对IP的修改范围是-128->127,实际算法是编译器根据当前IP指针的指向来计算到底偏移多少个字节来指向下一条指令,下面这段代码就会出编译错误jmp short sdw 200 dup(2)s: mov ax,4因为跳转超过了范围  jmp near ptr 标号  以标号地址后第一个字的地址来改变IP,实际上这个功能可以作如下描述:(IP)=(IP)+16bit位移16bit位移指的是从jmp指令后第一个字节开始算起  jmp near ptr sign  段内近转移  对IP的修改范围是-32768->32767  jmp far ptr标号  以标号的段地址和指令地址同时改变CS和IP  jmp far ptr sign  段间转移   jmp word ptr 内存地址  以内存地址单元处的字修改IP,内存单元可以以任何合法的方式给出  jmp word ptr ds:[si]jmp word ptr ds:[0]jmp word ptr [bx]jmp word ptr [bp+si+idata]  段内转移   jmp dword ptr内存地址  以内存地址单元处的双字来修改指令,高地址内容修改CS,低地址内容修改IP,内存地址可以以任何合法的方式给出  jmp dword ptr [bx]  段间转移  s1 segmentdw 0a0bh, 0c0dhs1 ends…mov ax,s1mov ds,axjmp dword ptr ds:[0]