Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсова ПТЦА (МКІ) 2012.doc
Скачиваний:
21
Добавлен:
27.11.2019
Размер:
4.89 Mб
Скачать

2.2. Функціональна схема алп для операції множення

Функціональна схема АЛП для множення цілих двійкових чисел із зсу­вом вправо часткових добутків містить (рис. 4):

  • регістри А і В для приймання з вхідної шини ШІ відповідно множеного та множника;

  • паралельний комбінаційний суматор SM;

  • регістр С для приймання часткової суми із SM при одиничному значенні синхросигналу;

  • регістр D для приймання і тимчасового зберігання часткової суми з регістра С при спаданні синхросигналу;

  • лічильник циклів СТ;

  • тригер Т1 для керування ключами SW1, SW2;

  • тригер Т2 для записування знака множника.

Продовження додатку

Рис. 2. Функціональна схема АЛП для множення

2.3. Мікропрограма множення цілих чисел

Початок. Якщо К[3], то М1, інакше – чекати

М1 <приймання множеного та обнулення тригерів Т1, Т2>

<приймання множника та дублювання його знака в тригері Т2>

<обнулення регістрів>

<запис кількості циклів>

М2 Якщо [1], то М3

<додавання>

<пересилання часткової суми>

М3 <однорозрядний зсув вправо>

<декремент лічильника>

Якщо , то М2, інакше

<однорозрядний зсув вліво>

<запис знака результату в регістр RGC>

Кінець.

2.4. Перший алгоритм множення у прямому коді.

Використовує добуток Z=X*Y у вигляді

Z=X*Y=хn∙2-n∙Y+ хn-1∙2-n∙Y+…+ х2∙2-n∙Y+ х1∙2-n∙Y=

((…((0+ хn∙Y)∙2-1+ хn-1∙Y)∙2-1+…+x2∙Y)∙2-1+x1∙Y)∙2-1

Звідси слід, що добуток Z за допомогою рекурентної формули можна записати

Продовження додатку

де Z0 = 0; Zn = Z, Zi – сума часткових добутків.

Множення тут починається з молодших розрядів множника, на кожному кроці множення сума часткових добутків зсувається вправо, кількість кроків множення дорівнює n, останній крок закінчується зсувом. ГСА такого множення має вигляд зображений на рис.3.

Рис.3. Перший алгоритм множення у прямому коді

xn* – цифра в молодшому розряді регістру множника РХ на даному кроці множення (“поточна” цифра множника)

СТК – лічильник числа кроків множення.

Довжина регістрів операндів складає n – розрядів, регістрів результату – 2n розрядів.

Приведемо цифрову діаграму станів регістрів,табл.1., при множенні чисел Х = 11/16 та Y = 9/16, n = 4 відповідно схемі алгоритму.

Продовження додатку

Таблиця 1. Цифрова діаграма при множенні за І алгоритмом множення у ПК

PX xn*

PY

PZ

СТК

Пояснення

1011

0101

0010

0001

0000

1001

+

00000000

1001

000

001

010

011

100

END

Початковий стан

+Y

Результат сумування

Зсув

+Y

Результат сумування

Зсув

Зсув

+Y

Результат сумування

Зсув

10010000

01001000

1001

+

11011000

01101100

00110110

1001

+

+

11000110

01100011

Час множення по даному алгоритму визначається за формулою

Т=n(tз+ t+)

tз – t зсуву

t+ - t сумування

Побудова функціональної схеми та мікропрограма розробляються аналогічно до Додатку пункти 2.2. та 2.3..