32位浮点数最多能表示多少位十进制小数啊?为什么编程时只是显示六个小数位啊?

00000000111111111111111111111111这个二进制数化为十进制数是多少啊?有多少位小数啊?... 0000 0000 1111 1111 1111 1111 1111 1111这个二进制数化为十进制数是多少啊?有多少位小数啊? 展开
 我来答
JINLegend
2013-08-23 · TA获得超过802个赞
知道小有建树答主
回答量:241
采纳率:100%
帮助的人:124万
展开全部

32位浮点数float类型是7为有效数字,所以通常是6位小数。

(从左到右开始数)

第一位是符号位,0表示正数。

第二到第九位是指数位,剩下的是尾数位。(因为有效数字的第一位永远是1,所以总是省略)

先分块:

0/0000 0001/111 1111 1111 1111 1111 1111

因为指数的范围为-127~128,所以指数位的数据要减去127得到真实指数。

1-127=126

那么用二进制表示就为

+1.11111111111111111111111*2^-126

=(10-0.000 0000 0000 0000 0000 0001)*2^-126

=2^-125-2^-149

=2.350989*10^(-38)

(科学计数法)

如果是普通计数法那就是0.000000了。

更详细的猛戳这里:http://www.cnblogs.com/jillzhang/archive/2007/06/24/793901.html

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式