【发布时间】:2013-03-16 14:27:30
【问题描述】:
可以表示为双精度(分别是浮点数?)的(连续)整数的确切范围是多少我问的原因是因为我很好奇questions such as this one何时会发生精度损失。
那是
- 什么是最小正整数
m使得m+1不能精确地表示为双精度(分别是浮点数)? - 什么是最大的负整数
-n使得-n-1不能精确地表示为双精度(分别是浮点数)? (可能与上述相同)。
这意味着-n 和m 之间的每个整数都有一个精确的浮点表示。我基本上是在寻找浮点数和双精度数的范围 [-n, m]。
让我们将范围限制为standard IEEE 754 32 位和 64 位浮点表示。我知道浮点数有 24 位精度,双精度数有 53 位(两者都有隐藏的前导位),但由于浮点表示的复杂性,我正在为此寻找权威答案。请不要挥手!
(理想的答案是证明从0 到m 的所有整数都是可表达的,而m+1 不是。)
【问题讨论】:
标签: c# java floating-point integer double