Boolean logic & truth tables · Булева логика и таблицы истинности
Boolean values
- A Boolean value is either
TrueorFalse. - A condition such as
age >= 18produces a Boolean. - Computers build everything from these two values.
Логические значения
- Логическое значение может быть либо
True, либоFalse. - Условие, например
age >= 18, возвращает логическое значение. - Компьютеры строят всё из этих двух значений.
AND, OR, NOT
andis True only when both sides are True.oris True when at least one side is True.notflips True to False, and False to True.
AND, OR, NOT
andистинно только тогда, когда обе части истинны.orистинно, когда хотя бы одна часть истинна.notинвертирует True в False, а False в True.
print(True and False) # False
print(True or False) # True
print(not True) # False
A truth table
- A truth table lists every possible input and its output.
- Two inputs (A, B) give four rows: 00, 01, 10, 11.
Таблица истинности
- Таблица истинности перечисляет все возможные входы и их выходы.
- Два входа (A, B) дают четыре строки: 00, 01, 10, 11.
Truth table — try every input · Таблица истинности — попробуйте все входные данные
and is true only when both are true; or when at least one is. · and истинно только тогда, когда оба условия истинны; or истинно, когда хотя бы одно из них истинно.
Build a truth table with loops
- A nested loop over
False, Truewalks through all the combinations.
Построение таблицы истинности с помощью циклов
- Вложенный цикл по
False, Trueперебирает все комбинации.
for a in [False, True]:
for b in [False, True]:
print(a, b, a and b)
More gates: NAND, NOR, XOR
- NAND is
not (a and b); NOR isnot (a or b). - XOR is True when the inputs are different:
a != b.
Дополнительные вентили: NAND, NOR, XOR
- NAND — это
not (a and b); NOR — этоnot (a or b). - XOR истинно, когда входы различны:
a != b.
In the exam: logic gates
- Know the gates NOT, AND, OR, NAND, NOR, XOR and their truth tables.
На экзамене: логические вентили
- Знать вентили NOT, AND, OR, NAND, NOR, XOR и их таблицы истинности.
X ← A AND B
Y ← NOT (A OR B)
Common mistakes
ANDis true only when both inputs are true;ORis true when at least one is.NOTflips the value.- A truth table lists every combination of the inputs.
Распространенные ошибки
ANDистинно только тогда, когда оба входа истинны;ORистинно, когда хотя бы один вход истинен.NOTинвертирует значение.- Таблица истинности перечисляет все комбинации входов.
Now you try
- Each function returns the gate's Boolean output.
- Press Check answer to test your code.
Теперь попробуйте сами
- Каждая функция возвращает логический выход вентиля.
- Нажмите Check answer (Проверить ответ), чтобы протестировать свой код.
Write AND_gate(a, b) that returns True only when both inputs are True. · Напишите AND_gate(a, b), которая возвращает True только тогда, когда оба входа равны True.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
Write XOR_gate(a, b) that returns True when the two inputs are different, and False when they are the same. · Напишите XOR_gate(a, b), которая возвращает True, когда два входа различны, и False, когда они одинаковы.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
Write NAND_gate(a, b) that gives the opposite of AND: True unless both inputs are True. Use not (a and b). · Напишите NAND_gate(a, b), которая дает противоположное значению AND: True, если не оба входа равны True. Используйте not (a and b).
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.