Логическая операция «исключающее ИЛИ»
💻 Информатика · 8 класс
Логическая операция «исключающее ИЛИ»
Исключающее ИЛИ — это логическая операция, результат которой истинен тогда и только тогда, когда значения двух высказываний различны. Её часто обозначают значком XOR или знаком ⊕. По смыслу это «либо одно, либо другое, но не оба сразу».
Отличие от обычного ИЛИ
Обычная дизъюнкция (ИЛИ) истинна, когда верно хотя бы одно высказывание, в том числе оба. Исключающее ИЛИ в случае «оба истинны» даёт ложь. Сравним их в одной таблице.
| A | B | A ИЛИ B | A исключающее ИЛИ B |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 0 |
Связь со сложением битов
Исключающее ИЛИ совпадает с младшим битом суммы двух битов: 1 ⊕ 1 = 0 с переносом, который операция уже не учитывает. Поэтому именно XOR используют в полусумматоре для вычисления бита результата.
Пример: A = 1, B = 1
A исключающее ИЛИ B = 0
A = 1, B = 0
A исключающее ИЛИ B = 1
Свойства операции
У исключающего ИЛИ есть несколько удобных свойств, которые помогают в вычислениях и в программировании.
| Выражение | Результат | Смысл |
|---|---|---|
| A исключающее ИЛИ 0 | A | сложение с нулём ничего не меняет |
| A исключающее ИЛИ 1 | НЕ A | сложение с единицей инвертирует бит |
| A исключающее ИЛИ A | 0 | число, сложенное само с собой, даёт ноль |
Последнее свойство особенно важно: оно объясняет, почему повторное применение операции с тем же ключом отменяет первое.
Где применяется
- В простейшем шифровании: дважды применённое
XORс одним ключом возвращает исходный текст. - В схемах сложения двоичных чисел (полусумматор и сумматор).
- В проверке: совпадают два бита или нет.
- В обмене значениями двух переменных без использования третьей.
Пример с шифрованием
Пусть бит данных равен 1, а бит ключа равен 1. Зашифруем и расшифруем его.
данные = 1, ключ = 1
шифр = 1 исключающее ИЛИ 1 = 0
расшифровка = 0 исключающее ИЛИ 1 = 1 ← снова данные
Исходный бит восстановился. Так же можно обработать целое сообщение, применяя операцию к каждому биту по отдельности.
Сравнение с другими операциями
Полезно держать в голове, чем исключающее ИЛИ отличается от трёх базовых логических операций. Все они задаются таблицами истинности, но дают разные результаты на одинаковых наборах.
| A | B | И | ИЛИ | исключающее ИЛИ |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
Видно, что исключающее ИЛИ совпадает с обычным ИЛИ всюду, кроме последней строки, где оба высказывания истинны. Эта единственная различающаяся строка и определяет весь смысл операции.
Частая ошибка: путать исключающее ИЛИ с обычным ИЛИ в строке «оба истинны». Запомните: если A и B одинаковы — результат0, если различны —1.
Кратко о главном
- Исключающее ИЛИ истинно, когда высказывания различны.
- При «оба истинны» оно даёт ложь, в отличие от обычного ИЛИ.
- Совпадает с младшим битом суммы двух битов.
- Применяется в простом шифровании и в сумматорах.