相关疑难解决方法(0)

哪个是IEEE 754浮点数无法准确表示的第一个整数?

为清楚起见,如果我使用的是实现IEE 754浮点数的语言,我声明:

float f0 = 0.f;
float f1 = 1.f;
Run Code Online (Sandbox Code Playgroud)

...然后将它们打印出来,我会得到0.0000和1.0000 - 完全正确.

但IEEE 754无法表示实线上的所有数字.接近于零,"差距"很小; 当你越走越远时,差距越来越大.

所以,我的问题是:对于一个IEEE 754浮点数,这是第一个(最接近零)整数,无法准确表示?我现在只关心32位浮点数,虽然如果有人给出它我会有兴趣听到64位的答案!

我认为这就像计算2 bits_of_mantissa并添加1 一样简单,其中bits_of_mantissa是标准公开的位数.我在我的机器(MSVC++,Win64)上为32位浮点数做了这个,但它看起来很好.

floating-point types ieee-754

152
推荐指数
2
解决办法
3万
查看次数

标签 统计

floating-point ×1

ieee-754 ×1

types ×1