Logikgatter einfach erklärt: Die Bausteine digitaler Schaltungen
Eine Alarmanlage soll nur dann die Sirene auslösen, wenn die Anlage scharf geschaltet ist und ein Türkontakt meldet, dass die Tür geöffnet wurde. Zwei Signale gehen hinein, ein Signal kommt heraus, und dazwischen steckt eine feste Regel. Genau so arbeitet ein Logikgatter.
Im Beitrag Digitaltechnik verstehen haben wir gesehen, dass ein digitales Signal entweder 0 oder 1 ist. Logikgatter sind die Bausteine, die solche Signale zu Entscheidungen verknüpfen. Aus sehr vielen davon besteht ein Prozessor.
Was ist ein Logikgatter?
Ein Logikgatter, kurz Gatter, ist eine Schaltung mit einem oder mehreren Eingängen und einem Ausgang. Eingänge und Ausgang kennen nur zwei Zustände: 0 (Low) und 1 (High). Welcher Wert am Ausgang liegt, bestimmt eine feste Regel, die vom Gattertyp abhängt.
Ein Gatter hat kein Gedächtnis. Der Ausgang hängt nur von dem ab, was gerade an den Eingängen liegt. Ändern sich die Eingänge, ändert sich nach einer winzigen Verzögerung auch der Ausgang. Schaltungen, die nur aus Gattern bestehen, heißen deshalb Schaltnetze.
Woraus besteht ein Gatter?
Im Inneren arbeiten Transistoren. Ein Transistor wirkt wie ein elektrisch gesteuerter Schalter: Liegt am Steuereingang eine ausreichende Spannung, leitet er, sonst sperrt er. Aus mehreren Transistoren lässt sich jede der folgenden Verknüpfungen bauen. Moderne Prozessoren enthalten viele Milliarden Transistoren, die zusammen eine riesige Zahl von Gattern bilden.
Zum Verständnis reicht eine Schalter-Analogie, die du nachbauen könntest: Eine Lampe hängt an einer Batterie, dazwischen sitzen Schalter.
- Zwei Schalter in Reihe: Die Lampe brennt nur, wenn Schalter A und Schalter B geschlossen sind. Das ist die UND-Verknüpfung.
- Zwei Schalter parallel: Die Lampe brennt, wenn Schalter A oder Schalter B geschlossen ist, auch wenn beide es sind. Das ist die ODER-Verknüpfung.
- Ein Öffner: Er leitet, solange er nicht betätigt wird, und unterbricht, wenn er betätigt wird. Das ist die NICHT-Verknüpfung.
Die wichtigsten Gatter im Überblick
Du musst sieben Gatter kennen. Die ersten drei sind die Grundverknüpfungen, die übrigen ergeben sich daraus.
| Gatter | Englisch | Ausgang ist 1, wenn … |
|---|---|---|
| UND | AND | alle Eingänge 1 sind |
| ODER | OR | mindestens ein Eingang 1 ist |
| NICHT | NOT | der Eingang 0 ist (Umkehrung) |
| NAND | NOT AND | nicht alle Eingänge 1 sind (Umkehrung von UND) |
| NOR | NOT OR | alle Eingänge 0 sind (Umkehrung von ODER) |
| XOR | Exclusive OR | die Eingänge verschieden sind (Antivalenz) |
| XNOR | Exclusive NOR | die Eingänge gleich sind (Äquivalenz) |
Die genauen Wahrheitstabellen der Grundgatter und viele Beispiele folgen im Beitrag UND, ODER, NICHT. Hier siehst du erst einmal alle Gatter mit zwei Eingängen A und B nebeneinander:
| A | B | UND | ODER | NAND | NOR | XOR | XNOR |
|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 |
Das NICHT-Gatter hat nur einen Eingang: Aus 0 wird 1, aus 1 wird 0.
Zwei Dinge fallen auf, wenn du die Tabelle liest. Die Spalten für NAND und NOR sind genau das Gegenteil von UND und ODER. Und XOR unterscheidet sich von ODER nur in der letzten Zeile: Wenn beide Eingänge 1 sind, ist das ODER-Ergebnis 1, das XOR-Ergebnis aber 0.
Die Schaltzeichen
In Schaltplänen werden Gatter nicht ausgeschrieben, sondern durch Symbole dargestellt. Es gibt zwei Formen. Nach der europäischen Norm IEC 60617 sind es Rechtecke mit einer Aufschrift, in der amerikanischen Darstellung haben die Gatter charakteristische Formen. In deutschen Lehrplänen und Prüfungen begegnen dir meist die rechteckigen Symbole, in Datenblättern und Fachliteratur oft beide.
| Gatter | Rechteck-Symbol (IEC) | Besonderheit |
|---|---|---|
| UND | Rechteck mit „&“ | Kennzeichen für die UND-Verknüpfung |
| ODER | Rechteck mit „≥1“ | Ausgang 1, wenn die Summe der Eingänge mindestens 1 ist |
| NICHT | Rechteck mit „1“ und Kreis am Ausgang | Der Kreis steht für die Negation |
| NAND | Wie UND, mit Kreis am Ausgang | Kreis kehrt das Ergebnis um |
| NOR | Wie ODER, mit Kreis am Ausgang | Kreis kehrt das Ergebnis um |
| XOR | Rechteck mit „=1“ | Ausgang 1, wenn genau ein Eingang 1 ist |
Der kleine Kreis am Ausgang ist die wichtigste Merkregel: Er bedeutet immer „invertiert“. Wo du ihn siehst, wird das Ergebnis umgekehrt.
NAND und NOR: Die Universalgatter
Eine Besonderheit: Mit nur einem einzigen Gattertyp lassen sich alle anderen nachbauen, wenn es NAND oder NOR ist. Deshalb heißen sie Universalgatter. Das ist für die Chipherstellung praktisch, weil man mit einem Grundbaustein auskommt.
Ein Beispiel mit NAND: Schaltest du beide Eingänge zusammen, wird daraus ein NICHT-Gatter.
NAND(A, A):
A = 0 → NAND(0, 0) = 1
A = 1 → NAND(1, 1) = 0
Der Ausgang ist immer das Gegenteil des Eingangs, genau wie beim NICHT. Hängst du hinter ein NAND noch so ein NICHT, ergibt sich die UND-Verknüpfung, denn das Umkehren der Umkehrung gibt das Original zurück.
XOR: Das Gatter für die Addition
Das XOR-Gatter hat in der Praxis eine eigene Aufgabe: Es bildet beim binären Addieren das Ergebnisbit. Im Beitrag Binärsystem verstehen hast du gesehen, dass 1 + 1 = 10 ergibt: eine 0 mit Übertrag 1. Schauen wir uns die Addition zweier einzelner Bits an:
| A | B | Summe (S) | Übertrag (C) |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
Vergleiche die Spalte „Summe“ mit der XOR-Spalte aus der Tabelle oben: Sie ist identisch. Und die Spalte „Übertrag“ entspricht der UND-Spalte. Eine Schaltung aus einem XOR-Gatter und einem UND-Gatter addiert also zwei Bits und liefert Summe und Übertrag. Sie heißt Halbaddierer.
S = A XOR B
C = A AND B
Setzt du mehrere solche Schaltungen hintereinander und verbindest die Überträge, erhältst du ein Addierwerk, das ganze Binärzahlen addiert. Genau so entsteht die Rechenfähigkeit eines Prozessors aus einfachen Gattern.
Wo dir Gatter im IT-Alltag begegnen
In der Programmierung
Die gleichen Verknüpfungen findest du in jeder Programmiersprache. In Python sehen sie so aus:
a = True
b = False
print(a and b) # UND
print(a or b) # ODER
print(not a) # NICHT
print(a != b) # XOR (ungleich)
Die Ausgabe lautet nacheinander False, True, False und True. Mit Wahrheitswerten sind „und“, „oder“ und „nicht“ im Code dieselben Gatter, die du hier kennenlernst, nur in Software statt in Hardware. In anderen Sprachen schreibt man sie als &&, || und !.
Im Netzwerk: IP-Adresse und Netzmaske
Beim Subnetting spielt die UND-Verknüpfung eine zentrale Rolle. Ein Gerät berechnet seine Netzadresse, indem es seine IP-Adresse bitweise mit der Netzmaske UND-verknüpft. Wo die Maske eine 1 hat, bleibt das Bit der Adresse erhalten, wo sie eine 0 hat, wird das Bit zu 0. Mit der Adresse 192.168.10.77 und der Maske 255.255.255.0 passiert das:
192 AND 255 = 192
168 AND 255 = 168
10 AND 255 = 10
77 AND 0 = 0
Netzadresse: 192.168.10.0
Warum das so funktioniert, behandeln wir ausführlich in der Netzwerk-Reihe. Du siehst aber schon jetzt, dass ein einfaches UND-Gatter dahintersteckt.
Im Haus: Die Wechselschaltung
Das Flurlicht, das du von zwei Schaltern an beiden Enden des Flurs bedienen kannst, ist ein XOR. Egal, welchen Schalter du umlegst, der Zustand der Lampe wechselt. Legst du fest, welche Stellung der Schalter als 0 und welche als 1 gilt, brennt die Lampe zum Beispiel dann, wenn die Stellungen unterschiedlich sind. Das entspricht genau der XOR-Tabelle. Je nach Verdrahtung und Benennung kann es auch die Umkehrung davon sein, also ein XNOR.
Typische Fehler
- ODER im Alltagsverständnis. „Willst du Kaffee oder Tee?“ meint meist eines von beidem. Das logische ODER ist auch bei beiden wahr. Das „Entweder-oder“ entspricht dem XOR.
- Kreis am Ausgang übersehen. Ein UND mit Kreis ist ein NAND, kein UND.
- Eingänge offen lassen. Ein nicht beschalteter Eingang hat keinen sicheren Pegel. Er kann je nach Störungen mal als 0, mal als 1 gelesen werden. Legst du ihn fest auf 0 oder 1, etwa über einen Widerstand nach Masse oder Versorgungsspannung, ist der Zustand sicher.
- Ausgang und Eingang verwechseln. Ein Gatter hat eine klare Richtung. Signale laufen von links nach rechts, vom Eingang zum Ausgang.
- Laufzeiten vergessen. Ein reales Gatter reagiert nicht augenblicklich. Es braucht eine sehr kurze Zeit, die Gatterlaufzeit. In schnellen Schaltungen kann das eine Rolle spielen.
Zum Üben
- Welchen Wert hat der Ausgang eines UND-Gatters bei A = 1 und B = 0?
- Welchen Wert hat ein NOR-Gatter bei A = 0 und B = 0?
- Was liefert ein XOR-Gatter bei A = 1 und B = 1?
- Was liefert ein NAND-Gatter bei A = 1 und B = 1?
- Wie baust du aus einem NAND-Gatter ein NICHT-Gatter?
- Welches Gatter beschreibt eine Wechselschaltung mit zwei Schaltern?
- Was liefert ein Halbaddierer bei A = 1 und B = 1 für Summe und Übertrag?
Lösungen: (1) 0, denn bei UND müssen alle Eingänge 1 sein. (2) 1, denn bei NOR muss kein Eingang 1 sein. (3) 0, weil die Eingänge gleich sind. (4) 0, denn UND wäre 1, und NAND kehrt um. (5) Beide Eingänge zusammenschalten. (6) XOR. (7) Summe 0, Übertrag 1, also das Ergebnis 10 in Binär.
Das solltest du dir merken
- Ein Logikgatter verknüpft binäre Eingänge nach einer festen Regel zu einem Ausgang und hat kein Gedächtnis.
- UND ist 1, wenn alle Eingänge 1 sind. ODER ist 1, wenn mindestens einer 1 ist. NICHT kehrt um.
- NAND und NOR sind die Umkehrungen von UND und ODER. Der Kreis am Ausgang zeigt die Umkehrung.
- XOR ist 1, wenn die Eingänge verschieden sind. Es bildet das Summenbit beim Addieren.
- NAND und NOR sind Universalgatter: Mit ihnen lassen sich alle anderen Gatter bauen.
- Der Halbaddierer besteht aus XOR und UND.
Als Nächstes schauen wir uns die drei Grundverknüpfungen genauer an, mit Beispielen und Schaltungen: UND, ODER, NICHT. Später folgen die Wertetabellen, mit denen du auch komplexere Schaltungen prüfst.


