Виконання порозрядної операції «складання за mod 2».

Виконання порозрядних операцій «логічне додавання», «логічне множення».

Реалізація порозрядних операцій в регістрах.

Виконання порозрядної операції «складання за mod 2».

Виконання порозрядних операцій «логічне додавання», «логічне множення».

Реалізація порозрядних операцій в регістрах.

План.

Лекція 24. Виконання порозрядних логічних операцій при передачі інформації між регістрами.

Звичайно, операція видачі коду з регістра об’єднується з операцією прийому цього коду на інший регістр. В процесі передачі інформації з регістра на регістр можлива змістовна переробкакодів слів. В залежності від організації схем клапанів обміну інформацією між регістрами можуть бути здійснені такі операції:

· перепис коду із регістра в регістр;

· логічне додавання двох слів;

· логічне множення двох слів;

· порозрядне додавання двох слів (додавання за модулем 2).

Операція видачі коду з регістра була вже розглянута. Розглянемо виконання в регістрах інших операцій. Нехай два слова X і Y розміщені в регістрах Рг1іРг2 відповідно, а результат операції повинен бути утворений в регістрі Рг2.

Значення результатів логічного додавання, логічного множення і додавання за mod 2 в кожному з розрядів регістра утворюються згідно таблиці 1.

Таблиця 1. Таблиця утворення результатів порозрядних операцій.

xi yi Qi = xi Ú yi xi yi Qi = xi Ù yi xi yi Qi = xi Å yi

На рис. 1 наведена схема для реалізації виконання операцій порозрядного додавання і множення.

В Рг1 записаний код числа x1, x2, …, xn. Код іншого числа y1, y2, …, yn зберігається в Рг2. Код числа x1, x2, …, xn може бути переданий в Рг2 через систему логічних елементів І1 або І2. При збудженні шини передачі сигналом ЛД (логічне додавання) через схеми І1 на входи S тригерів регістра Рг2 пройдуть сигнали, що відповідають станам 1 тригерів регістра Рг1. Отже, стан 1 тригерів регістраРг1 переноситься при передачі в тригери регістра Рг2 і об’єднується в кожному тригері регістра Рг2 з їх станами 1, що були встановлені кодом y1, y2, …, yn. Це і відповідає виконанню операції порозрядного додавання кодів відповідно таблиці 1.

При збудженні шини передачі сигналом ЛМ (логічне множення) через систему логічних схем І2 в регістр Рг2 на входи 0 тригерів будуть передані сигнали, що відповідають стану інверсних виходів тригерів регістра Рг1. В цьому випадку станеться скидання всіх тригерів регістра Рг2, крім тих, стан 1 яких співпадає з станом 1 тригерів регістра Рг1. Отже, виконання вказаної передачі сигналів призводить до виконанню операції порозрядного логічного множення у відповідності до таблиці 1.

Схема регістра, в якому виконується операція порозрядного додавання за mod 2 наведена на рис. 2. Нехай в регістр на тригерах з лічильними входами записаний код числа x1, x2, …, xn. За сигналом прийому коду «Пр» через систему схем І(&) на лічильні входи тригерів в кожному розряді можна передати сигнали 1 коду числа y1, y2, …, yn. Проходячи на лічильний вхід, сигнали 1 призведуть до перекидання всіх тригерів, які попередньо сигналами коду x1, x2, …, xn були встановлені в стан 1 і 0, і в регістрі утвориться код числа Q1 Q2Qn-1 Qn як результат порозрядного додавання за mod 2.

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

Вхідні і вихідні кола тригерів регістрів в залежності від функціонального призначення регістра в МП-системі можуть містити як елементи, що дозволяють виконувати тільки окремі зазначені вище операції, так і елементи, що забезпечують виконання багатьох операцій. Прикладом такого універсального регістра може бути регістр А(акумулятор) в ВІС мікропроцесора КР580ИК80А.