language-icon Old Web
English
Sign In

decimal128 floating-point format

In computing, decimal128 is a decimal floating-point computer numbering format that occupies 16 bytes (128 bits) in computer memory.It is intended for applications where it is necessary to emulate decimal rounding exactly, such as financial and tax computations. Decimal128 supports 34 decimal digits of significand and an exponent range of −6143 to +6144, i.e. ±0.000000000000000000000000000000000×10^−6143 to ±9.999999999999999999999999999999999×10^6144. (Equivalently, ±0000000000000000000000000000000000×10^−6176 to ±9999999999999999999999999999999999×10^6111.) Therefore, decimal128 has the greatest range of values compared with other IEEE basic floating point formats. Because the significand is not normalized, most values with less than 34 significant digits have multiple possible representations; 1×102=0.1×103=0.01×104, etc. Zero has 12288 possible representations (24576 if you include both signed zeros). Decimal128 floating point is a relatively new decimal floating-point format, formally introduced in the 2008 version of IEEE 754 as well as with ISO/IEC/IEEE 60559:2011. IEEE 754 allows two alternative representation methods for decimal128 values.The standard does not specify how to signify which representation is used,for instance in a situation where decimal128 values are communicated between systems. In one representation method, based on binary integer decimal (BID),the significand is represented as binary coded positive integer. The other, alternative, representation method is based ondensely packed decimal (DPD) for most of thesignificand (except the most significant digit). Both alternatives provide exactly the same range of representable numbers: 34 digits of significand and 3×212 = 12288 possible exponent values. In both cases, the most significant 4 bits of the significand (which actually only have 10 possible values) are combined with the most significant 2 bits of the exponent (3 possible values) to use 30 of the 32 possible values of 5 bits in the combination field. The remaining combinations encode infinities and NaNs.

[ "Double-precision floating-point format", "Binary Integer Decimal", "Adder", "Decimal computer", "Bi-quinary coded decimal", "Midy's theorem", "Decimal data type", "Densely packed decimal" ]
Parent Topic
Child Topic
    No Parent Topic