- •Теми для самостійного опрацювання з предмету “Мікросхемотехніка” (Частина 1) Розділ 1. Основи двійкової арифметики
- •Тема 1.1. Системи ліку, їх використання в еом
- •Домашнє завдання
- •Домашнє завдання
- •Тема 1.2 Множення та ділення в еом
- •Тема 1.3 Виконання арифметичних операцій над числами з плаваючою комою (пк)
- •Тема 1.4. Виконання арифметичних операцій над двійково-десятковими (2/10) числами
- •Розділ 2. Основи алгебри логіки (ало)
- •Тема 2.1 Основні функції та теореми алгебри логіки.
- •Домашнє завдання
- •Тема 2.2. Мінімізація логічних функцій
- •Розділ 3. Схемотехніка комбінаційних схем
- •Тема 3.1. Дешифратори та шифратори. Селектори та мультиплексори. Лекція №11с. Дешифратори на сіс
- •Лекція №12с. Призначення мультиплексорів та демультиплексорів Побудова універсальних логічних модулів (улм) за допомогою ms
Тема 1.4. Виконання арифметичних операцій над двійково-десятковими (2/10) числами
Лекція №7с. Операції над 2/10 числами з корекцією результату
Додавання-віднімання десяткових двійково-кодованих операндів може бути реалізоване на основі тих же принципів, що і двійкові операнди з обліком лише особливостей підсумовування десяткових цифр у двійковому їхньому представленні. Ці особливості обумовлені тим, що, по-перше, правила формування десяткового переносу відрізняються від правил формування двійкового переносу і, по-друге, сума двійкових кодів десяткових цифр, отримана за правилами двійкової арифметики, не завжди дорівнює їхній сумі, отриманої за десятковими правилами. Нехай, наприклад, у ДДК "8421" задані десяткові цифри Х = 1001 і Y = 1000 Тоді сума цих десяткових цифр за двійковими правилами дорівнює 10001, а по десятковим - 0001 0 111. У той же час, якщо Х = 0011 і Y = 0100, то сума цих цифр представляється однаково як у двійковому, так і у десятковому правилах - 0111.
З цих причин при використанні ДДК, що володіють властивістю адитивності, підсумовування десяткових цифр у двійковому представленні проводять у два етапи. На першому етапі підсумовують двійкові представлення десяткових цифр за правилами двійкової арифметики. На другому етапі проводять корекцію попереднього результату шляхом додатка або вирахування деякого виправлення для утворення правильного представлення десяткової цифри і десяткового переносу в старший десятковий розряд. Величина коригувального виправлення залежить від величини некоректованого результату.
Розглянемо як можна визначити коригувальне виправлення і правильно сформувати перенос у старший десятковий розряд для ДДК "8421". Для цього складемо таблицю двійкових сум, представлень після першого етапу додавання, правильних представлень у ДДК "8421", десяткових переносів коригувальних виправлень.
Десяткова сума |
Сума після першого етапу s5 s4 s3 s2 s1 |
Правильна сума p z4 z3 z2 z1 |
Корекція c5 c4 c3 c2 c1 |
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 |
0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 |
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 |
З таблиці видно, що якщо результат, отриманий на першому етапі, знаходиться в межах від 0 до 9, то коректувати його немає необхідності, а двійковий і десятковий перенос у цьому випадку збігаються. Якщо ж результат першого етапу знаходиться в межах від 10 до 19, то для утворення правильної суми p z4 z3 z2 z1 до попередньої суми s5 s4 s3 s2 s1 необхідно додати коригувальне виправлення 00110. Помітимо, що ознакою перебування суми першого етапу в діапазоні від 10 до 19 може служити наявність одиничного значення переносу p. Таким чином, якщо при додатку корекції перенос p=0, то як правильну суму необхідно взяти результат першого етапу, якщо ж p=1, то як правильну суму необхідно взяти відкоректований результат. З обліком викладеного ГСА додавання двійково-десяткових цифр А і B можна представити на рис. 1, а. Тут регістр PD необхідний для дублювання результату першого етапу до того, як буде визначене значення p.
Очевидно, що одержати правильну суму в підсумку можна і без дублювання попередньої суми відповідно до ГСА на рис. 1, б. Такий алгоритм містить на одну операторну вершину менше, ніж попередній, однак реалізація оператора відновлення правильного результату (PZ: = PS-00110) може зажадати великих тимчасових витрат, чим оператора пересилання (PD:=PS).
Помітимо також, що при додаванні-відніманні багато розрядних десяткових операндів дії, що передбачаються алгоритмами на рис. 1, повинні виконуватися по кожному десятковому розряді (у ДДК "8421" - по кожній тетраді двійкових розрядів).
