Двоичные логические элементы
ЭВМ и другие цифровые электронные устройства работают в строгом соответствии с четкими логическими законами, знание и понимание которых помогает в общении с компьютером. Основными составными частями любых цифровых схем являются логические элементы. Именно логические элементы образуют основу даже самых сложных современных ЭВМ. Логические элементы оперируют с двоичными числами, поэтому называются двоичными логическими элементами. Термин «логический» обычно применяют по отношению к процедуре принятия решения. Следовательно, можно сказать, что логический элемент — это такая схема, которая «основываясь» на входных сигналах, «может решать», что ей ответить на выходе — «да» или «нет». При записи тех или иных логических выражений используется специальный язык, который принят в математической логике. Основоположником математической логики является великий немецкий математик Готфрид Вильгельм Лейбниц (1646-1716 гг.). Он сделал попытку построить универсальный язык, с помощью которого споры между людьми можно было бы разрешить посредством вычислений. На заложенном Лейбницем фундаменте английский математик Джордж Буль построил здание новой науки – математической логики, которая в отличие от обычной алгебры оперирует не числами, а высказываниями. В честь Д. Буля логические переменные в языке программирования Паскаль впоследствии назвали булевыми. Высказывание – это любое утверждение, относительно которого можно сказать истинно оно или ложно, т.е. соответствует оно действительности или нет. Таким образом, высказывания являются двоичными объектами и поэтому часто истинному значению высказывания ставят в соответствие 1, а ложному – 0. Например, запись А=1 означает, что высказывание А истинно. Высказывания могут быть простыми и сложными. Простые высказывания соответствуют алгебраическим переменным, а сложные являются аналогом алгебраических функций. Функции могут получаться путем объединения переменных с помощью логических действий. Самой простой логической операцией является операция НЕ (ее называют также отрицанием, дополнением или инверсией и обозначают NOT). Логическая операция НЕ является унарной, т.е. имеет всего один операнд. Записывается в виде Ā. Основная функция схемы НЕ (инвертора) состоит в том, чтобы обеспечивать на выходе сигнал, противоположный сигналу на входе. Операции И (AND) и ИЛИ (OR) являются бинарными, т.к. представляют собой результаты действий над двумя логическими величинами. Логическое И часто называют конъюнкцией, или логическим умножением. В математической логике для обозначения конъюнкции используются знаки & или Ù. Булево выражение записывается в виде А Ù В. Операцию ИЛИ называют дизъюнкцией, или логическим сложением. В математической логике используется знак Ú. Записывается в виде булевого выражения А Ú В. Три основные логические операции И, ИЛИ, НЕ называют «тремя китами машинной логики». Они образуют полную систему логических операций, из которой можно построить сколь угодно сложное логическое выражение. В вычислительной технике также часто используется операция исключающее ИЛИ (XOR), которая отличается от «обыкновенного» ИЛИ только при Х=1 и Y=1 (сложение по модулю 2). Операция XOR фактически сравнивает на совпадение два двоичных разряда. Булево выражение записывается А Å В. Символ Å (псевдоплюс) означает, что входы (А и В) элемента связаны логической функцией исключающей ИЛИ. Теоретически основными базовыми логическими операциями считаются именно: И, ИЛИ, НЕ, но на практике по технологическим причинам в качестве основного логического элемента используется элемент И-НЕ, который реализует логическую функцию И-НЕ (инвертированное И). Булево выражение записывается А Ù В. Логические элементы И-НЕ применяются очень широко и их можно использовать для реализации других логических функций.
Условные обозначения основных логических элементов приведены на рис.5.
И ИЛИ НЕ И-НЕ исключающее ИЛИ Рис.5. Условное обозначение основных логических элементов
В качестве одного из способов задания логической функции может рассматриваться таблица истинности (табл.4). Таблица истинности ¾ таблица, в которой определяют значение функции в зависимости от комбинаций входных сигналов. Таким образом, существуют три основных инструмента для решения задач символической логики: условные обозначения (символы) логических элементов, таблицы истинности и булевы выражения.
Таблица истинности для логических элементов Таблица 4
Законы алгебры логики Алгебра логики или булева алгебра ¾ специальная математическая дисциплина, которая используется для описания схем ЭВМ, их оптимизации и проектирования, т.е. является теоретической основой построения ЭВМ. Основоположником этой дисциплины является английский математик прошлого столетия Джордж Буль. Элементарные высказывания:
В алгебре логики установлен целый ряд законов, с помощью которых возможно преобразование логической функции (ЛФ): § коммутативный (переместительный): х1^х2=х2^x1; х1Úх2=х2Úх1; § ассоциативный (сочетательный): (х1^х2) ^х3=(х1^х3) ^х2=х1^ (х2^х3) (х1Úх2) Úх3=х1Ú (х2Úх3). Эти законы полностью идентичны законам обычной алгебры: § дистрибутивный (распределительный): х1^ (х2Úх3)=х1^х2Úх1^х3 х1Úх2^х3=(х1Úх2)(х1Úх3); § закон поглощения. В дизъюнктивной форме ЛФ конъюнкция меньшего ранга, т.е. с меньшим числом переменных, поглощает все конъюнкции большего ранга, если ее изображение содержится в них. Это же справедливо и для конъюнктивных форм: х1Úх1^х2=х1 х1^ (х1Úх2)=x1; § законы склеивания: х1 х2 Ú х1 х2 = х1 (х1 Ú х2) (х1 Ú х2 ) = х1; FxÚFx=F (xÚF)(xÚF)=F, где F – логическая функция общего вида, не зависящая от переменной х; § закон свертки: х Ú x F=x Ú F x (x Ú F) = x F; § правило де Моргана: х1Úх2 = х1 ^ х2 х1^х2 = х1 Ú х2
Убедиться в тождественности произведенных зависимостей можно путем аналитических преобразований выражений или путем построения таблицы истинности для логической функции.
|