Таблица истинности
Самый надёжный способ описать, что должна делать логическая схема, — перечислить все комбинации входов и для каждой записать выход. Такая таблица истинности ничего не упускает и служит исходной точкой для упрощения и для проверки готовой схемы.
Обновлено Редакция GAW
Таблица истинности (truth table) — описание логической функции или схемы перечнем всех возможных комбинаций входных значений с выходным значением для каждой. По Kuphaldt, в таблице столько строк, сколько уникальных комбинаций входов: у инвертора две, у двухвходового элемента четыре, у функции n переменных — 2ⁿ.
Пример: два датчика из трёх
Kuphaldt разбирает мусоросжигатель с тремя датчиками пламени: выход должен включаться, если пламя видят хотя бы два датчика из трёх.
| A | B | C | Выход |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 |
Четыре строки с единицей дают четыре минтерма: A'BC + AB'C + ABC' + ABC. Это каноническая сумма произведений, после упрощения — AB + BC + AC: три элемента И и один ИЛИ. Строки удобно нумеровать двоичным кодом входов, тогда та же функция записывается как Σm(3, 5, 6, 7).
Зачем таблица нужна
- Спецификация. Проектирование логики, как пишет Kuphaldt, часто начинается именно с таблицы: она описывает поведение, не навязывая схему.
- Упрощение. Строки с единицами переносятся в карту Карно или в табличный метод Куайна — Мак-Класки, который и начинается с «таблицы комбинаций».
- Безразличные комбинации. Строки, которые не могут встретиться, помечают d, X или звёздочкой — их значение выбирают так, чтобы схема стала проще.
- Проверка. Готовую схему или программу прогоняют по всем строкам таблицы; так проверяют и даташитные таблицы функций микросхем — дешифраторов, мультиплексоров, логических элементов.
Таблицу по выражению строит генератор таблиц истинности, а обратную задачу — от таблицы к минимальной формуле и схеме — решает симулятор логических схем.
Частые вопросы
Почему в таблице истинности 2ⁿ строк?
2ⁿ, где n — число входов: у инвертора 2 строки, у элемента с двумя входами 4, с тремя — 8, с четырьмя — 16. Каждый новый вход удваивает таблицу, поэтому для функций больше чем от пяти-шести переменных таблицей пользуются программы, а не человек.
В каком порядке записывать строки таблицы истинности?
Принято перечислять комбинации как двоичные числа по возрастанию: 000, 001, 010 и так далее до 111. Тогда номер строки равен двоичному коду входов, и функцию можно коротко записать списком номеров строк с единицей, например Σm(3, 5, 6, 7).
Как по таблице истинности записать логическое выражение?
Для каждой строки с единицей на выходе записать произведение всех входов, взяв переменную без инверсии, если в строке 1, и с инверсией, если 0, а потом сложить эти произведения. Получится сумма минтермов — каноническая ДНФ. Её затем упрощают алгебраически или картой Карно.
Источники
- Kuphaldt T. R. Lessons In Electric Circuits, Vol. IV — Digital, ch. 3 «Logic Gates» (CC BY) — таблица истинности показывает все комбинации входных логических уровней и соответствующий выход; строк столько, сколько уникальных комбинаций: у инвертора две, у двухвходового элемента четыре
- Kuphaldt T. R. Lessons In Electric Circuits, Vol. IV — Digital, ch. 7 «Boolean Algebra», разд. «Converting truth tables into Boolean expressions» (CC BY) — проектирование часто начинается с таблицы истинности; пример: датчики пламени мусоросжигателя, выход при двух из трёх — A'BC + AB'C + ABC' + ABC = AB + BC + AC; рассогласование датчиков — в форме произведения сумм (A + B + C)(A' + B' + C')
- E. J. McCluskey. Minimization of Boolean functions. The Bell System Technical Journal, 1956, vol. 35, no. 6, p. 1417 — разд. 1: функция задаётся таблицей комбинаций (table of combinations), где для каждой комбинации входов указан выход; для комбинаций, которые не могут возникнуть, ставится d
Нашли ошибку?
Смотрите также
- Таблица истинностиТаблица, СДНФ и СКНФ, минимальные ДНФ и КНФ
- Симулятор логических схемВентили и выражения, таблица всех узлов, карта Карно, минимизация, И-НЕ
- МинтермПроизведение всех переменных, равное 1 в одной строке таблицы
- Сумма произведений (ДНФ)Функция как ИЛИ нескольких произведений: каноническая и минимальная ДНФ
- Логический элемент (вентиль)Схема, выход которой — булева функция входов: НЕ, И, ИЛИ и их варианты
- Карта КарноМинимизация логических функций группировкой клеток