我想知道如何以二进制形式表示下溢数据。在浮点数的情况下,我们有32位,所有这些都有自己的含义,我们存储尾数不再标准化的信息?
答案 0 :(得分:2)
来自Wikipedia entry on IEEE-754:
上述数字表示称为标准化,意味着隐式前导二进制数字为1.为了减少发生下溢时的精度损失,IEEE 754包括表示小于标准化表示中可能的分数的能力,通过使隐式前导数字为0.这样的数字称为非正规数。它们不包括与标准化数字一样多的有效数字,但是当算术运算的结果不完全为零但是太接近于零而无法用标准化数字表示时,它们会逐渐丧失精度。
非正规数用所有0位的偏差指数表示,它表示单精度(不是-127)的-126或双精度-1024(不是-1023)的指数。
因此有一个特殊的指数值(所有零位)表示尾数没有隐式前导1
,因此应该被解释为非规范化数字。