首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在浮点表示法中,哪个十进制值表示为0 100000010 010000。。。0

在浮点表示法中,哪个十进制值表示为0 100000010 010000。。。0
EN

Stack Overflow用户
提问于 2013-01-15 00:26:11
回答 2查看 94关注 0票数 0

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

EN

回答 2

Stack Overflow用户

发布于 2013-01-15 00:30:40

你需要知道浮点是用什么标准表示的。

IEEE 754 is just one。还有其他的,这取决于这段数据有多老,或者你是从哪里得到的。

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

票数 4
EN

Stack Overflow用户

发布于 2013-01-15 00:27:41

你怎么解决这个问题呢?

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

有关如何执行此操作的详细信息,请参阅What will be the value in float if I have a binary number as 1111111111111111 and the storage formats used by Intel processors is 32 bits?

当然,作为实验的替代方案,您可以阅读文档,如singledouble精度浮点数的WIkipedia文章,并由此计算出输入的结果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14322421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档