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大得多。