Misplaced Pages

Bignum: Difference between revisions

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
Browse history interactively← Previous editNext edit →Content deleted Content addedVisualWikitext
Revision as of 09:03, 1 August 2004 editMfc (talk | contribs)Extended confirmed users1,888 edits tweak← Previous edit Revision as of 09:17, 1 August 2004 edit undoMfc (talk | contribs)Extended confirmed users1,888 edits expandNext edit →
Line 1: Line 1:
A '''bignum''' system in a ] or program allows internal representation of arbitrarily large ]s or arbitrarily precise ]s and implements arithmetic operations on such numbers. Numbers are typically stored as (ratios of) digit lists which can grow using dynamically allocated memory. A '''bignum''' package in a ] or program allows internal representation of arbitrarily large ]s, ]s, ], or ] numbers, and provides a set of arithmetic operations on such numbers. Numbers are typically stored as either one or two lists of digits (or higher-ordered values), encoded in ]. Unlike hardware ]s, bignums can vary in size, using dynamically allocated memory.


Bignums were first implemented in ]. The ]/] ] offered bignum facilities as a collection of ] ]s. Today bignum libraries are available for practically every modern programming language. The ] is a ] ] library that offers bignum features. All ]s implement bignum facilities. Bignums were first implemented in ]. Later, the ]/] ] offered bignum facilities as a collection of ] ]s. Today, bignum libraries are available for most modern programming languages. The ] is a ] ] library that offers bignum features. All ]s implement bignum facilities.


Bignum systems often employ fast ]s and many provide ] primitives such as ]. Bignum systems often employ fast ] and ] ]s, and many provide ] primitives such as ].


See also: ]s. See also: ]s.

Revision as of 09:17, 1 August 2004

A bignum package in a computer or program allows internal representation of arbitrarily large integers, rational numbers, decimal numbers, or floating-point numbers, and provides a set of arithmetic operations on such numbers. Numbers are typically stored as either one or two lists of digits (or higher-ordered values), encoded in binary. Unlike hardware data typess, bignums can vary in size, using dynamically allocated memory.

Bignums were first implemented in MacLisp. Later, the VAX/VMS operating system offered bignum facilities as a collection of string functions. Today, bignum libraries are available for most modern programming languages. The GNU Multi-Precision Library is a free C library that offers bignum features. All computer algebra systems implement bignum facilities.

Bignum systems often employ fast multiplication and division algorithms, and many provide number theoretic primitives such as modular exponentiation.

See also: large numbers.