Цифровой компаратор

Перейти к навигацииПерейти к поиску

Цифрово́й компара́тор логическое устройство с двумя словарными входами, на которые подаются два разных двоичных слова равной в битах длины и обычно с тремя двоичными выходами, на которые выдаётся признак сравнения входных слов, — первое слово больше второго, меньше или слова равны. При этом выходы «больше», «меньше» имеют смысл, если входные слова кодируют числа в том или ином машинном представлении.

Часто цифровые компараторы не имеют выходов «больше», «меньше», а только выход «равно».

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

Промышленностью компараторы выпускаются в виде законченных компонентов — микросхем с разной длиной сравниваемых слов и других параметров. Примеры микросхем цифровых компараторов: КМОП-логика — 4063 и 4585, ТТЛ — 7485 и 74682-89 и многие другие.

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

Аналоговым эквивалентом цифрового компаратора является аналоговый компаратор напряжений или токов. Некоторые микроконтроллеры имеют входные встроенные аналоговые компараторы, состояние выходов которых может быть считано программой контроллера или вызывать её прерывание подпрограммой.

Логические функции

Для примера рассмотрим два 4-битных слова и , пусть эти слова представляют собой некоторые натуральные числа, представленные в двоичном виде, причем 3-й разряд будет старшим:

,

Здесь каждая буква с нижним цифровым индексом представляет один из битов в числах.

Равенство (эквивалентность)

Двоичные числа и будут равны, если все пары соответственных битов обоих чисел равны, то есть:

, , и .

В двоичной записи чисел их цифры это или 0, или 1. Булева функция для равенства любых двух цифр и (здесь логическая операция «ИЛИ» обозначена символом , а «И» символом точки) может быть выражена как:

.

При этом равна 1 только если и равны.

Для равенства и , все функции (для i = 0, 1, 2, 3) должны быть равны 1.

Поэтому признак равенства и записывается в виде логической функции как

.

Двоичная функция равна 1 только если все пары цифр двух чисел равны.

Неравенство (неэквивалентность)

Чтобы определить наибольшее из двух двоичных чисел, мы рассмотрим отношение величин пар значащих цифр, начиная со старших битов к младшим битам до нахождения неравенства в некоторой позиции. Когда неравенство найдено, то, если соответствующий бит равен 1 и такой же бит равен 0, то мы считаем, что .

Это последовательное сравнение может быть выражено логическими выражениями как:

,
.

и  — выходные двоичные переменные, которые равны 1 когда или соответственно.

Таблицы истинности компаратора

Для примеров приведены таблицы истинности тривиального однобитового и двухбитового компараторов.

Логическая функция однобитового цифрового компаратора описывается таблицей истинности:

ВходыВыходы
00010
01100
10001
11010

Таблица истинности двухбитового компаратора:

ВходыВыходы
0000010
0001100
0010100
0011100
0100001
0101010
0110100
0111100
1000001
1001001
1010010
1011100
1100001
1101001
1110001
1111010

См. также

Ссылки