Subnormal numbers and underflow
The decimal floating-point data type has a set of non-zero numbers that fall outside the range of normal decimal floating-point values. These numbers are called subnormal.
Non-zero numbers whose adjusted exponents are less than Emin4 are called subnormal numbers. These subnormal numbers are accepted as operands for all operations and can result from any operation. If a result is subnormal before any rounding occurs, the subnormal condition is returned.
For a subnormal result, the minimum values of the exponent becomes Emin - (precision-1), called Etiny, where precision is the working precision. If necessary, the result will be rounded to ensure that the exponent is no smaller than Etiny. If the result becomes inexact during rounding, an underflow condition is returned. A subnormal result does not always return the underflow condition but will always return the subnormal condition.
When a number underflows to zero during a calculation, its exponent will be Etiny. The maximum value of the exponent is unaffected.
The maximum value of the exponent for subnormal numbers is the same as the minimum value of the exponent which can arise during operations that do not result in subnormal numbers. This occurs where the length of the coefficient in decimal digits is equal to the precision.