2013-12-19 36 views
1

使用符号位,指数和形式为1.XXXXXXX的mantisaa来描述浮点数。由于1默认存在,因此将被忽略。那么1.0 * 2^0如何以浮点标准表示?四个字节填充零?那么零是如何表示的?以IEEE浮点数表示1.0

+1

http://en.wikipedia.org/wiki/IEEE_754-1985#Examples显示0和1的位模式 - 唯一的区别是指数。 1没有0指数,因为指数是有偏的。但是0是一个特殊情况,所以0确实具有0指数。 –

+0

这可能有所帮助:http://www.h-schmidt.net/FloatConverter/ –

回答

4

零或者更确切地说+0.0用四个字节零表示。这应该引发一个问题,因为零没有1数字要忽略。事实是,有一个特殊的指数,其中隐含的前导1未被假设。零用这个指数表示,正如所谓的低于正常的数字一样。这个特殊指数的表示是由设置为零的位组成的。

1.0表示的指数约为最大可表示指数的一半,因为IEEE 754的目标是允许表示非常小的数字和非常大的数字。换句话说,指数存储在偏差。在可能的范围(例如0..255)之外,指数值0用于次正规和零,指数值127用于1.0,128用于2.0,...,并且254用于最大有限可代表的数字。指数值255用于更多例外的浮点值(无穷和NaN)。

该网站充满说明和教程,所以你将不会有任何问题进一步阅读。您可以从Wikipedia开始。