首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用二进制表示浮点数?

如何用二进制表示浮点数?
EN

Stack Overflow用户
提问于 2011-09-14 06:50:23
回答 2查看 626关注 0票数 1

我已经为这三个实验室问题做了大约5个小时了。我被最后一个问题困住了。

考虑以下浮点数表示形式,它存储浮点数为16位。你有一个符号位,一个6位(超过-32)指数,和一个9位尾数.

  1. 解释9位尾数如何给你带来麻烦。

这是前面的问题。不确定这对分析是否有帮助。

  1. 它支持的指数范围是多少?

指数小于32的000000111111或0~ 63为负值,指数大于32为正。

我有一个很好的基础浮点和转换之间的小数和浮点。如有任何指导,将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-09-14 19:50:59

对我来说,尾数和指数的比率有点差。即使我们假设存在隐藏位,有效地将其转化为10位尾数(顶部位始终设置),您也可以表示+或- 2^31,但在2^31/2^10 = 2^21步(即步骤2097152)中。

我宁愿使用11位尾数和5位指数,使这2^15/2^11 = 2^4,即步骤16。

因此,对我来说,麻烦的是,与相对较大的指数相比,9+1位太不精确了。

票数 1
EN

Stack Overflow用户

发布于 2011-09-14 08:50:07

我的猜测是,九位尾数提供的精度太低,因此除琐碎运算外,任何运算都会使计算太不精确,无法使用。

我承认这个答案有点牵强,但除此之外,我看不出表象有什么问题。

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

https://stackoverflow.com/questions/7412338

复制
相关文章

相似问题

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