为什么数据类型float比long范围大

2021/10/24 23:13:38

本文主要是介绍为什么数据类型float比long范围大,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.计算机存储2进制数据时是按照数据的补码来存储的,正数的补码是本身,负数的补码计算方式:取绝对值--------转为2进制--------按位取反------+1

java中float是4个字节,而long是8个字节,但是他们的存储方式不一样。long的64位中,1位是符号位(符号为0代表正数,1代表负数),所以最大范围为:2^63-1

float是32位,其中第一位是符号为,第2-9个bit表示指数,一共8为(可以表示0-255),这里的底数是2,为了同时表示正数和负数,这里要减去127的偏移量.这样的话范围就是(-127到128),另外全0和全1作为特殊处理,所以直接表示-126到127,显然比指数63大得多。



这篇关于为什么数据类型float比long范围大的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程