float内存实现

以8.25举例

1.换算成二进制

  8 = 1000;

  0.25= .01     0.25*2 = 0.5 个位取0,0.5*2 = 1个位取1 ;

 8.25 = 1000.01 

2.换算成科学计数法

8.25 = 1000.01= 1.00001 * 2^3

3.float 内存占用4个字节,32位 = 1符号位+8指数位+23底数位

   3.1 符号位0正1负;

   3.2 规定指数位-127=真正的指数,所以,指数位-127=3;指数位=130=10 000 010 ;(因为指数位站8位,如果不减去127,范围是0到255,因为有正负之分,所以减去127,范围变为-127~128)

   3.3 底数位 00001 000 000 000 000 000 000 

完整: 0   10 000 010   00001 000 000 000 000 000 000

 

  

你可能感兴趣的:(php高阶课程)