Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы по дисциплине №1.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
4.19 Mб
Скачать

6. Умножение с пт. Способы ускорения умножения. Конвейерный умножитель. Умножение

Методы ускорения умножения основаны на одновременном умножении сразу на несколько разрядов.

  1. 00 – сдвиг на 2 бита

  2. 01 – сложение, сдвиг на 2 бита

  3. 10 – прибавление удвоенного множимого, сдвиг на 2 бита

  4. 11 – вычитание множимого, +1 к следующей паре разрядов, сдвиг на 2 бита

Прибавление утроенного множимого, сдвиг на 2 бита – дорогой метод.

Например:

3 = 4 – 1

Фактически такой алгоритм реализует преобразование множителя в с. с. с цифрами 0, 1, -1

1 1 1 0 0 1 1 0 1 1 1 1 1

10 0-1 0 1 0-1 1 0 0 0 0-1

Необходимо предусмотреть 1 дополнительный бит на случай переноса.

b1, b0 – младшие биты множителя

с – перенос в следующую пару в специальном тригере.

Таблица всех возможных комбинаций

Аналогичным образом строится умножение на три бита множителя, но эффект не превышает затраты.

Комбинационный умножитель

В комбинационном умножителе умножение производится за 1 такт. К. у. могут быть матричного типа и пирамидальный (многослойный)

Рассмотрим пирамидальный комбинационный умножитель

b7, b6, … b1, b0 – биты множителя, начиная со старшего.

Слой 0 состоит из линеек коньюкторов (вентелей), управляемых битами множителя. Получаем сразу все 8 частичных произведений, которые равны либо 0, либо 1.Затем эти частичные произведения суммируются на пирамиде сумматоров. Частичные произведения при суммировании должны быть сдвинуты относительно друг друга.

При умножении многоразрядных чисел могут быть использованы комбинационные 8-разрядные умножители. Сначала умножаем на 8 разрядов, сдвиг на 8 разрядов, потом снова умножаем, и т. д..

7. Деление с пт. Схема и алгоритм деления мантисс с восстановлением остатка.

Существуют 2 основных алгоритма деления:

- деление с восстановлением остатка

- деление без восстановления остатка.

Деление выполняется с помощью вычитания и сдвигов. На каждом шаге производится сравнение делителя с остатком.

Вычисление частного:

если один из остатков больше или равен делителю, то очередная цифра частного будет равна 1

если остаток меньше меньше делителя, то цифра частного равна 0.

Цифра частного вычисляется поразрядно, начиная со старшего разряда.

Если остаток ≥делителю, то из этого остатка – делитель, а полученное значение удваивается. Удвоение производится путём сдвига влево.

В алгоритме с восстановлением остатка восстанавливается прежний остаток, а потом идёт удвоение.

В алгоритме без восстановления удваивается отрицательный остаток.

Деление целых чисел.

Обычно делимое является двойным словом. Делитель и частное – слово.

Соотношение делимого и делителя должно быть таким, чтобы частное не выходило за пределы разрядной сетки.

n-1 0

А В

Р22

Zn-1 делимое делитель

Сл-В4

знак

S

Запись Уст.

1

Р23

-1

n-1 0

частное СчЦ≠0

Y,y – для управляющего автомата (для удобства упрощаем схему).

Рг3:=0

РчЦ:=n

А:=А-Р22

Е:=1

А:=А+Р22

Р21:=L1(P21)

А:=А-Р22

Р23[0]:=1

A:=A+P22

P21:=L1(p21)

P23;=L1(P23)

CчЦж=СчЦ-1