具有巨大数字的基本数学运算

mam*_*don 4 c math bignum

大数字,我的意思是,如果你采用一个千兆字节(而不是4/8字节等),并尝试添加/减去/乘以/除以一些其他任意大(或小)的数字.

加法和减法相当容易(一次一个k/m /字节):

out_byteN = a_byteN + b_byteN + overflowBit 
Run Code Online (Sandbox Code Playgroud)

对于每个字节,因此我可以在读取磁盘中的数字时进行加/减,而不会冒RAM耗尽的风险.

对于乘法/除法,只需在循环中执行上述操作即可.

但是拿一个巨大数字的第n根呢?

Ric*_*h K 8

你在问"GNU多精度算术库"(http://gmplib.org/)吗?


duf*_*ymo 7

与任何其他数字相同:牛顿迭代.