6.5具有有限的二进制表示形式:110.1
具有至少4个有效位的任何浮点类型都可以完美地表示该数字。
110.100000000000000000000(浮点)
= 6.5
110.10000000000000000000000000000000000000000000000000000000000000(两倍)
= 6.5
另一方面,3.2具有无限的二进制表示形式:101.0011001100110011 …
浮点数和双精度数没有无限的精度,因此只能近似这个数字:(
101.001100110011001100110(浮点)
= 3.2000000476837158203125
101.00110011001100110011001100110011001100110011001101(double)
= 3.20000000000000017763568394002504646778106689453125
如您所见,这些数字并不相同!



