Perl에서 임의의 길이의 정수를 사용하는 표준 방법이 있습니까? 테스트를 위해 x64 어셈블리를 생성하는 코드를 작성 중이며 한 번에 32 비트를 조작하는 것에 지쳐 있습니다.Perl에서 임의의 길이 정수를 사용하려면 어떻게해야합니까?
필자는 Perl 5.10.0을 사용하고 있습니다.
Perl에서 임의의 길이의 정수를 사용하는 표준 방법이 있습니까? 테스트를 위해 x64 어셈블리를 생성하는 코드를 작성 중이며 한 번에 32 비트를 조작하는 것에 지쳐 있습니다.Perl에서 임의의 길이 정수를 사용하려면 어떻게해야합니까?
필자는 Perl 5.10.0을 사용하고 있습니다.
만 큰 정수를 사용하려는 경우, 당신은 bigint
을 사용할 수있는 당신이 할 수있는 파일로 범위 :
use bigint;
하거나 제한된 범위 :
{
use bigint;
...;
}
큰 정수뿐만 아니라 큰 부동 소수점 숫자가 필요한 경우 동일한 방법으로 bignum
플러그 마크를 사용할 수 있습니다. 어느 쪽이든, 이것들은 프로그램을 약간 (또는 많은 수학을하는 경우 상당히) 느리게 만들 것이므로, 실제로 필요한 부분에만 사용해야합니다. 그러나 빠를수록 정확하지 않습니다. :)
big*
수학을 사용하는 숫자를 매우 정확하게 제어하려는 경우 big*
의미를 모든 것에 적용하는 대신 직접 구현하는 기본 클래스를 사용하고 직접 개체를 만들 수 있습니다. 모듈이 Math::Big*
인 것을보십시오.
저는 컴퓨터가 느린 기능으로 계승을 사용하기에는 너무 빠르기 때문에 나중에 Benchmarking 장의 Mastering Perl에서 이에 대해 더 이야기합니다. 우리는 또한 다가올 Effective Perl Programming, 2nd Edition에 큰 숫자를 추가했습니다.
그리고 아마도'use bigint;''* Math :: BigInt-> new'가없는 BigInt를 * 모든 * 숫자 리터럴로 만듭니다. 물론주의해서 사용하십시오. – hobbs
또는 BigFloat로 bigint를 확장하는'use bignum; – Anonymous