1.7.6. Реалізація в процесорі операції множення в додатковому коді
Існують алгоритми множення в додатковому коді (ДК), які вимагають введення поправок і які не вимагають. При реалізації множення в ДК знакові розряди співмножників беруть участь в множенні поряд з числовими розрядами.
1. Методи, що вимагають введення поправок
1) X> 0, Y> 0 - поправок немає
2) X> 0, Y <0 [X] дк = X [Y] дк = 2 + Y XY <0
[X] дк * [Y] дк = 2 X + XY [XY] дк = 2 + XY
Корекція:-2Х.
Тобто при множенні позитивного множимо на негативний множник необхідно ввести поправку (-2Х). Для спрощення процесу представимо Y у вигляді:
Приклад
[X] дк = 0.1011 = 11/16
[Y] = -13/16 = -0.1101
[Y] дк = 1.0011
Множення проводиться по 3 варіанту.
3) X <0, Y> 0 [X] дк = 2 + X [Y] дк = Y [X] дк * [Y] дк = 2Y + XY
[XY] дк = 2 + XY
Корекція:-2Y.
Якщо виконувати множення по I варіанту і при цьому користуватися правилами зсуву від'ємних чисел в ДК вправо, то така поправка буде вводитися автоматично.
Правила зсуву вправо від'ємних чисел в ДК: передача знакової одиниці в старший числовий розряд; заповнення утворилися вакансії одиницею.
[Y] дк = Y -1 * 2 -1 + Y -2 * 2 -2 + ... + Y - n * 2 - n
[X] дк * [Y] дк = [X] дк * Y -1 * 2 -1 + [X] дк * Y -2 * 2 -2 + ... + [X] дк * Y - n * 2 - n
[XY] дк = [X * 2 -1] дк * Y -1 + [X * 2 -2] дк * Y -2 + ...
4) X <0, Y <0 Корекція:-2Х і -2 Y.
Недоліки: залежність величини корекції від поєднання знаків.
Метод множення знаків в ДК без введення корекції
Алгоритм Бутта. Його суть: перетворення множника в модифіковану двійкову СС з трьома символами: , 0, 1. Причому це перетворення робиться не до операції, а під час її в розумі.
|
Нехай Y = [Y] дк-2Y 0, Y 0 - знаковий розряд
Y> 0 Y 0 = 0 Y = [Y] дк
Y <0 Y 0 = 1 Y = [Y] дк -2
Уявімо Y: [Y] дк = Y -1 * 2 -1 + Y -2 * 2 -2 + ... + Y-n * 2-n + Y - (n +1) * 2-n
Y - (n +1) 0
Зробимо заміну: Y-i * 2-i = Y-i * 2 - (i +1) - Y-i * 2-i
Остаточно отримаємо: Y = 0 * 2 0 + -1 * 2 -1 + ... + - n * 2 - n, Y - (n +1) = 0. Це запис в двійковій модифікованої СС з трьома символами: , 0, 1.
- I = y - (i +1) + y - I
Ці символи виходять, якщо в процесі множення аналізуються поточний і сусідній з ним молодший розряд. Якщо інформація співпадає, то цифра перетвореного множника - 0, інакше - дивись таблицю.
«0» відповідає відсутності передачі множимо на суматор.
«1» - передача множимо зі своїм знаком, « »- Із зворотним знаком.
В даний блок входять 3 регістра, в Рг Z і Рг Y організований правий зсув на 1 розряд; комбінаційний суматор; СПК, робота якого управляється двома сигналами ПП (пряма передача) та ІП (інверсна передача). 1 розряд СПК має вигляд:
Сигнали ПП та ІП виробляються за допомогою двох КС, які аналізують 2 розряди множника: молодший розряд n і додатковий розряд (n +1). Перед множенням в (n +1) розряд записується 0.
- Комп’ютерна схемотехніка. Архітектура комп’ютерів 2 зміст
- 2.1. Класифікація, призначення та основні характеристики пам'яті
- 2.2. Оперативна пам’ять (оп)
- 2.2.2. Статична пам'ять на біполярних транзисторах
- 2.3. Постійна пам'ять (пп)
- 2.9. Зовнішня оптична пам'ять
- 1. Представлення та обробка інформації
- Класифікація засобів обчислювальної техніки
- 1.2. Класифікація комп’ютерів
- 1.3. Структурна схема компю’терів, що використовують спільну шину
- 1.4. Системи числення
- 1.4.1. Базові параметри та класифікація систем числення
- 1.4.2.Загальні принципи побудови систем з послідовним обчисленням символів
- 1.4.3. Загальні принципи побудови систем числення з паралельним обчисленням символів
- 1.5. Кодування знакозмінної інформації. Коротка характеристика груп кодів, родинних прямому, зворотному, додатковому. Особливості застосування в комп'ютерах
- 1.6. Формати даних і команд сучасних комп’ютерів
- 1.7. Процесори
- 1.7.1. Склад і призначення пристроїв
- 1.7.2. Блок додавання чисел у формі з фіксованою крапкою
- 1.7.3. Особливості виконання складання чисел у формі з плаваючою крапкою
- 1.7.4. Реалізація процесора двійкового множення. Загальні положення
- 1.7.5. Реалізація множення в прямому коді
- I варіант.
- II варіант.
- III варіант.
- IV варіант
- 1.7.6. Реалізація в процесорі операції множення в додатковому коді
- 1.7.7. Реалізація методів прискореного множення в процесорах
- 1.7.8. Схемні методи прискореного множення
- 1.7.9. Особливості виконання множення чисел з плаваючою крапкою
- 1.8. Реалізація двійкового ділення в процесорі
- 1.8.1. Реалізація ділення чисел з фіксованою крапкою в прямому коді
- 1.8.2. Особливості ділення чисел у формі з плаваючою крапкою
- 1.9. Добування квадратного кореня
- Частина 2. Пам'ять комп'ютерів
- 2.1. Класифікація, призначення та основні характеристики пам'яті
- 2.2 Оперативна пам’ять (оп)
- 2.2.1 Внутрішня організація оп
- 2.2.2.Статична пам'ять на біполярних транзисторах
- 2.2.3. Статична пам'ять на езл-інтегральних схемах (іс)
- 2.2.4. Статична пам'ять на уніполярних транзисторах (на мон іс)
- 2.2.5. Динамічна пам’ять (дп) на моп транзисторах
- 2.2.6. Побудова пам’яті необхідної розмірності
- 2.3. Постійна пам'ять (пп)
- 2.3.1. Типи пп
- 2.3.2. Масочні пп (мпп)
- 2.3.3. Однократнопрограмована пам'ять
- 2.3.4. Репрограмована пам'ять
- 2.3.5. Flash-пам'ять
- 2.4. Зп с послідовним доступом(зппд)
- 2.4.1. Зппд на регістрах зсуву
- 2.4.2. Елемент зп з послідовним доступом на мон-транзисторах
- 2.4.3. Буферний зп типу "черга" (бп)
- 2.4.4. Пам'ять типу "список"/"стек"
- 2.5. Асоціативна пам'ять
- 2.6. Зовнішня пам'ять (зп)
- 2.6.1. Типи зп
- 2.6.2. Зовнішня магнітна пам'ять (змп)
- 2.6.3. Способи цифрового магнітного запису
- 2.7. Зовнішня пам'ять з прямим доступом(зпПрД)
- 2.7.1. Накопичувачі на гнучких магнітних дисках(нгмд)
- 2.7.2. Накопичувачі на жорстких магнітних дисках(нжмд)
- 2.7.3. Raid – дискові масиви
- 2.8. Зовнішні зп з послідовним доступом. Накопичувачі на магнітних стрічках(нмс). Стримери
- 2.9. Зовнішня оптична пам'ять
- 2.9.1. Оптичні диски типу cd
- 2.9.2. Оптичні диски типу dvd
- 2.10. Контроль роботи пристроїв пам’яті
- 3.1. Пристрій управління
- 3.1.1 Склад пристрою управління
- 3.1.2. Пу з жорсткою логікою
- 3.1.3. Мікропрограмний пристрій управління (пристрій управління з гнучкою логікою)
- 3.1.4. Мікропрограмний пристрій управління зі змінною тривалістю реалізації мікрокоманд.
- 3.2. Системи переривань
- 3.2.1. Типи і основні характеристики системи переривань
- 3.3. Система управління вводом/виводом
- 3.4. Організація мультипрограмного режиму роботи в сучасних комп’ютерах
- 3.4.1. Форми обслуговування користувачів і види мультипрограмування (мпр)
- 3.4.2. Динамічний розподіл пам'яті
- 3.4.3. Система захисту пам’яті (сзп)
- 0 1 2 3 4 5 6 7
- 3.5. Системи автоматичного контролю
- 3.5.1. Види помилок і способи контролю
- 3.5.2. Контроль передачі кодів
- 3.5.3. Контроль роботи комбінаційних схем
- 3.5.4. Контроль виконання операцій в процесорах
- 3.5.5. Контроль роботи процесорів по модулю 3