2010-09-30 124 views
3

如果我想转换一个数字例如。 32.24x10^5到IEEE 754标准BY HAND我该怎么做?十进制浮点数

+0

这是一个编程相关的问答网站,而不是* HAND *相关。 – 2010-09-30 06:43:35

+1

有一个很好的java applet [这里](http://www.h-schmidt.net/FloatApplet/IEEE754.html),它可视化地演示了IEEE 754浮点工作方式。 – Seth 2010-09-30 06:47:25

回答

5

首先,阅读并熟悉some information about the format。然后将整个数字转换为二进制。然后确定指数(当然两个的幂)以使尾数标准化。然后将尾数编码在合适的位中,并将指数编码在适当的位中。

32.24E5 = 3224000 
= 1100010011000111000000b 
= 1.100010011000111000000b E 21 (that's 2^21) 
= 1.100010011000111000000b E 10101b 

所以现在,编码这两个数值为指数部分和尾数部分(请记住,在尾数领先一个不包括在内,它认为是一个永远(取决于格式,因此熟悉步骤))。

+0

谢谢!我现在终于明白了。该过程对于负指数是否相同? – Icestorm 2010-09-30 07:29:00

+0

是的,但是如果我没有弄错,负指数用两个赞美来表示。 – JoshD 2010-09-30 07:31:15

+4

指数 - 正数或负数 - 以“偏倚”形式表示,而不是二进制补码。 – 2010-09-30 12:32:12