【发布时间】:2014-05-24 01:54:11
【问题描述】:
像 GMP 这样的任意精度库如何在内存中存储非常大的浮点数?
我可以想象,例如,如果您想计算 Pi 或欧拉常数,例如 2,000,000 位,您将为小数点右侧的数字分配大量字节数组。每个字节将存储 2 个小数位值,并且该数组将是一个数据结构的成员,其中包含用于存储该值的位数和字节数。
它是这样工作的吗?
【问题讨论】:
-
你已经很接近了。高效的实现使用更大的基础。 GMP 在 32 位或 64 位整数数组中使用基址
2^32或2^64。
标签: c gmp bigint largenumber