Math::BigInt::Calc - 纯 Perl 模块,用于支持 Math::BigInt
# to use it with Math::BigInt
use Math::BigInt lib => 'Calc';
# to use it with Math::BigFloat
use Math::BigFloat lib => 'Calc';
# to use it with Math::BigRat
use Math::BigRat lib => 'Calc';
# explicitly set base length and whether to "use integer"
use Math::BigInt::Calc base_len => 4, use_int => 1;
use Math::BigInt lib => 'Calc';
Math::BigInt::Calc 继承自 Math::BigInt::Lib。
在这个库中,数字在内部以 B = 10**N 为基数表示,其中 N 是不会导致中间计算溢出的最大可能整数。基数 B 的元素存储在一个数组中,最低有效位元素存储在数组元素 0 中。除了数字为零时只有一个零元素外,没有前导零元素。例如,如果 B = 10000,则数字 1234567890 在内部表示为 [7890, 3456, 12]。
模块加载时,会计算最大指数,即 10 的幂,可以在计算中使用和不使用“使用整数”。默认情况下使用此最大指数。如果“base_len”值和“use_int”值的组合超过最大值,则会抛出错误。
可以使用“base_len”选项显式指定基数长度。该值必须为正整数。
use Math::BigInt::Calc base_len => 4; # use 10000 as internal base
此选项用于指定在内部计算中是否应该使用“使用整数”。该值被解释为布尔值,因此使用 0 或 "" 表示 false,其他任何值表示 true。如果未与“use_int”一起指定“base_len”,则使用当前的基数长度值。
use Math::BigInt::Calc use_int => 1; # use "use integer" internally
此概述仅包含特定于 Math::BigInt::Calc
的方法。有关其他方法,请参阅 Math::BigInt::Lib。
指定所需的基数长度以及是否在计算中启用“使用整数”。
Math::BigInt::Calc -> _base_len($base_len, $use_int);
请注意,最好在模块加载时将基数长度和是否使用整数作为选项指定,例如:
use Math::BigInt::Calc base_len => 6, use_int => 1;
Math::BigInt::Lib,了解 API 的描述。
备用库 Math::BigInt::FastCalc、Math::BigInt::GMP、Math::BigInt::Pari、Math::BigInt::GMPz 和 Math::BigInt::BitVect。
使用这些库的一些模块 Math::BigInt、Math::BigFloat 和 Math::BigRat。