Пусть
Результатом их сложения или вычитания будет являться выражение:
Порядок вычислений при этом следующий (алгоритм компьютерного сложения (вычитания) двух вещественных чисел).
Порядки чисел а и b выравниваются по большему из них (в нашем случае это qa). Для этого мантисса числа b сдвигается на qa - qb разрядов вправо (часть значащих цифр при этом может оказаться утерянной), а его порядок становится равным qa.
Выполняется операция сложения (вычитания) над мантиссами с округлением по значению n + 1-ой значащей цифры результата.
Мантисса результата должна быть нормализована (получившийся после нормализации порядок может отличаться от qa как в меньшую, так и в большую сторону).
Рассмотрим теперь ошибки, которые могут возникнуть при операциях сложения и вычитания (каждая возможная ошибка соответствует одному шагу алгоритма компьютерного сложения или вычитания вещественных чисел).
Потеря значащих цифр мантиссы у меньшего из чисел при выравнивании порядков.
В худшем случае утерянными оказываются все значащие цифры и а + b = а, что является абсурдным с точки зрения математики, но возможным в компьютерной арифметике с ограниченным числом разрядов.
Если в вещественном типе хранится 40 значащих цифр, то
Потеря крайней справа значащей цифры результата при сложении или вычитании мантисс (при сложении и вычитании двух чисел количество значащих цифр может увеличиться лишь на одну). Это влияет на точность, но не на правильность результата.
Для 15-разрядных мантисс:
Выход за границу допустимого диапазона значения того или иного вещественного типа при нормализации результата. В данном случае получаемый порядок оказывается либо больше максимально возможного значения, либо меньше минимального. Данную ситуацию различные компиляторы и операционные системы обрабатывают по-разному, но чаще всего выполнение программы прерывается с сообщением об ошибке: "арифметическое переполнение".