Significand


The significand is part of a number in scientific notation or a floating-point number, consisting of its significant digits. Depending on the interpretation of the exponent, the significand may represent an integer or a fraction.

Example

The number 123.45 can be represented as a decimal floating-point number with the integer 12345 as the significand and a 10−2 power term, also called characteristics, where −2 is the exponent. Its value is given by the following arithmetic:
This same value can also be represented in normalized form with 1.2345 as the fractional coefficient, and +2 as the exponent :
Schmid, however, called this representation with a significand ranging between 1.0 and 10 a modified normalized form.
For base 2, this 1.xxxx form is also called a normalized significand.
Finally, the value can be represented in the format given by the Language Independent Arithmetic standard and several programming language standards, including Ada, C, Fortran and Modula-2, as
Schmid called this representation with a significand ranging between 0.1 and 1.0 the true normalized form.
This later 0.xxxx form is called a normed significand.

Significands and the hidden bit

For a normalized number, the most significant digit is always non-zero. When working in binary, this constraint uniquely determines this digit to always be 1; as such, it does not need to be explicitly stored, being called the hidden bit. The significand is characterized by its width in digits, and depending on the context, the hidden bit may or may not be counted towards the width of the significand. For example, the same IEEE 754 double-precision format is commonly described as having either a 53-bit significand, including the hidden bit, or a 52-bit significand, excluding the hidden bit. IEEE 754 defines the precision p to be the number of digits in the significand, including any implicit leading bit, thus in a way independent from the encoding, and the term to express what is encoded is trailing significand field.

Terminology

The term significand was introduced by George Forsythe and Cleve Moler in 1967 and is the word used in the IEEE standard.
However, in 1946 Arthur Burks used the terms mantissa and characteristic to describe the two parts of a floating-point number and that usage remains common among computer scientists today. Mantissa and characteristic have long described the two parts of the logarithm found on tables of common logarithms. While the two meanings of exponent are analogous, the two meanings of mantissa are not equivalent. For this reason, the use of mantissa for significand is discouraged by some including the creator of the standard, William Kahan and prominent computer programmer and author of The Art of Computer Programming, Donald E. Knuth
The confusion is because scientific notation and floating-point representation are log-linear, not logarithmic. To multiply two numbers, given their logarithms, one just adds the characteristic and the mantissa. By contrast, to multiply two floating-point numbers, one adds the exponent and multiplies the significand.