python – 64位整数与64位浮点数:哪一个有更多值?

哪个有更多值,64位整数或64位浮点数?

我的回答是浮动更有价值,因为它更准确.

但是不是整数总是大于浮点数吗?

最佳答案 64位整数中有更多唯一值(对于二进制补码机器,则为2 ^ 64).

但是,64位浮点值具有更大的值范围.

这可以简单地推理,因为64位整数对于每个唯一值具有唯一的位模式(它是“100%有效”),而64位浮点数具有专用符号位(允许-0,但是-0 == 0 is true)以及一些“特殊模式”(例如NaN,其具有multiple representations),从而减少了浮点数可以表示的唯一值的总数.

请参阅IEEE-754 article on Wikipedia并查看Representation of non-numbers上的章节

点赞