Алгоритм сложения для чисел с плавающей точкой
Пример. x = -9, y =-0,15. Найти x+y
1.Перевести числа в двоичную систему счисления и нормализовать.
2.Производится сравнение порядков. Порядок меньшего по модулю числа принимается равным порядку большего, а его мантисса сдвигается вправо на число разрядов, равное разности порядков.
3.В процессе сдвига мантиссы меньшего слагаемого происходит потеря младших разрядов, что вносит погрешность в результат выполнения операций. При этом может оказаться, что вся мантисса сдвигается за пределы разрядной сетки. Тогда в качестве результата суммирования принимается большее по модулю слагаемое.
4.После выравнивания порядков происходит сложение мантисс как для чисел в формате с фиксированной точкой.
прямой код обратный код дополнительный код
mx
my
mx+y
Знаковый разряд операции «1», следовательно, результат есть число отрицательное и представлено в дополнительном коде. Преобразуем его в прямой код:
mx+y
а) инверсия
b) добавить «1»
5. При необходимости результирующая мантисса нормализуется.
Запишем окончательный результат вычислений