In
computer science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includin ...
, arbitrary-precision arithmetic, also called bignum arithmetic, multiple-precision arithmetic, or sometimes infinite-precision arithmetic, indicates that
calculations are performed on numbers whose
digits of
precision are limited only by the available
memory of the host system. This contrasts with the faster
fixed-precision arithmetic found in most
arithmetic logic unit (ALU) hardware, which typically offers between 8 and 64
bit
The bit is the most basic unit of information in computing and digital communications. The name is a portmanteau of binary digit. The bit represents a logical state with one of two possible values. These values are most commonly represented a ...
s of precision.
Several modern
programming languages have built-in support for bignums, and others have libraries available for arbitrary-precision
integer
An integer is the number zero (), a positive natural number (, , , etc.) or a negative integer with a minus sign ( −1, −2, −3, etc.). The negative numbers are the additive inverses of the corresponding positive numbers. In the language ...
and
floating-point math. Rather than storing values as a fixed number of bits related to the size of the
processor register
A processor register is a quickly accessible location available to a computer's processor. Registers usually consist of a small amount of fast storage, although some registers have specific hardware functions, and may be read-only or write-only. ...
, these implementations typically use variable-length
arrays of digits.
Arbitrary precision is used in applications where the speed of