数据范围和字节数不一定是正相关(列如:float4字节比long8字节数值范围广)
long 8字节 取值范围 2^63-----2^63-1
float(单精度) 4字节
取值范围-3.4028234*10…^38-----(1.4E-45~~~3.4028235E38)
因为整数与小数的底层存储有点不同。
相同点:它们都是用二进制存储的
不同点:
小数先转成二进制,然后处理,然后存储。
浮点数的32位不是简单的直接表示大小,而是按照一定的标准分配的。
其中第1位,符号位
接下来的8位,指数域
剩下的23位,小数域取值范围为[1,2)或[0,1)。
也就是说,浮点数在内存中的二进制值不是直接转换为十进制数值的,而是按照上述公式计算而来,通过这个公式,虽然只用到了4个字节,但是浮点数却比长整型的最大值要大。
为什么四个字节的float表示的范围比八个字节的long要广
最新推荐文章于 2024-05-16 10:23:10 发布