浮点数是在浮点格式中可表示的有限或无限的数,即不是 NaN 的浮点表示。
在 IEEE 754-2008 标准中,所有浮点数(包括零和无穷大)都是有符号的。
IEEE 754-2008 允许五种“基本格式”用于浮点数,包括三种二进制格式(32 位、64 位和 128 位)和两种十进制格式(64 位和 128 位);它还指定了几种“推荐格式”,用于扩展这些基本格式以实现更高的精度。所有基本数值格式的特征在于指定一个基数 ,一个精度
(即尾数中的位数),以及一个指数范围
,该范围由给定格式的精度决定。一般来说,非零浮点数的形式为
其中 表示数字的符号,
是其指数,
是其尾数。请注意,(1)中的描述框架使得尾数
以科学计数法形式查看(小数点或基点紧跟在第一位数字之后),尽管(1)可以重新表示以将
视为整数(由此,
和指数
在(1)中都将相应地更改格式)。
32 位二进制 | 64 位二进制 | 128 位二进制 | 64 位十进制 | 128 位十进制 | |
24 | 53 | 113 | 16 | 34 | |
emax | +127 | +1023 | +16383 | +384 | +6144 |
上表总结了五种基本数字格式的特征。请注意,根据定义,。
32 位二进制 | 64 位二进制 | 128 位二进制 | 64 位十进制 | 128 位十进制 | |
emax |
如前所述,IEEE 754 还提供了一个推荐格式框架,通过该框架可以扩展五种基本格式。上表总结了这些扩展格式浮点数的参数特征。请注意,所有这些格式(基本格式和推荐格式)都允许 和
,
,以及两个 NaN。
在文献中,规格化浮点数和次规格化浮点数之间存在区别。 特别是,最小的正规格化浮点数是 ,最大的是
;另一方面,量级小于
的非零浮点数可能存在,称为次规格化数。次规格化数的特征在于它们始终少于
个有效数字;此外,每个有限浮点数都是最小次规格化量级的整数倍
(IEEE 计算机协会 2008)。