数据在内存中的存储方式

2017-10-04  本文已影响0人  jingr1

32位系统中char,int型数据在内存中的存储方式

浮点数在内存中的存储方式

例如,将十进制178.125表示成机器内的32个字节的二进制形式.

  1. 将128.125表示成二进制数:(178.125)(十进制数)=(10110010.001)(二进制形式);
  2. 将二进制形式的浮点实数转化为规格化的形式:(小数点向左移动7个二进制位可以得到) 10110010.001=1.0110010001*2^7
  3. 符号位:该数为正数,故第31位为0,占一个二进制位.
    阶码:指数为7,故其阶码为127+7=134=(10000110)(二进制),占从第30到第23共8个二进制位.
    尾数: 为小数点后的部分, 即0110010001.因为尾数共23个二进制位,在后面补13个0,即01100100010000000000000
  4. 178.125在内存中的实际表示方式为:
    0 10000110 01100100010000000000000

将-0.15625表示成机器内的32个字节的形式.

  1. 将-0.15625表示成二进制形式: (-0.15625)(十进制数)=(-0.00101)(二进制形式);
  2. 将二进制形式的浮点数转化为规格化的形式:(小数点向右移动3个二进制位可以得到) -0.00101=-1.01*2^(-3)
  3. 符号位:该数为负数,故第31位为1,占一个二进制位;
    阶码:指数为-3,故其阶码为127+(-3)=124=01111100,占从第30到第23共8个二进制位;
    尾数: 小数点后的01,当然后面要补21个0;
  4. 0.15625在内存中的实际表示形式为:
    1 01111100 01000000000000000000000
上一篇 下一篇

猜你喜欢

热点阅读