我有这个32位二进制数(00111111010000000000000000000000),我想知道如何将其转换为浮点数。

在不使用程序或转换器的情况下,如何将32位二进制数手动转换为浮点数?

谢谢,

最佳答案

假设您正在寻找单个浮点,则格式如下:

第一个数字是符号,接下来的8是指数,最后一个23是有效数字。

为您的电话号码(00111111010000000000000000000000)

符号:0为+
指数:01111110为-1(126-127)
有效位数:10000000000000000000000是1.5(“不可见”的第一位为1,然后第二位(仅一组)为0.5,下一个为0.25,然后为0.125,依此类推)

然后按以下方式计算值:
符号* 2 ^ exp *有效位

1 * 2 ^ -1 * 1.5
1 * 0.5 * 1.5
0.75

您的浮点数等于0.75。

07-24 09:45
查看更多