ЛЕКЦІЯ 20 Схеми порівняння на нерівність
.docЛЕКЦІЯ 20
Схеми порівняння на нерівність
1. Порівняння на нерівність в одному розряді.
Порівняння на більше - менше в одному розряді двох двійкових чисел виконується в відповідності з таблицею 1.
Таблиця 1 – Порівняння на нерівність
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
Відповідно маємо функції
і
.
2. Порівняння на нерівність двох двійкових чисел
Розглянемо спочатку порівняння двох чисел, які складаються з першого і нульового розрядів. Тоді, якщо в першому розряді двійкового числа а стоїть 1, а в відповідному розряді другого числа b – 0, то незалежно від того, в якому стані знаходяться нульові розряди , число а буде більше числа b. При зворотному розподілі 0 і 1 число b буде більше числа а.
Якщо значення першого розряду чисел дорівнюють один одному, а нульового ні, то тоді необхідно буде порівняти розряди на нерівність з допомогою формули
,
де - ознака рівності або нерівності значень першого розряду. Якщо значення розряду дорівнює 1, а - 0, то
.
Відповідно число . В противному разі, коли і ,
і відповідно . Якщо ж значення розрядів будуть рівні між собою, то необхідно визначитись з числом , і якщо воно буде дорівнювати 1, то маємо рівність чисел з двох розрядів, що розглядаються.
Отримані вирази легко розповсюдити на більше число розрядів. Тоді отримаємо наступну функцію:
.
З неї виходить, що порівняння двох двійкових чисел на більше – менше треба починати зі старших розрядів. Це порівняння йде до того часу, коли в якихось з однойменних молодших розрядів не з’являться різні значення, а решта молодших розрядів при цьому прийме значення, яке буде дорівнювати 0. Значення 1 функції говорить, що перше двійкове число більше другого, а 0, що друге двійкове число більше першого. Тобто результат порівняння буде отриманий. Якщо ж при цьому отримаємо, що , то це значить, що числа , які порівнюються однакові.
3. Схемна реалізація функцій нерівності
Побудуємо схему для реалізації функцій порівняння значень на більше-менше однойменних розрядів двох двійкових чисел, тобто спочатку для реалізації функції . Проведемо її перетворення::
.
Таку ж операцію проведемо і для функції . В результаті отримаємо
.
Побудуємо відповідну схему, як це показано на рис. 4.
Рисунок 4 – Функціональна схема порівняння більше – менше в одному розряді
При формуванні багаторозрядної схеми з допомогою однорозрядних схем порівняння виконують каскадне з’єднання багатьох таких схем за кількістю розрядів в числах, які порівнюються. При цьому добавляється третій вхід, який показаний штриховою лінією.
Числа порівнюються порозрядно, починаючи із старшого розряду. Порівняння відбувається до появи в якому-небудь розряді різних цифр 0 і 1. Після цього фіксується нерівність чисел, і порівняння в подальших молодших розрядах не проводяться. Схеми порівняння старшого розряду мають 2 входи для подачі двійкових чисел розрядів, що порівнюються, а інші молодші розряди мають 3 входи, з допомогою яких можна провести порівняння , , . Два основних входи дозволяють визначити, яке число з порівнюваних більше чи менше, а третій вхід, показаний на рисунку пунктиром, дозволяє блокувати порівняння в молодших розрядах, якщо в старшому i+1-му розряді встановлена нерівність.
Для формування багаторозрядної схеми порівняння проводять каскадне з'єднання однорозрядних схем. При появі нерівності в попередньому i+1-му старшому розряді на його виході сформується одиничний сигнал. Потрапляючи на 3-й вхід i-го розряду, цей сигнал викликає появу нулів на виходах і і відповідно 1 на виході . Аналогічно з'являються нулі і одиниці і на відповідних виходах решти молодших розрядів. Результуючий сигнал порівняння, при цьому, сформується в останньому нульовому розряді. Якщо в ньому на виході з’явиться 1, то це значить, що два числа, які порівнюються, дорівнюють один одному, а якщо 1, то ні. На одному із двох виходів, що відповідають нерівностям або , при цьому з’явиться 1, яка буде сигналізувати про те, яка нерівність реалізована схемою порівняння.