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