Логические основы вычичлительной техники

реклама
ЛОГИЧЕСКИЕ ОСНОВЫ ЦИФРОВОЙ
ТЕХНИКИ
В 17 веке с выходом на историческую арену буржуазии
начинается бурное развитие производства. Потребности производства
поставили перед наукой ряд проблем. В процессе их решения
интенсивно развивалась и сама наука, особенно математика. При
доказательстве некоторых ее положений стали использовать
достижения формальной логики, как науки о формах и законах
мышления, основоположником которой был Аристотель. Вплоть до 17
века формальная логика оставалась практически неизменной. В свою
очередь, для решения некоторых проблем логики стали привлекать
математику. Взаимное влияние формальной логики на математику и
математики на логику с одной стороны способствовало их развития, а
с другой - привело к возникновению новой науки, получившей название
математическая
логика.
Одним
из
важнейших
разделов
математической
логики является алгебра логики, созданная в
середине 19 века ирландским математиком Дж.Булем. В честь ее
создателя эту алгебру часто называют булевой. Математический
аппарат алгебры логики широко используется при решении задач
анализа и синтеза схем цифровой техники и дискретной автоматики.
Сущность алгебры логики
Алгебра логики основана на применении алгебраических методов
к логике. Но в отличие от обычной алгебры она оперирует не числами,
а высказываниями. Благодаря этому оказалось возможным описывать
в символьной форме на языке алгебры логики рассуждения и
вычислять их результат с точки зрения его истинности. Под
высказыванием понимают любое предложение, о котором можно
достоверно сказать истинно оно или ложно. С позиции алгебры логики
главным в высказывании является не смысловое содержание
высказывания, а значение его истинности.
Принято считать, что значение истинности высказывания равно
единице (1), если оно истинно, и равно нулю (0), если оно ложно.
Например, высказывания:
"Атомная пл обладает большой
автономностью"; "Владивосток - административный центр Приморского
края"; "Снег белый" - истинны, и значения их истинности равны 1.
Высказывания:
"Гидроакустические
станции
позволяют
обнаруживать воздушные цели"; "Волга впадает в Черное море";
"Зимой ночи короче дня" - ложны, значения их истинности равны 0.
Если истинность высказывания во времени неизменна, то такие
высказывания называются постоянными. Все высказывания, которые
приведены выше, относятся к постоянным. Постоянные высказывания
принято обозначать строчными буквами латинского алфавита,
например: А,В,С,... Запись А=1 и С=0 означает, что высказывание А
истинно, а высказывание С ложно.
Два высказывания называются равнозначными, если их значения
истинности одинаковы. Запись А=В означает, что высказывания А и В
равнозначны, т.е. они одновременно либо ложны, либо истинны.
Высказывания, истинность которых во времени изменяется,
относятся к переменным, например: "Сегодня 25 число"; "Завтра
понедельник". Первое высказывание бывает истинным 12 раз в году, а
второе каждое воскресенье. В остальные дни года они ложны.
Переменные высказывания по аналогии с математическими
переменными обозначают прописными буквами латинского алфавита:
x, y, z,... или x1, х2,…..хn. Истинность любого переменного
высказывания, например: х3, может принимать два значения: либо 1,
либо 0, т.е. переменные высказывания являются двоичными
переменными.
Применение
в
алгебре
логики
переменных
высказываний служит для выражения всеобщности и позволяет
формулировать ее законы.
Простые высказывания с помощью логических связей можно
объединять в сложные высказывания, которые будут функциями
простых высказываний, например: "Во второй половине дня пойдет
снег и видимость ухудшится", "Если ночью не будет шторма, то почту
доставят завтра". Истинность сложных высказываний зависит от
истинности простых высказываний, из которых оно составлено.
Так первое из этих высказываний будет истинным только в том случае,
если во второй половине дня действительно пойдет снег, а второе при
условии, что ночью не будет шторма. Если же во второй половине дня
не пойдет снег и ночью будет шторм, то оба сложных высказывания
будут ложными. Для обозначения сложных высказываний (логических
функций) используются конечные строчные латинские буквы P, Q, S
или F1, F2,...,Fn. В общем случае сложные высказывания тоже могут
принимать только одно из двух возможных значений: либо 1, либо 0,
т.е. являются двоичными функциями. Именно они и составляют
предмет исследования алгебры логики.
Сложное высказывание P следующего содержания "Курсант
Петров хороший спортсмен и отлично успевает" в символьной форме
можно представить как Р = А & D, где А - простое постоянное
высказывание "Курсант Петров хороший спортсмен", а D - простое
постоянное высказывание "Курсант Петров отлично успевает", & символ
логической связи (логического умножения) простых
высказываний.
Элементы цифровых схем и схем дискретной автоматики
являются двухпозиционными приборами, т.е. приборами, которые по
условию работы могут находится лишь в одном из двух различных
устойчивых состояний. Так электрический контакт может быть
замкнутым или разомкнутым, транзистор может быть заперт или
открыт. Одному из состояний двухпозиционного элемента можно
поставить в соответствие логическую "1", а другому - логический "0" и
рассматривать "1" и "0" как значения истинности высказываний вида:
"контакт 7а замкнут", "транзистор VT3 закрыт" т.е. как
простое переменное высказывание. Сигналы, поступающие на вход
двухпозиционных элементов и узлов, и сигналы, снимаемые с их
выходов, тоже принимают только два значения "1" или "0". При этом
входные сигналы можно рассматривать как простые переменные
высказывания (двоичные переменные), а выходные сигналы как
сложные высказывания, т.е. логические функции (рис. 4. 1). Последнее
позволяет использовать для анализа и синтеза логических схем
хорошо разработанный математический аппарат алгебры логики.
х1
х2
х3
F1 (x1, х2,…..хn)
х4
хn
Рис. 4.1. Условное изображение логической схемы,
подлежащей анализу или синтезу
В общем случае задача анализа схем состоит в том, чтобы, имея
готовую схему, описать ее работу логической функцией. Затем путем
преобразования этой функции на основе законов алгебры логики
исследовать вопрос об экономичности этой схемы, т.е. выяснить
нельзя ли получить более простую схему, содержащую меньшее
количество элементов, которая реализовывала бы исходную
логическую функцию.
Задача синтеза схемы состоит в том, чтобы имея некоторую
логическую функцию, определить из каких элементов и каким образом
должна быть построена сложная схема, реализующая заданную
функцию. Для этого необходимо исходную логическую функцию
рациональным образом преобразовать и расчленить на отдельные
части так, чтобы каждая из них могла быть представлена
элементарной схемой, а общее число элементов было минимальным.
Основные логические связи
Логические связи (операции) используются для объединения
простых высказываний в сложные так, чтобы они были двоичными
функциями
простых
высказываний.
Объединение
простых
высказываний в сложные производится в алгебре логики без учета их
смыслового содержания. К числу основных логических операций,
позволяющих объединять постоянные или переменные высказывания
в более сложные постоянные или переменные высказывания
относятся
операции
отрицания,
конъюнкции,
дизъюнкции,
эквивалентности и некоторые другие.
•
1. Отрицание высказывания х - это высказывание, которое истинно,
когда х ложно, и ложно, когда х истинно. Обозначается через х и
читается "не х". Операция отрицания задается таблицей 4.1. В
цифровой технике реализуется элементом "НЕ", условное графическое
обозначение которого приведено на рис. 4.2. Часто операцию
отрицания называют инверсией.
Таблица 4.1
Х
Х
0
1
1
0
1
Х
Х
Рис. 4.2. Элемент «НЕ»
2. Конъюнкция двух высказываний х1 и х2. - это сложное
высказывание, которое истинно только в случае истинности обоих
высказываний х1, х2. и ложно во всех остальных случаях.
Обозначается через х1  х2 и читается "х1, и х2". Знак логической
операции "" имеет смысл союза "и" и
называется знаком
конъюнкции. Вместо знака конъюнкции иногда используется знак
логического умножения "&" или знак алгебраического умножения " ∙ ".
Операция конъюнкции для высказываний х1, х2 задается таблицей 4.2.
В цифровой технике реализуется элементом "И" на два входа,
условное графическое обозначение которого приведено на рис. 4.3.
Запись Р= х1  х2 означает, что сложное высказывание Р получено
путем конъюнкции высказываний х1 и х2.
Таблица 4.2
х1
х1
&
х1 х2
х2
0
0
1
1
х2
х3 х2
0
1
0
1
0
0
0
1
Рис. 4.3. Элемент "И"
Операцию конъюнкция можно применять к трем и более
высказываниям. Произведения двух и более простых высказываний
допустимо записывать в виде, например. В алгебре логики произведения
простых высказываний или их отрицаний принято называть
конъюнкциями.
3. Дизъюнкция высказываний х1, х2. - это сложное высказывание,
которое ложно только в случае ложности обоих высказываний х1, х2, во
всех остальных случаях оно истинно. Обозначается через "х1vх2" и
читается "х1 или х2". Знак логической связи "v" имеет смысл союза "или" и
называется знаком дизъюнкции. Вместо знака дизъюнкции иногда
используют знак логического сложения "+". Операция дизъюнкции для
высказываний х1 и х2 задается таблицей 4.3.
В цифровой технике реализуется элементом "ИЛИ" на два входа,
условное графическое обозначение которого приведено на рис. 4.4.
Запись Р=х1+х2 означает, что сложное высказывание Р получено путем
дизъюнкции высказываний х1 и х2.
Таблица 4.3
х1
х1
1
х1 + х2
х2
х2
0
0
1
1
0
1
0
1
х1 + х2
0
1
1
1
Рис. 4.4. Элемент "ИЛИ"
Операцию дизъюнкции также можно применять к трем и
более
высказываниям. Знак "v" имеет смысл, употребленного в высказывании
"При звоне будильника проснется Петров или Иванов" (здесь "или" не
исключает возможность того, что проснутся оба), т.е. смысл так
называемого неразделительного "или". Сумму двух и более простых
высказываний, например х1+х2 +х3, в алгебре логики принято называть
дизъюнкцией.
4. Равнозначность высказываний х1, х2.- это сложное
высказывание, которое истинно только тогда, если значения
истинности высказываний х1 и х2 совпадают, и ложно при их
несовпадении. Обозначается через х1~х2 и читается " х1 равнозначно
х2". Операция равнозначности высказываний х1 и х2 задается
таблицей 4.4 и в цифровой технике реализуется элементом, условное
графическое обозначение которого приведено на рис. 4.5. Запись Р=
х1~х2 означает, что Р=1 только в том случае, если значения истинности
высказываний х1 и х2равны.
Таблица 4.4
х1
х
=
х1~х2
х2
Рис. 4.5. Элемент, реализующий операцию
х
0
0
1
1
0
1
0
1
х1~х2
1
0
0
1
"Равнозначность высказываний х1 и х2 "
Часто операцию
равнозначности высказываний называют
эквивалентностью высказываний.
5. Неравнозначность высказываний х1, х2 - это сложное
высказывание, которое истинно только тогда, если значения
истинности высказываний х1 и х2 не совпадают, и ложно при их
совпадении. Обозначается " х1 х2 " и читается "х1 неравнозначно х2".
Операция неравнозначности задается таблицей 4.5 и в цифровой
технике реализуется элементом "Сложение по модулю два". Условное
графическое обозначение этого элемента приведено на рис. 4.6.
Таблица
4.5
х1
=1
х1 х2
х2
Рис. 4.6. Элемент, реализующий операцию
"Сложение по модулю два"
х1
х2
0
0
1
1
0
1
0
1
х1 х2
0
1
1
0
Знак  имеет смысл исключающего "или", употребленного в
высказывании "Выбирай, он или я". Операция неравнозначности имеет
важное значение в цифровой технике, так как она позволяет
осуществлять сложение двоичных чисел по модулю два.
6. Операция Шеффера - это сложное высказывание, которое
ложно только тогда, если все простые высказывания, из которых оно
образовано, истинны. Во всех остальных случаях оно истинно. Для
двух высказываний х1 и х2 операция Шеффера записывается как х1/х2
и задается таблицей 4.6. В цифровой технике она реализуется
элементом "И-НЕ". Условное графическое обозначение этого элемента
приведено на рис.4.7.
Таблица 4.6
х1
х1
х2
х1/х2
&
х1/х2
х2
Рис. 4.7. Элемент "И-НЕ"
0
0
1
1
0
1
0
1
1
1
1
0
Из анализа таблицы 4.2 и таблицы 4.6 очевидно, что между
операцией Шеффера и операцией конъюнкции существует связь, суть
которой сводится к тому, что если к операции конъюнкции применить
операцию отрицания, то получим результат равнозначный операции
Шеффера, что можно представить следующим соотношением
х1/х2 = х1&х2 = x1 х2.
Именно вследствие этого соотношения операцию Шеффера чаще
называют операцией "И-НЕ".
7. Операция Пирса - это сложное высказывание, которое истинно
только тогда, если все простые высказывания, из которых оно
образовано, ложны. Во всех остальных случаях оно ложно. Для двух
высказываний х1, х2 операция Пирса записывается как х1| х2 и
задается
таблицей 4.7. В цифровой технике она реализуется
элементом "ИЛИ-НЕ", условное графическое обозначение которого
приведено на рис. 4.8.
Таблица 4.7
х1
х1
1
х1|х2
х2
х2
0
0
1
1
0
1
0
1
х1 |х2
1
1
1
0
Рис. 4.8. Элемент "ИЛИ-НЕ"
Из сопоставления таблиц 4.3 и 4.7 также следует вывод о том, что
применив к операции дизъюнкции операцию "НЕ", получим результат,
равнозначный операции Пирса, что можно представить следующим
соотношением х1|х2 = x1 + х2.
Вследствие этого соотношения операцию Пирса чаще называют
операцией "ИЛИ-НЕ".
Законы алгебры логики
Любое
сложное
выражение,
полученное
из
простых
высказываний посредством указанных выше логических операций,
называется формулой алгебры логики. Две формулы алгебры логики,
образованные из n простых высказываний x1, х2.,…..xn, называются
равносильными или равными, если при любых комбинациях значений
истинности этих высказываний обе формулы имеют одинаковые
значения истинности. В алгебре логики встречаются ситуации, когда
две формулы, образованные из n простых высказываний, имеют
различные формы записи и степень сложности, но в тоже время
являются равными.
Для преобразования сложных логических формул к более
удобному и простому виду сформулирован ряд законов алгебры логики
и их следствий. Рассмотрим важнейшие из них.
1. Переместительный закон (закон коммутативности):
•
•
для дизъюнкций
для конъюнкций
х + y = y + x,
x*y = y *x.
2. Сочетательный закон (закон ассоциативности):
•
•
для дизъюнкций
для конъюнкций
(x + y) + z = x + (y + z),
(x*y)* z = x*(y*z).
3.
Первый
распределительный
дистрибутивности):
•
закон
(первый
закон
x*(y + z) = x*y + x*z.
4. Второй распределительный закон (второй закон дистрибутивности):
•
x + y*z = (x + y) (x + z).
5. Законы отрицания (правило де Моргана):
•
•
для дизъюнкции
для конъюнкции
6. Законы поглощения:
x + x*z = x,
x + y = x*y,
x*y = x + y.
•
x*(x + y) = x.
7. Закон идемпотентности:
•
•
для дизъюнкции
для конъюнкции
x + x + x + ...+ x = x,
x x x ... x = x.
8. Закон склеивания:
•
x + x = 1.
•
9. Закон противоречия:
•
x*x = 0.
•
10. Следствия законов алгебры логики:
•
•
для дизъюнкций
для конъюнкций
x + 1 = 1, x + 0 = x.
x*1 = x, x*0 = 0.
Используя второй закон дистрибутивности
простейшие преобразования, можно получить
•
и
выполняя
x + x*y = x + y.
Сущность использования
законов алгебры логики для
преобразования и упрощения логических формул достаточно подробно
рассматривается в следующем параграфе.
Скачать