负浮点数表示为负整数?

时间:2012-06-20 04:37:46

标签: floating-point twos-complement

我知道今天的计算机如何存储负整数,大多数计算机使用2'补码。我只是想知道2'补码方法适用于各种数字,如浮点数?

2 个答案:

答案 0 :(得分:4)

不,浮点不使用2补码表示,但由于所有二进制实现都有符号位,因此保证所有值(符号无意义的NaN除外)浮点数的整数表示可以测试 与< 0。 这是因为如果设置了第一位,则2补码中的整数也是负的。 但有效数和指数都不使用2补语表示。

答案 1 :(得分:-1)

有不同种类的浮点数表示,但我记得大多数类似于符号位(1 =正),然后是2s补码指数值,然后是2s补码尾数值和最高位当指数为零时,在1s位置。

请注意,在这种安排中,您可以使用整数比较来获得更大/更小。

修改

以上显然是基于错误的记忆,但在http://en.wikipedia.org/wiki/Binary32有一个很好的解释。

基本上,......

  • 第一位是数字的符号,也是尾数的符号
  • 接下来的几位是指数,可以是无符号的,也可以使用2-s补码进行签名。
  • 其余位是尾数,减去隐含的前导“1”。
  • 零是一个特例......