我在R里玩,并注意到它可以吐出的最大值是 - 2 ^ 1023 + 2 ^ 1022.9999999999999 = 1.797693e + 308
对于在32位计算机上运行的32位版本和在64位计算机上运行的64位版本,这都是相同的。这是最大数量(或接近这个数字)的原因是什么?为什么它独立于机器的体系结构?
答案 0 :(得分:6)
这是最大可能的浮点数 Double 数字(参见IEEE 754标准):
http://en.wikipedia.org/wiki/Double-precision_floating-point_format
浮点值 - 单个, Double - 在FPU上计算,因此不依赖于计算机,操作系统等是32位还是64位< / p>
咨询?.Machine
并查看.Machine$double.xmax
答案 1 :(得分:3)
这不是最大的可能值 - 只是最大可能的浮点数。查看软件包gmp
和Rmpfr
,了解实现任意大小和精度数字的方法。