Практическое применение булевой арифметики. Часть первая - Основы булевой арифметики
Сегодня мы рассмотрим основы булевой арифметики и практическое её применение в С++.
Булева алгебра – раздел математики, рассматривающий логику с математической точки зрения.
Во многом основана на трудах Джорджа Буля (1815-1864). Мы будем рассматривать логические операции над числами 0 и 1. Часто эти операции называют Булевой арифметикой, так как над числами выполняются элементарные действия.
Давайте рассмотрим виды операций, которые мы можем совершать с 0 и 1. Для наглядности мы будем рассматривать их на примере простой электрической схемы с выключателем и лампочкой.
Операция сложения или операция ИЛИ
В программировании операция логического сложения чаще называется операцией ИЛИ (OR).
Логическое сложение подчиняется определенным правилам:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 1
Рассмотрим схему:
Это и есть аналог операции логического сложения
Мы можем записать её несколькими способами, от этого смысл не изменится.
0 ИЛИ 0
0 OR 0
0 | 0
Если оба выключателя подняты, то ток не течет по цепи и лампочка не горит.
Рассмотрим две других схемы:
Если один из выключателей опущен, то лампочка будет гореть.
Запишем как:
0 ИЛИ 1
0 OR 1
0 | 1
Или:
1 ИЛИ 0
1 OR 0
1 | 0
Результат операции будет одинаков = 1.
Рассмотрим следующую схему:
Если все выключатели опущены результат будет = 1
Запишем как
1 ИЛИ 1
1 OR 1
1 | 1
Операция умножения или операция И
В программировании операция логического умножения чаще называется операцией И (AND).
Логическое умножение подчиняется определенным правилам:
0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1
Рассмотрим схему:
Все выключатели подключены последовательно. Не важно какой из них поднят, при любом количестве поднятых выключателей ток по цепи протекать не будет, и лампочка не загорится.
Мы можем записать эти операции как:
0 И 0
0 AND 0
0 & 0
0 И 1
0 AND 1
0 & 1
1 И 0
1 AND 0
1 & 0
Результат всегда будет = 0
Рассмотрим схему:
Здесь единственный случай, когда лампочка горит, так как оба выключателя опущены:
1 И 1
1 AND 1
1 & 1
Операция НЕ
Здесь мы не будем рассматривать схему, всё очень просто, 0 превращается в 1, а 1 превращается в 0
1 = 0
0 = 1
Записывается она следующим образом:
НЕ 0
NOT 0
!0
Результатом операции всегда будет противоположный элемент.
Мы рассмотрели основные битовые операции. Еще существует исключающее ИЛИ (XOR), но его мы уже рассмотрим в следующих частях на конкретных примерах.
Заключение
Сегодня мы рассмотрели на примерах простой электрической схемы основы булевой арифметики - операции:
И
ИЛИ
НЕ
В следующей части мы рассмотрим двоичную систему счисления.
Добавить комментарий