浮点数在内存中的存储格式.docVIP

  • 11
  • 0
  • 约 6页
  • 2016-10-09 发布于重庆
  • 举报
浮点数在内存中的存储格式

浮点数在内存中的存储格式 在我们班级群里讨论时,发现大家对浮点数的了解不够深,尤其是它的存储方式。有同学还在讨论小数点是否会占用字节,后面多几个0,浮点数的占用的字节数是否会变掉。 我想,你如果能够认真的看完以下文字,你的问题就会得到解决了~! 浮点型变量在计算机内存中占用4字节(Byte),即32-bit。遵循IEEE-754格式标准。 一个浮点数由2部分组成:底数m 和 指数e。 ±mantissa × 2exponent (注意,公式中的mantissa 和 exponent使用二进制表示) 底数部分 使用2进制数来表示此浮点数的实际值。 指数部分 占用8-bit的二进制数,可表示数值范围为0-255。 但是指数应可正可负,所以IEEE规定,此处算出的次方须减去127才是真正的指数。所以float的指数可从 -126到128. 底数部分实际是占用24-bit的一个值,由于其最高位始终为 1 ,所以最高位省去不存储,在存储中只有23-bit。 到目前为止, 底数部分 23位 加上指数部分 8位 使用了31位。那么前面说过,float是占用4个字节即32-bit,那么还有一位是干嘛用的呢? 还有一位,其实就是4字节中的最高位,用来指示浮点数的正负,当最高位是1时,为负数,最高位是0时,为正数。 浮点数据就是按下表的格

文档评论(0)

1亿VIP精品文档

相关文档