我们在程序中执行的数值操作受限于语言为给定数据类型(或可能是硬件支持)指定的字节数。假设我可以用整数来计算我的薪水(甚至“短”对于一年的收入绰绰有余!!!)),但不能与比尔盖茨的财富一样。所以,我们去做很久很久的事情。但是,我们是不是仍然受到给予我们的位数的控制。仿真软件中的数字操作
那么,如果我模拟软件中的数值操作,那么该怎么办?说一个抽象的类,可以对1000位数的数字进行数字运算... 当然它太慢了,但我并不太在意复杂性,但更多的只是可计算性......
也许我可以用它在几个月内计算PI到1000位精度或几年内的Mersenne Primes,并带回家$ 100K;)
所以现在我的问题, 1)是否已有任何这样的库来做到这一点那里的东西(在C/C++中)。 2)如果我执行一个,你有什么建议吗? (+, - ,*,/,%,< <,>>操作应该足够我猜)
问候,
微内核
PS:
1)我是C/C++程序员,如果你想知道。
2)这个限制开始纠缠我从我的学校时代。
其实,任意精度的数字是非常标准型在大多数语言整数。像C,C++,Java,C#,Objective-C这样的语言甚至不能正确地添加两个整数,这真是个例外。 – 2010-10-29 21:18:54