【问题标题】:9 digit floating point number conversion9位浮点数转换
【发布时间】:2016-01-12 00:09:04
【问题描述】:
  1. 格式 A 有 1 个符号位。 有 k = 5 个指数位。指数偏差为 15。 有 n = 3 个小数位。

这些是特殊的 ieee 参数

二进制数 1 00111 010

经过所有数学计算,我得到 -5/1024

但是,我的好友得到了 -704

谁是对的?

【问题讨论】:

    标签: binary ieee


    【解决方案1】:

    如下图所示,看来是对的,正确答案是-5/1024

    Input: 1 00111 010
    Mantissa: 1.010 base 2
    Exponent: 111 base 2 = 7 base 10; 7 − 15 = -8
    De-normalize: 1.010 base 2 × 2^-8 = .00000001010
    

    下表显示了如何将非规范化数字转换为以 10 为底的十进制数:

    Exponent |    2^-8    |    2^-9     |    2^-10     |     2^-11     |
    Decimal  | 0.00390625 | 0.001953125 | 0.0009765625 | 0.00048828125 |
    Bit      |     1      |     0       |      1       |      0        |
    Value    | 0.00390625 |     0       | 0.0009765625 |      0        |
    
    Total = 0.00390625 + 0.0009765625 = 0.0048828125
    

    这个值必须被取反,因为符号位被设置。所以最终结果是-0.0048828125。这等于您最初获得的 -5/1024

    这是一个link to a great site,它显示了如何逐步进行转换。

    【讨论】:

      猜你喜欢
      • 2016-01-11
      • 2013-09-12
      • 2012-05-25
      • 1970-01-01
      • 2010-12-12
      • 2011-10-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多