Деление двоичных чисел с плавающей запятой

Деление чисел, представленных в двоичной форме с плавающей запятой, выполняется за четыре шага, при этом условие Деление двоичных чисел с плавающей запятой - student2.ru теряет смысл и его проверка не делается.

1. Определяется знак частного путем сложения по модулю два знаков делимого и делителя.

2. Определяется порядок частного путем вычитания порядка делителя из порядка делимого с учетом их знаков по правилам, аналогичным для вычитания чисел с фиксированной запятой.

3. Определяется мантисса частного путем деления модуля мантиссы делимого на модуль мантиссы делителя по правилам, изложенным выше, для деления чисел с фиксированной запятой.

4. Нормализуется результат деления мантисс делимого и делителя, если произошло переполнение разрядной сетки или денормализация.

5. При переполнении или денормализации мантиссы частного производится соответственно увеличение или уменьшение, вычисленного по п.2, порядка частного.

Пример.

Разделить в двоичной системе с плавающей запятой.

Делимое Деление двоичных чисел с плавающей запятой - student2.ru

Делитель Деление двоичных чисел с плавающей запятой - student2.ru .

(Под модуль мантиссы отведено четыре, а под модуль порядка три разряда). Требуется найти Деление двоичных чисел с плавающей запятой - student2.ru , т.е найти Деление двоичных чисел с плавающей запятой - student2.ru .

Первый шаг.Определение знака частного:

Деление двоичных чисел с плавающей запятой - student2.ru .

Второй шаг.Определение порядка частного путем вычитания порядка делителя из порядка делимого с учетом их знаков в дополнительном модифицированном коде:

Деление двоичных чисел с плавающей запятой - student2.ru

+
Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru

Третий шаг.Определение модуля мантиссы частного (операция выполняется в модифицированном дополнительном коде):

+
Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

+
Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

+
Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru .

Деление двоичных чисел с плавающей запятой - student2.ru

Произошло переполнение разрядной сетки и требуется нормализация вправо мантиссы частного, т.е. сдвиг мантиссы Деление двоичных чисел с плавающей запятой - student2.ru на один разряд вправо и увеличение порядка Деление двоичных чисел с плавающей запятой - student2.ru на единицу.

Четвертый шаг.Нормализация мантиссы частного путем сдвига ее на один разряд вправо:

Деление двоичных чисел с плавающей запятой - student2.ru .

Пятый шаг.Увеличение предварительно полученного порядка частного на единицу в модифицированном дополнительном коде:

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru

Операция деления двух двоичных чисел с плавающей запятой завершена.

Деление двоичных чисел с плавающей запятой - student2.ru

Пример.

Разделить в двоичной системе с плавающей запятой, отведя под мантиссу шесть, а под порядок три разряда.

Делимое Деление двоичных чисел с плавающей запятой - student2.ru

Делитель Деление двоичных чисел с плавающей запятой - student2.ru

Требуется найти Деление двоичных чисел с плавающей запятой - student2.ru , т.е. найти Деление двоичных чисел с плавающей запятой - student2.ru .

После нормализации операндов имеем:

Деление двоичных чисел с плавающей запятой - student2.ru

Первый шаг.Определение знака частного:

Деление двоичных чисел с плавающей запятой - student2.ru

Второй шаг.Определение порядка частного путем вычитания порядка делителя из порядка делимого с учетом их знаков в дополнительном модифицированном коде:

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru

Третий шаг.Определение модуля мантиссы частного (операция выполняется в модифицированном дополнительном коде). При этом, чтобы получить шесть верных разрядов мантиссы частного, увеличим длину разрядной сетки, отводимую для выполнения операции деления мантисс, до восьми разрядов:

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

+
11,11000000 < 0; (Это означает, что модуль мантиссы делимого

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru 00,01100000 меньше модуля мантиссы делителя)

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru

+
+
+
+
+
+
Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru

На этом процесс деления модулей мантисс заканчиваем, т.к. поставленное выше условие выполнено – получено шесть верных разрядов модуля мантиссы частного Деление двоичных чисел с плавающей запятой - student2.ru .

В связи с тем, что переполнение разрядной сетки и денормализация мантиссы частного отсутствуют, получаем окончательный результат деления в следующем виде:

Деление двоичных чисел с плавающей запятой - student2.ru

Деление двоичных чисел с плавающей запятой - student2.ru .

Наши рекомендации