-2

我正在考虑使用大整数的一种方法,我认为是使用 Gmplib,我使用了一些小例子,但它可以使用像 2 ^ (2 ^ (2 ^ 1024)) 这样的数字吗?

我的问题是如何表示这个大数字,因为(不确定)计算器也可能会溢出。

4

1 回答 1

2

我正在考虑使用大整数我认为使用 Gmplib 的一种方法,我使用小示例,但它可以使用像 2 ^ (2 ^ (2 ^ 1024)) 这样的数字吗?

不,GMP 有两种操作模式:大整数和大浮点数。第一个只能对整数值可以在内存中完全表示的数字进行操作;第二个仅限于可以在大约 64 位内表示的指数。您描述的数字不符合这些限制中的任何一个。(仅指数太大而无法记忆!)

我的方法:我将尝试通过将它们存储为二进制数/位向量来减少噪音,因为它会让我摆脱 > 一个 2^ 步骤。

您在此处或下一段中要说的内容并不完全清楚,但是您所描述的内容听起来像是典型的多精度整数实现。这与 GMP 存储大整数的做法没有什么不同,并且不适用于此应用程序。

您所描述的规模数字并不容易使用。无论您是找到一个与他们合作的库还是自己编写一个库,都可能需要专门设计用于对具有这种特定结构的数字进行操作的目的。它们太大了,无法做任何其他事情。

于 2016-01-30T02:17:11.020 回答