首页
社区
课程
招聘
[求助]movsx的疑问
发表于: 2009-1-2 13:01 3406

[求助]movsx的疑问

2009-1-2 13:01
3406
比如像这个movsx   eax, byte ptr [edx+eax]
我看寄存器EAX的变化 有时候是000000开头 有时候又是FFFFFF开头
为什么?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
2
符号扩展
看 bit7
2009-1-2 13:20
0
雪    币: 19
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
能不能说详细点?
2009-1-2 15:17
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
4
先复习一下二进制数相关的知识,特别是补码的知识。

如果你知道了二进制数补码的表示方式,“符号扩展”不用学就自然知道了。

简单些说,有符号数的二进制补码表示,最高位为符号位,为1则表示数值为负,为0则为正。符号扩展按符号位进行扩展,这样才能保证有符号数的数值和符号都不变而把数的bits数扩展开来。

相应的,“0扩展”就用0进行bits的扩展,这样的扩展对无符号数(或正的有符号数)可以保证数值不变,但对于负的有符号数则会使值发生变化。
2009-1-2 15:33
0
游客
登录 | 注册 方可回帖
返回
//