programming, mathematics A number representation consisting of a

mantissa, M, an

exponent, E, and a

radix (or "base"). The number represented is M*R^E where R is the radix.

In science and engineering, exponential notation or

scientific notation uses a radix of ten so, for example, the number 93,000,000 might be written 9.3 x 10^7 (where ^7 is superscript 7).

In computer hardware, floating point numbers are usually represented with a radix of two since the mantissa and exponent are stored in binary, though many different representations could be used. The

IEEE specify a

standard representation which is used by many hardware floating-point systems. Non-zero numbers are

normalised so that the binary point is immediately before the most significant bit of the mantissa. Since the number is non-zero, this bit must be a one so it need not be stored. A fixed "bias" is added to the exponent so that positive and negative exponents can be represented without a sign bit. Finally, extreme values of exponent (all zeros and all ones) are used to represent special numbers like zero and positive and negative

infinity.

In programming languages with explicit typing, floating-point types are introduced with the keyword "float" or sometimes "double" for a higher precision type.

See also

floating-point accelerator,

floating-point unit.

Opposite:

fixed-point.

(2008-06-13)