【问题标题】:Decimal to floating point小数转浮点
【发布时间】:2010-09-30 06:40:51
【问题描述】:

如果我想转换一个数字 Ex. 32.24x10^5 到 IEEE 754 标准手动我该怎么做?

【问题讨论】:

  • 这是一个与编程相关的问答网站,与 HAND 无关。
  • 有一个不错的 java 小程序 here,它直观地展示了 IEEE 754 浮点数是如何工作的。

标签: floating-point decimal ieee-754


【解决方案1】:

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

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

所以现在,将这两个值编码为指数部分和尾数部分(请记住,尾数中的前导不包括在内,它假定始终为一个(取决于格式,因此熟悉步骤))。

【讨论】:

  • 谢谢!我现在终于明白了。负指数的过程是否相同?
  • 是的,但如果我没记错的话,负指数用二的恭维来表示。
  • 指数——正或负——以“有偏”的形式表示,而不是二进制补码。
【解决方案2】:

以下链接应该有助于弄清楚:

http://en.wikipedia.org/wiki/Floating-point_number

http://www.h-schmidt.net/FloatApplet/IEEE754.html

您也可以在 Google 上搜索 comp.sci 大学讲座,因为学生在学习计算等基础知识时经常需要做类似的事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 1970-01-01
    • 2022-11-17
    • 2011-04-15
    • 2019-08-16
    • 1970-01-01
    • 2016-09-06
    相关资源
    最近更新 更多