soloveso 发表于 2011-5-9 17:01:05

关于JMP指令的疑惑,求助

本帖最后由 loop 于 2011-5-19 16:33 编辑

jmp short ptr
jmp near ptr
ip=ip+8位移
范围是-128~127

ip+ip+16位移
范围是-32768~32767


这个8和16是什么概念,想了好久都不理解,

风扫地 发表于 2011-5-9 19:39:24

本帖最后由 风扫地 于 2011-5-9 19:43 编辑

bit就是位的概念。。

对8位的二进制数。。能表示的有符号数的范围是-128~127
对16位的二进制数。。能表示的有符号数的范围是-32768~32767

lxbwyr 发表于 2011-5-10 10:21:35

首先你要先理解一下位

1、同以理解为二进制的一个位数。比如1000,这就是四位的数字。比如10001000,这一看就是8位。
2、同样16位就是有16个0或1的数字。如:我用16个1来表示。1111111111111111。
3、位一般不单独1个位或2个位的出现。一般是以8个16个这样出现。8个位形成一个字节。16位就是两个字节。
4、说一下取值范围。数字有正负(0代表是正数,1代表负数),那用二进制表示正负时,第一位表示正负号。所以8位中第一位看成是正负符号表示位,那么数值就只有7位了。7位最大值是7个1,如01111111,7个1用换算成10进制就是127。那16位二进制,除第一位是正负符号位。数值就是15位。最大值也就是15个1,0111111111111111。换算成十进制数是32767。
5、说一下负数(0代表是正数,1代表负数),8位也就是有8个1(其中第一位1表示*负*符号)数值也是7位。最大值也是7个1,加第一位符号位1,共有8个1。
6、二进制数表示负数就涉及到原码、反码、补码了。请看有关知识。

尐汇 发表于 2011-5-10 15:16:38

jmp short 标号。。。没有ptr哦。。。:)

winddyj 发表于 2011-5-10 16:12:47

1字节=8位二进制数
1字=16位二进制数
1字节能表示的数值范围,无符号数为0~~255,有符号数为-128~~127
JMP跳转时,可能往前也可能往后,就只能用有符号数表示
也就是范围128~~127了
16位的同理

daniel_c 发表于 2011-5-11 11:34:06

你要看下计算机组成原理的书...里面讲的很清楚的.....可以一边看甲鱼的汇编还有计算机组成原理和计算机操作原理...感觉三种正好可以在一起互补...
页: [1]
查看完整版本: 关于JMP指令的疑惑,求助