float的精度为什么是7位详解 您所在的位置:网站首页 c语言中有效数字是什么意思 float的精度为什么是7位详解

float的精度为什么是7位详解

2024-07-08 06:12| 来源: 网络整理| 查看: 265

关于float精度为什7位,相信还有很多人没有想明白,是智商原因或是理解力的不同还是有什么其他原因吗,我觉得都不是,我们只是陷进了自己的想法里出不来而已,我也是想了很久,这里我要用比较直白的话,根据自己的理解来描述一下float的精度为什么是7,如果有说错的地方,请大家直接指出。

首先看一下float由二进制转换为十进制 在这里插入图片描述 从这里可以看出符号位占一位,指数位占8位,数值位占23位。这是规定的所以不用再问为什么是这样了。

下面重点为什么float的精度是7呢?以下为个人理解,只是为了方便理解为什么精度是7。 因为float类型的数值由后面的23位来决定,所以float类型在二进制的时候的精度位23位,因为23位以内的数都可以通过这23位准确的表示出来,这一点理解起来应该没什么问题了吧。 而我们所说的精度7位是指的十进制的时候的精度。因为float类型的数值由二进制下的后23位决定的,而这后23位表示的十进制的数最大为2^23=8388608,也就是说在二进制下能表示的准确的23位的数转换 到十进制下最大的数是7位的,数值是多少不重要,因为这个数是在十进制下是7位,所以float在十进制下的精度位7位。再说白一点,二进制下能表示的最大的准确的数值转换为十进制是7位。

我觉得我解释的已经很通俗了,希望大家都能理解,如果有说错的地方请大家指出。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有