Деление
В
основном аналогично умножению:
X
= 2mx * sign X.x1x2...xn
Y
= 2my * sign Y.y1y2...yn
Z
= X/Y = 2mx–my * sign Z.z1z2...zn
Порядок
выполнения операции следующий:
Находится
по известным правилам знак частного.
Порядок
частного находится как разность порядков
делимого и делителя.
Цифры
частного находятся так:
вначале
находится целая часть мантиссы, то есть
Если
, если , то z0 = 0.
Дробная
часть мантиссы находится так же, как
при операциях над числами с фиксированной
запятой. Такой порядок действий вытекает
из того, что:
То
есть, возможно получение ненормализованной
мантиссы. Для нормализации мантиссу
необходимо сдвинуть вправо на один
разряд и, чтобы не уменьшать при этом
результат в два раза, нужно прибавить
к порядку одну единицу.
При
делении, так же, как и при умножении,
возможно получение кода машинного нуля
и кода бесконечности.
Сложение и вычитание
Обе
операции выполняются по сходным
алгоритмам.
Операция
выполняется следующим образом:
Находится
разность порядков:
Производится
выравнивание порядков, при этом если
разность порядков положительна, то в
качестве порядка результата берётся
mx, а мантисса My сдвигается вправо на
|mx– my| разрядов; еcли разрядность порядков
отрицательна, то денормализуется
мантисса Mx.
Производится
алгебраическое суммирование мантисс
слагаемых.
Выполняется
нормализация влево или вправо на
соответствующее число разрядов с
необходимым исправлением порядка.