可以用IEEE-754浮点双精度表示可被2整除的整数?

时间:2014-09-12 07:07:48

标签: floating-point ieee-754

可以用IEEE-754浮点以双精度表示多少个可被2整除的正整数?

1 个答案:

答案 0 :(得分:2)

-2 54 和2 54 之间的所有偶数整数都可表示为IEEE 754双精度数。所有大于2 54 的有限双精度数也恰好是应该计数的偶数整数。我们分别计算这两类数字,然后加上计数。

第一类代表所有数字 - (2 54 -2), - (2 54 -4),..., - 2,0,2,4 ,...,(2 54 -2)。

第二类代表数字,例如2 54 +4,2 54 +8,以及非常大的双精度数,例如2 1023 。这些数字是IEEE 754双精度数字,表示偶数整数,因此应将它们考虑在内。 此类别中的数字必须单独计算的原因是,在此范围内,并非所有偶数整数都可表示为双精度IEEE 754数字(例如,2 54 +2,2 < sup> 54 +6,并且2 1023 +1024是可表示的。)


第一类数字包含2 * 2 53 - 1项,从 - (2 54 -2)到2 54 - 2。

第二类代表2 *(1024 - 54)binades(因子2是因为正计数负二极管和正二极管),即2 *(1024 - 54)* 2 52 项目。

这使得总计大约8754997675608244224甚至是双精度的整数(在计算中给出或取一个一个错误)。