42 可以精确表示为浮点数吗?

Can 42 be precisely represented as a floating-point?

我了解到 0.1 不能精确表示为浮点数。教科书的论点是 0.1 不能写成一种基于二进制的科学计数法,尽管我一直不确定人们如何 证明 这个论点。与此相关,我现在的问题是

Can 42 be precisely represented as a floating-point ?

假设我们正在讨论 IEEE-754 binary64 格式。

好吧,一个小到足以适合浮点数尾数的整数值(42 在你的情况下)可以 精确表示

 42 (decimal) == 101010 (binary)

相反,1/10无法精确表示:

 0.1 (decimal) == 0.0001100110011001100... (binary)

因为 0.1 十进制是二进制 周期分数