0

什么十进制值表示为 0 100000010 010000 。. . 0 ? 你怎么能解决这个问题?

4

2 回答 2

4

您需要知道浮点的表示标准。

IEEE 754 只是其中之一。还有其他的,这取决于这段数据的年龄,或者你从哪里得到它。

仅仅因为数字是 64 位并不意味着它具有唯一的十进制表示。它取决于指数位、尾数位、偏移量等的数量。例如,IBM Floating Point Architecture就不同了。

于 2013-01-14T16:30:40.117 回答
1

你怎么能解决这个问题?

将数字转换为十六进制,然后将其分配给内存位置并从该位置读取,将其解释为浮点数或双精度数。在C中,您可以使用 anunion以不同方式解释同一块内存。

另请参阅如果我的二进制数为 1111111111111111 并且英特尔处理器使用的存储格式是 32 位,浮点数的值是多少?有关如何执行此操作的详细信息。

作为实验的替代方案,您当然可以阅读 WIkipedia 文章之类的精度或精度浮点数文档,并从中计算出您输入的结果。

于 2013-01-14T16:27:41.027 回答