Арифметико-логические устройства ЭВМ, страница 8

Идея алгоритма без восстановления остатка:

если на очередном шаге результат вычитания меньше 0, то вместо восстановления остатка на этом шаге переходят к следующему, но на следующем шаге делитель не вычитают, а прибавляют; далее опять контроль знака результата.

На каждом шаге достаточно выполнить две операции: вычитание (или сложение) и сдвиг.

Теперь рассмотрим структурную схему при следующих условиях:

1)  при делении в основном алгоритме используются модули чисел;

2)  знак частного формируется отдельно по известному со школы принципу;

3)  в алгоритме предусматривается пробное деление;

4)  применяется алгоритм без восстановления остатка.

            А тогда удобнее будет, если участвующие в операции числа будут в дополнительном (в крайнем случае – в обратном) коде; частичные остатки сдвигаются влево; очередная цифра частного получается как инвертированное значение знакового разряда частичного остатка.

Рис. 2.2.6.1.

Рис. 2.2.6.2.

Обратите внимание, что результат деления в конце концов оказывается в SM (там он и округляется).

Деление оказывается наиболее длинной операцией

 –  это не максимум, а всегда.

Существуют способы ускорения деления. В частности, используются аппаратные способы, аналогичные соответствующим способам в умножении. Но есть важный момент, снижающий их роль: доля делений в алгоритмах не более 1-2%. Следовательно, большие аппаратные затраты не имеют смысла.

<99>

2.2.7. Организация АЛУ при реализации логических операций и операций специальной арифметики.

<100>

2.3. Организация АЛУ параллельного действия при работе над числами в нормальной форме.

Возможно, следует напомнить структуру записи числа в нормальной форме:

,

где – мантисса (остальное в формуле – характеристика); – порядок; d – основание.

Обычно d=2, но может быть и 8, и 16 (было в ЕС ЭВМ, ныне изредка встречается).

В любом случае величина d в разрядной сетке не указывается (а подразумевается!), а  и  представляются двоичным кодом.

Рис. 2.3.0.1.

; .

Число должно быть нормализовано, т.е. при d=2: ; а при d=8: .

<101>

2.3.1. Принцип построения и работы АЛУ при суммировании и вычитании чисел в нормальной форме.

Коротко об алгоритме в целом. В нем выделяются 4 этапа:

1)  Выравнивание порядков чисел (порядок меньшего числа увеличивается до порядка большего при одновременном сдвиге в разрядах меньшего вправо на число разрядов, равное разности порядков).

2)  Собственно сложение (вычитание) мантисс с фиксированной запятой.

3)  Проверка переполнения и присвоение порядка.

4)  Нормализация.

(Третий и четвёртый этапы можно переставить).

            Наиболее сложной (длиной, «медленной») процедурой является выравнивание порядков.

В результате сравнения порядков возможны 5 исходов:

1)  , т.е. выравнивать не нужно и можно выполнять другие этапы;

2)  ; тогда за результат принимается число а;