zoushihe 发表于 2006-11-22 19:25

怎么把字符串'FFFFFFFD'转化为十进制数-3啊?

各位群里的前辈好,谁知道怎么把字符串'FFFFFFFD'转化为十进制数啊(这个字符串是有符号的就是说要得到结果-3)。 直接用HEX2DEC()或HEX2NUM()好像不行

xjzuo 发表于 2006-11-22 20:31

回复

问题没听清楚,麻烦再解释一下.
明明怎么算它都不等于-3.

zoushihe 发表于 2006-11-23 08:46

是-3的补码形式,如果把FFFFFFFD做为32位有符号数(最高位为符号位)即为-3

happy 发表于 2006-11-23 17:27

这个很麻烦,需要自己写程序实现

补码,最高位为符号位,但值位为原码取反加1,补码叫2的补码,-1的补码为11111111。补码没有正0与负0之分。在补码中,10000000作为正常值时为-128,不作为正常值时为陷阱表示。

Tla 发表于 2006-11-23 18:18

看这个链接:
http://simwe.com/forum/thread-752695-1-1.html
页: [1]
查看完整版本: 怎么把字符串'FFFFFFFD'转化为十进制数-3啊?