Interested Article - Исчезновение порядка

Исчезновение порядка , потеря значимости или антипереполнение ( англ. floating-point underflow ) — ситуация, когда результат операции с плавающей запятой становится настолько близким к нулю, что порядок числа выходит за пределы разрядной сетки.

Например, в арифметике одинарной точности (с минимальным нормализованным числом 1,2·10 −38 ) к исчезновению порядка приведёт операция 10 −20 ·10 −30 = 10 −50 .

В большинстве случаев система просто выдаёт результатом 0, но иногда желательно более чётко отличать ненулевые числа от нуля. Например, если в дальнейшем результат используется в качестве делителя, то это поможет избежать деления на ноль . Использование денормализованных чисел позволяет обнулять старшие биты мантиссы, имитируя этим уменьшение порядка сверх возможностей разрядной сетки, и полностью исключает антипереполнения типа . Правда, происходит это за счёт уменьшения количества значащих цифр, а значит точности числа. Впрочем, даже введение денормализованных чисел качественно не меняет ситуацию: после того, как все биты мантиссы будут обнулены, результатом всё же станет 0. Так, в приведённом примере результат нельзя представить даже денормализованным числом , поскольку минимальное положительное денормализованное число одинарной точности — примерно 1.4·10 −45 , и результатом будет 0.

См. также

Источник —

Same as Исчезновение порядка