Tablica prawdy AND
koniunkcja, „i”
| A | B | A AND B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Wynik 1 tylko wtedy, gdy oba wejścia są równe 1.
A ∧ BPython: A and B
Interaktywny symulator bramek AND, OR, NOT, XOR, NAND, NOR i XNOR. Przełączaj wejścia A i B, a zobaczysz, jak prąd płynie przez bramkę i kiedy zapala się żarówka. Tak w środku działa każdy procesor.
Kliknij przełącznik albo naciśnij A i B na klawiaturze. Klawisze 1–7 zmieniają bramkę.
Kliknij wiersz, żeby ustawić te wejścia w obwodzie.
Każda kolumna to inna bramka. Wiersz z Twoimi wejściami jest podświetlony. Kliknij wiersz albo nagłówek kolumny.
Jaki będzie wynik?
Poniżej znajdziesz kompletne tablice prawdy siedmiu podstawowych bramek logicznych. Każda pokazuje wynik dla wszystkich kombinacji wejść A i B, a pod nią podano regułę, zapis matematyczny i odpowiednik w Pythonie.
koniunkcja, „i”
| A | B | A AND B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Wynik 1 tylko wtedy, gdy oba wejścia są równe 1.
A ∧ BPython: A and B
alternatywa, „lub”
| A | B | A OR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
Wynik 1, gdy co najmniej jedno wejście jest równe 1.
A ∨ BPython: A or B
negacja, „nie”
| A | NOT A |
|---|---|
| 0 | 1 |
| 1 | 0 |
Odwraca wartość: 0 zmienia w 1, a 1 w 0.
¬APython: not A
alternatywa wykluczająca, „albo”
| A | B | A XOR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Wynik 1, gdy wejścia są różne.
A ⊕ BPython: A != B
negacja koniunkcji, „nie i”
| A | B | A NAND B |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Wynik 0 tylko wtedy, gdy oba wejścia są równe 1.
¬(A ∧ B)Python: not (A and B)
negacja alternatywy, „ani”
| A | B | A NOR B |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 0 |
Wynik 1 tylko wtedy, gdy oba wejścia są równe 0.
¬(A ∨ B)Python: not (A or B)
równoważność
| A | B | A XNOR B |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Wynik 1, gdy wejścia są takie same.
A ↔ BPython: A == B
Tablica prawdy to tabela, która pokazuje wynik działania logicznego dla wszystkich możliwych wartości wejść. W kolumnach po lewej stronie wpisuje się wejścia (A, B), a w ostatniej kolumnie wynik (Y). Dzięki temu w jednym miejscu widać, jak zachowa się bramka w każdej sytuacji.
Każdy wiersz czytamy jak zdanie. Wiersz 1 · 0 · 0 w tablicy AND znaczy: „jeśli A jest prawdą, a B fałszem, to A AND B jest fałszem”. Wiersze zapisuje się zwykle po kolei jak liczby binarne: 00, 01, 10, 11.
Każde wejście ma dwie możliwe wartości, więc dla n wejść jest 2n wierszy. Bramka NOT ma 2 wiersze, bramki dwuwejściowe 4 wiersze, a układ z trzema wejściami 8 wierszy.
Bramka logiczna to układ elektroniczny zbudowany z tranzystorów. Brak napięcia oznacza 0, a obecność napięcia 1. Procesor w telefonie zawiera miliardy takich bramek. Łącząc je, tworzy się sumatory, rejestry i pamięć.
Zasady działania bramek opisał matematycznie George Boole w 1854 roku, długo przed powstaniem komputerów. W 1937 roku Claude Shannon pokazał, że algebrę Boole'a da się zbudować z przekaźników elektrycznych. To był początek elektroniki cyfrowej.
Dwa ważne prawa łączą bramki ze sobą: NOT (A AND B) = (NOT A) OR (NOT B) oraz NOT (A OR B) = (NOT A) AND (NOT B). Sprawdź je w symulatorze, porównując kolumny NAND i NOR w tabeli „Wszystkie bramki naraz”.
Te same tablice prawdy działają w każdym warunku w programie. Gra wpuści gracza na serwer tylko wtedy, gdy oba warunki są prawdziwe, czyli dokładnie jak bramka AND:
ma_konto = True
ma_internet = False
if ma_konto and ma_internet: # AND
print("Zaczynamy grę!")
else:
print("Brak połączenia")
Tablica prawdy to tabela, która pokazuje wynik działania logicznego dla wszystkich możliwych kombinacji wejść. Każdy wiersz to jedna kombinacja wartości 0 i 1, a ostatnia kolumna to wynik.
Dla n wejść tablica ma 2n wierszy. Bramka z jednym wejściem (NOT) ma 2 wiersze, z dwoma wejściami 4 wiersze, z trzema 8, a z czterema 16.
Obie dają 1, gdy dokładnie jedno wejście jest równe 1. Różnią się tylko w wierszu 1 i 1: OR daje wtedy 1, a XOR daje 0. XOR to „albo jedno, albo drugie, ale nie oba”.
0 oznacza fałsz, czyli brak napięcia w przewodzie. 1 oznacza prawdę, czyli obecność napięcia. W logice matematycznej zapisuje się je też jako F i P (lub F i T).
Bo z samych bramek NAND da się zbudować każdą inną bramkę: NOT, AND, OR i XOR, a w efekcie cały procesor. Tę samą własność ma bramka NOR.
Dla wartości True i False najprościej użyć porównania a != b. Dla liczb 0 i 1 działa operator bitowy a ^ b.
Z bramek logicznych zbudowane są procesory, pamięci i wszystkie układy cyfrowe. Na przykład z bramek XOR i AND powstaje sumator, czyli układ, który dodaje liczby binarne.