Метод деления бинарных чисел без восстановления промежуточных остатков выполняется в последовательности:
-определить знак частного по формуле SgC= SgAÅ SgB;;
-представить числа (операнды) в дополнительном коде в машинном изображении, делимое (всегда), независимо от его знака, берется в прямом коде с положительным знаком, а делитель (всегда), независимо от его знака, берется в дополнительном коде с отрицательным знаком;
-присвоить сумматору значение См:=Амдоп , РгВ := Bмдoп; РгС:=0;
-устраняем дробную часть в делителе, перенося запятую вправо на n разрядов (по аналогии с десятичной системой счисления) и, чтобы дробь не изменилась, в делимом также переносим вправо запятую на n разрядов;
-начиная со старших разрядов, к делимому прибавляют делитель в дополнительном коде, что равносильно вычитанию из делимого делителя и анализируют знак промежуточного остатка:
1) если знак промежуточного остатка 00 (положительный), то в регистр частного РгС записывается 1, начиная со старшего разряда. Остаток сдвигается на один разряд влево (знаковую точку перенести вправо на один разряд), сносится последующий разряд делимого не участвующий до этого в делении. После этого, промежуточный остаток подготовлен к последующему прибавлению делимого в дополнительном коде;
2) если знак промежуточного остатка 11 (отрицательный), то в регистр частного Рг.С записывается 0, начиная со старшего разряда. Остаток сдвигается на один разряд влево (знаковую точку перенести вправо на один разряд), сносится последующий разряд делимого не участвующий до этого в делении. После этого, промежуточный остаток подготовлен к последующему прибавлению к нему делимого в прямом коде со знаком 00;
-действия предыдущего пункта повторяются до получения машинного нуля или заданной точности вычисления (количество разрядов дроби после запятой целой части числа). Запятая дроби устанавливается в частном после сноса последнего разряда целой части делимого.
- знак результату присваивается в соответствии с пунктом 1. Результат деления представлен в регистре частного в прямом коде.
ПРИМЕР. Разделить на сумматоре дополнительного кода числа:
А= 16,25; В= –3,25.
РЕШЕНИЕ:-определяем знак частного 0 Å 1 =1. В старшие разряды регистра частного заносим значение отрицательного знака - 11;
-устанавливаем регистры РгА, РгВ и См в нулевое (исходное) состояние, очистив их от предыдущей информации;
-преобразуем десятичные числа в бинарные, прямые и дополнительные коды.
Апр.=00.10000,01; Впр.=11.11,01; Впр.вос.=00.11,01; Вмдоп.= 11.00,11
Для вычитания используем Вмдоп.= 11.00,11.
Для восстановления отрицательного остатка берем Впр.вос.=00.11,01. .
Решение приведено в таблице 14.1.