Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Автоматы-Лекции.doc
Скачиваний:
154
Добавлен:
23.02.2016
Размер:
4.16 Mб
Скачать

Тема 4. Двійкова сч. Виконання операцій множення

 

4.1. Метод множення двійкових чисел

4.2. Множення чисел представлених у формі з фіксованою комою на двійковому суматорі прямого коду

4.3. Особливості множення чисел представлених у формі з плаваючою комою

4.4. Множення чисел, представлених у формі з фіксованою комою, на двійковому суматорі доповняльного коду

4.5. Множення чисел на двійковому суматорі оберненого коду

 

4.1. Метод множення двійкових чисел

Стосовно до двійковій системі числення найбільш відомі наступні основні способи виконання операції множення:

1)              множення починаючи з молодших розрядів множника:

Х

  1101 — множене,

1101 — множник,

1101

0000

1101 — частковий добуток,

1101

10101001 — добуток

2) множення починаючи зі старших розрядів множника:

Х

  1101 — множене,

1101 — множник,

1101

1101→ — частковий добуток,

0000

1101

10101001 — добуток

 

В обох випадках операція множення складається з ряду послідовних операцій додавання часткових добутків. Операціями додавання управляють розряди множника: якщо в якомусь розряді множника знаходиться одиниця, то до суми часткових добутків додається множене з відповідним зсувом: якщо в розряді множника - нуль, то множене не додається.

Таким чином, крім операції додавання чисел для отримання добутку необхідна операція зсуву чисел. При цьому з’являється можливість зрушувати множене або суму часткових добутків, що дає підставу для різних методів реалізації операції множення.

 

Метод 1. Нехай А – множене (А>0), В – множник (В>0), С – добуток. Тоді в випадку представлення чисел в формі с фіксованою крапкою отримуємо:

А=0, а1а2…an; B=0; b1b2…bn=b1∙2-1+b2∙2-2+…+bn∙2-n.

Звідси

C=AB=0, а1а2…an(b1∙2-1+b2∙2-2+…+bn∙2-n) = (2-1∙0, а1а2…an)∙b1 + + (2-2∙0, а1а2…an)∙b2+…+(2n-1∙0, а1а2…an)bn (4.1)

 

Множення на 2-n означає зсув на n розрядів вправо числа, що укладена в дужки, тобто в даному випадку зсувається вправо множине і множення починається зі старших розрядів.

Структурна схема розглянутого пристрою множення представлена на рис. 4.1, а.

 

 

 

Рис. 4.1. Структурні схеми пристроїв множення

 

Метод 2. Нехай А=0, а1а2…an - множене і B=0; b1b2…bn – множник.

Множник можна легко перетворити, використовуючи метод Горнера: В = (...((bn∙2-1+bn-1)2-1+…+b2)2-1+b1)2-1. Тоді

С = АВ = (…((bn∙0, а1а2…an)2-1+bn-1∙0, а1а2…an)2-1+…+

+ b1∙0, а1а2…an) 2-1 (4.2)

 

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

 

Метод 3. Нехай А=0, а1а2…an - множене і B=0, b1b2…bn – множник.

Множник, використовуючи метод Горнера. можна записати так:

B=2-n(b1∙2n-1+b2∙2n-2+…+bn-1∙21+bn∙20)= 2-n(…(b1∙21+b2)21+…+

+bn-12 1+bn).

У цьому випадку

 

С = АВ = 2-n(bn∙0, а1а2…an+(21∙0, а1а2…an)bn-1 +

+…+(2n-1∙0, а1а2…an)b1), (4.3)

що означає: множення починається з молодших розрядів, і множене зсувається вліво на один розряд в кожному такті. Схема множильного пристрою представлена на рис. 4.1, в.

Метод 4. Нехай А=0, а1а2…an - множене і B=0, b1b2…bn – множник.

Якщо множник В записати по методу Горнера:

С = АВ =2-n((…(2(b1 ∙0, а1а2…an)+b2∙0, а1а2…an)21+

+…+bn-1∙0, а1а2…an)21+bn∙0, а1а2…an), (4.4)

 

то множення починається зі старшого розряду і в кожному такті зсувається вліво сума часткових добутків. Схема множильного пристрою представлена на рис. 4.1, г.

Таким чином, для реалізації операції множення необхідно мати суматор, регістри для зберігання множеного і множника і схему аналізу розрядів множника. Суматор і регістри повинні мати ланцюги зсуву вмісту в ту чи іншу сторону відповідно до прийнятого методу множення.

Аналіз формул (4.1) - (4.4) показує, що з формальної точки зору процес множення двох чисел може бути представлений:

при послідовному виконанні - у вигляді багато разів повторюваного за кількістю розрядів циклу

Si=Si-1+Abi (4.5)

де Si-1, Si - суми часткових добутків на (i - 1)-му та i-м кроці відповідно;

при паралельному виконанні - сумою членів діагональної матриці, для якої задано по рядкам А ∙ 2i , а по стовпцях - bi, де i - поточний номер розряду.

Надалі основну увагу буде приділено послідовному принципу виконання операції множення.

При точному множенні двох чисел кількість цифр у добутку перевищує кількість цифр співмножників не більше ніж у два рази. При множенні декількох чисел кількість цифр добутку може виявитися ще більше. Кінцеве число розрядів у пристроях цифрового автомата змушує обмежуватися максимально подвоєною кількістю розрядів суматорів.

При обмеженні кількості розрядів суматора в добуток вноситься похибка. У разі великого обсягу обчислень похибки одного знака накладаються одна на одну, в результаті чого загальна похибка сильно зростає. Тому істотне значення має округлення результатів множення, що дає можливість зробити похибку добутку знакозмінною, а математичне сподівання похибки округлення за умови, що відкинуті молодші розряди можуть з однаковою ймовірністю мати будь-яке з можливих значень - рівним нулю. При цьому граничне за абсолютною величиною значення похибки буде найменшим з можливих при заданій кількості значущих цифр. тобто дорівнює половині значення молодшого розряду.

При виконанні операції множення чисел можливий вихід за межі розрядної сітки тільки з боку молодших розрядів в силу обмеження, яке було накладене на числа, представлених у формі з фіксованою комою. Точне множення виходить у всіх чотирьох методах множення, однак при цьому потрібна різна кількість устаткування.