C语言课件:浮点数范围.docVIP

  • 2
  • 0
  • 约1.08千字
  • 约 4页
  • 2018-07-04 发布于河南
  • 举报
C语言课件:浮点数范围

1.三种存储格式   浮点数的三种类型:单精度、双精度和双精度扩展。   这三种类型的浮点数的存储都由三部分组成:符号位、指数位和小数位组成,不同的是三者指数位和小数位的位数不一样。   IEEE 单精度格式具有24 位有效数字精度,并总共占用32 位。IEEE 双精度格式具有53 位有效数字精度,并总共占用64 位。至于双精度扩展,IEEE规定它至少具有64 位有效数字精度,并总共占用至少79 位。 2.双精度格式   现在,我们仅仅对双精度浮点数,也就是double进行分析,其它的两种可以此类推,不必赘述。   IEEE 双精度格式由三部分组成:52位小数f ;11 位偏置指数e ;以及1 位符号s。   这些字段连续存储在两个32 位字中。如下图所示:   将这两个连续的32 位字按一个64 位字那样进行了编号,其中0:51 位存储52 位的小数f ; 52:62 位存储11 位偏置指数e ;而第63 位存储符号位s。   s为0表示整数,1则为负数。   e[52:62]总共11位表示偏置指数,也就是阶码部分。它是一个无符号数,取值范围是[0,211-1],也就是[0,2047]。当0e2047时,它表示的指数值为e-1023;当它为0时,表示的指数值为-1022;而当e=2047时,它表示无穷大或无意义的数(这个稍后再讨论)。   现在,就剩下最后的小数部分了,也就是

文档评论(0)

1亿VIP精品文档

相关文档