Decimal floating point
![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
No issues specified. Please specify issues, or remove this template. |
Decimal floating point arithmetic refers to both a representation and operations on decimal floating point numbers. The key is preserving base 10 exponents wherever possible. The conversion to binary exponents can lead to repeat rounding errors and is therefore unsuitable for precision mathematics.
For more details on the rationale behind DFP, see Decimal Floating-Point: Algorithm for Computers in the Proceedings of the 16th IEEE Symposium on Computer Arithmetic (Cowlishaw, M. F., 2003).
Implementations
IBM [POWER6], shipped in June 2007 includes DFP in hardware, as does the IBM System z9.
The IEEE Draft 754r defines this in more detail.
Microsoft C#, or .NET, uses System.Decimal.
Open Source radix 10000 Java class library on sourceforge.
In Linux, this is found in libdecnumber, gcc/dfp.c and other search terms.