
- •Алгебра логики
- •Поразрядные операции
- •Основные законы алгебры логики
- •Т ождества
- •Правила поглощения и склеивания
- •Переход от табличной формы функции алгебры логики к аналитической Запись функции по единицам
- •Запись функции по нулям
- •Логические функции от двух аргументов
- •Стрелка Пирса
- •Функция следования (импликация от a к b)
- •Функция эквивалентность
- •Штрих Шеффера
- •Приоритет основных логических операций
- •Минимизация функций алгебры логики с помощью карт Карно
- •Правило записи функции по карте Карно по единицам
- •Запись функции по нулям
- •Правило записи функции по карте Карно по нулям
Алгебра логики
Оглавление
Таблицы истинности 2
Таблицы истинности основных операций 2
Задачи 3
Поразрядные операции 4
Основные законы алгебры логики 5
Тождества 6
Правила поглощения и склеивания 6
Задачи 6
Переход от табличной формы функции алгебры логики к аналитической 8
Запись функции по единицам 8
Запись функции по нулям 9
Логические функции от двух аргументов 9
Стрелка Пирса 10
Функция следования (импликация от A к B) 11
Функция эквивалентность 11
Штрих Шеффера 11
Приоритет основных логических операций 12
Задачи 12
Минимизация функций алгебры логики с помощью карт Карно 13
Правило записи функции по карте Карно по единицам 14
Карта Карно для функции от 4 переменных 15
Запись функции по нулям 18
Правило записи функции по карте Карно по нулям 18
В алгебре логики операции выполняются над переменными, которые могут принимать 2 значения: истина (true) или ложь (false – фальшь). Истина обычно обозначается 1, а ложь – 0.
Эти переменные соответствуют утверждениям, относительно которых можно сказать, истинны они или ложны. Такие утверждения называются высказываниями.
Кроме того, эти переменные могут соответствовать наличию или отсутствию электрических потенциалов в переключательных (электронных схемах), поэтому аппарат алгебры логики используют для описания электронных схем.
В программировании логической переменной соответствует результат проверки отношения, например: x>0.
Логические переменные обычно обозначают латинскими буквами: A, B, C, … x, y, z.
В алгебре логики определены несколько логических операций над логическими переменными, основные из них: И, ИЛИ, НЕ.
Таблицы истинности
Таблицы истинности представляют собой таблицы, в которых перечислены все возможные комбинации значений аргументов и соответствующие им значения функций.
Таблицы истинности основных операций
1. Операция НЕ (логическое отрицание или инверсия).
Отрицание обычно обозначают:
или
.
В языке С/C++ отрицание обозначают знаком !, например: !(a>0) (это соответствует отношению a <= 0).
|
|
0 |
1 |
1 |
0 |
О
перация
НЕ меняет 0 на 1, а 1 – на
0.
Условное графическое изображение логической схемы, осуществляющей инверсию сигнала:
2. Операция И (логическое умножение, или конъюнкция).
Логическое умножение обычно обозначают
знаком & (амперсанд) или
.
Когда понятно, что речь идет о логическом
умножении, используют точку или опускают
знак этой операции.
В языке С/C++ логическое умножение обозначают знаком &&, например: (x == 0) && (y == 0).
X |
Y |
X & Y |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
О
перация
И дает значение 1 только
в одном случае, когда оба операнда равны
1.
Условное графическое изображение логической схемы, осуществляющей логическое умножение сигналов:
X |
Y |
X
|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
Логическое сложение обычно обозначают знаком V. Когда понятно, что речь идет о логическом сложении, используют знак +.
В языке С/C++ логическое сложение обозначают знаком || , например: (x == 0) || (y == 0).
О
перация
ИЛИ дает значение 0
только в одном случае, когда оба операнда
равны 0.
Условное графическое изображение логической схемы, осуществляющей логическое сложение сигналов:
Приоритет операций
1) Унарное НЕ (когда операция относится к одной переменной).
2) Логическое умножение &
3) Логическое сложение
Задачи
Задача 1 Вычислить значение логического выражения
при x = 1, y
= 1, z = 0
Решение:
y & z = 1 & 0 = 0 2)
=
= 1
4)
5)
Ответ: F = 1
Задача 2
Построить таблицу истинности функции:
Запишем все возможные комбинации значений переменных и будем заполнять таблицу по столбцам.
Количество строк в таблице истинности = 2n, где n- количество логических аргументов функции. В данном случае n = 3, следовательно в таблице должно быть 8 строчек, не считая заголовка.
Чтобы записать все возможные комбинации значений аргументов, можно рассматривать их как двоичные числа от 000 до 111 (от 0 до 7).
Другой способ записи всех возможных комбинаций значений аргументов состоит в следующем:
X
Y
Z
X & Y
F
0
0
0
0
1
0
0
0
1
0
0
1
1
0
1
1
2
0
1
0
1
0
0
0
3
0
1
1
1
0
1
1
4
1
0
0
0
0
0
0
5
1
0
1
0
0
0
0
6
1
1
0
0
1
0
1
7
1
1
1
0
1
0
1
Разделить столбец значений второй переменной на 4 части и заполнить четверти чередующимися группами нулей и единиц, начиная с группы нулей.
Продолжить деление столбцов пополам и заполнение их чередующимися группами нулей и удиниц; в последнем столбце должна идти последовательность: 0 1 0 1 0 1…