【问题标题】:converting decimal to IEEE-754 format将十进制转换为 IEEE-754 格式
【发布时间】:2017-04-15 17:48:11
【问题描述】:

我正在尝试将 30.125 转换为 10 位浮点数。 1 个符号位,5 个指数位,偏置为 15 和 4 个尾数位。我想出了以下正确的 IEEE-754 格式的解决方案。

S    E        Mantissa
0    10011    1110

然后部分问题问上面的浮点数代表什么十进制值,正确答案是30。请问他们是怎么得到30的?

【问题讨论】:

    标签: floating-point


    【解决方案1】:

    有一个隐含 1,所以如果指数为零(15 因为有偏差),则 尾数是 1.xxxx,所以这里是 1.111 - 记住这个点是一个二进制点。但是指数是19。去掉15的偏差,就是4。

    所以二进制数是 11110 - 将二进制尖右移 4 位。 2 + 4 + 8 + 16 = 30。

    【讨论】:

    • 感谢您的解释,如果我们想存储额外的 0.125,您能解释一下指数和尾数中需要多少位吗?
    • @blor 十进制 30.125 是二进制 11110.001,8 个有效位。您需要存储其中的 7 个,因此您需要一个 7 位有效位。指数不变。
    • @PatriciaShanahan 谢谢,但正确答案是 8 位而不是 7 位。
    猜你喜欢
    • 1970-01-01
    • 2013-10-04
    • 2016-04-02
    • 2017-10-08
    • 2019-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-25
    相关资源
    最近更新 更多