. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->转移指令的原理
主题 : :  只改了转移距离 ,就成了这样?  [已解决] 回复[ 6次 ]   点击[ 386次 ]  
zcouyangpeng
[帖 主] [ 发表时间:2008-11-04 23:37 ] 
荣誉值:35
信誉值:44
注册日期:2008-09-03 21:36
0C76:0000 B80000        MOV     AX,0000
0C76:0003 EB00          JMP     0005     jmp short s   256位 0-FF(IP)
0C76:0005 40            INC     AX





0C76:0000 B80000        MOV     AX,0000
0C76:0003 EB01          JMP     0006      jmp near ptr s--65536位 0-FFFF(IP)
0C76:0005 90            NOP
0C76:0006 40            INC     AX
-

0C76:0000 B80000        MOV     AX,0000
0C76:0003 EB03          JMP     0008       jmp far ptr s---CS:IP
0C76:0005 90            NOP
0C76:0006 90            NOP
0C76:0007 90            NOP
0C76:0008 40            INC     AX

assume cs:code

code segment
s:mov ax,0
  jmp short  a -------改这句
a:inc ax
code ends
end s


只把JMP指令的转移距离改了 为什么会变成这样?
zcouyangpeng
[第1楼] [ 回复时间:2008-11-05 23:47 ] 
荣誉值:35
信誉值:44
注册日期:2008-09-03 21:36
机器码应该都是EB00?
偏移距离都为零啊
怎么会多出NOP指令?
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved