đĄ âComputer sind aus unzĂ€hligen Schaltern aufgebautâ. Dieser Artikel zeigt dir, wie mehrere Transistoren zu verschiedene logische Schaltungen (Logik-Gatter) kombiniert werden können und wie aus diesen einfache Addierer gebaut werden können.
Die Schalter in einem Computer-Chip werden nicht mit dem Finger, sondern mit verschiedenen Ladungen ein- und ausgeschaltet. Abb.1 links zeigt einen normalen, eingeschalteten Schalter mit zwei AnschlĂŒssen. Der Pfeil zeigt an, dass Strom fliesst. In der Mitte ist ein Querschnitt durch einen fĂŒr einen Computer-Chip verwendeten Schalter, den Transistor, gezeichnet.1) Source und Drain sind die beiden AnschlĂŒsse, durch die der Strom fliesst, wenn der Schalter eingeschaltet ist. Eingeschaltet wird der gezeichnete Transistor durch eine positive Ladung am Gate-Anschluss. Die positive Gate-Ladung zieht freie Elektronen aus der N-Si-Halbleiterschicht nach oben, sodass zwischen den P-Si-Halbleitern ein ElektronenĂŒberschuss entsteht. Dadurch kann Strom durch den P-Si â N-Si â P-Si Ăbergang fliessen. Die Isolation sorgt dafĂŒr, dass kein Strom durch das Gate fliesst. Rechts ist das Symbol (Schaltbild) des Transistors gegeben.
Wird am Gate eine negative Ladung angelegt, so leitet der Transistor nicht, er sperrt (siehe Abb.2) 2). Durch die negative Gate-Ladung werden die freien Elektronen der N-Si-Schicht nach unten gedrĂŒckt. Zwischen den beiden P-Si-Schichten gibt es somit zu wenige freie Elektronen und es kann kein Strom durch den P-Si â N-Si â P-Si Ăbergang fliessen.
ein
und aus
. Wie diese ZustĂ€nde genannt werden, ist völlig willkĂŒrlich. Man könnte die ZustĂ€nde auch «Fischsuppe» und «Lampenschirm» nennen. Oder vielleicht fallen dir selbst verrĂŒckte Namen ein.0
und 1
praktisch ist. Zahlen, welche nur aus 0
und 1
bestehen, werden als BinÀrzahlen bezeichnet. Mit diesen kann ganz «normal» gezÀhlt und gerechnet werden. Das schöne dabei ist: Es können mit Transistoren Schaltungen gebaut werden, welche dank der Benennung 0
und 1
BinĂ€rzahlen miteinander verrechnen und vergleichen können.đ€ Gibt es auch «ternĂ€re» Computer?
:Ja, es ist möglich ternĂ€re Logikschaltungen, d.h. Logikschaltungen mit drei ZustĂ€nden zu bauen (''wahr'', ''falsch'' und ''unbestimmt'' oder ''-1'', ''0'' und ''1'' oder ''+'', ''0'', ''-''). Es wurden auch schon [[wpde>TernĂ€rer Computer|ternĂ€re Computer]] gebaut. Im Prinzip sind ternĂ€re Computer sogar effizienter als binĂ€re Computer. Der Grund, warum es praktisch nur binĂ€re Computer gibt, liegt darin, dass die Massenproduktion von binĂ€ren Logikgattern gĂŒnstiger ist als die von ternĂ€ren. Es ist aber möglich, dass die Computer in der Zukunft vorwiegend ternĂ€r sein werden.
đĄ Mit Transistoren lassen sich logische Schaltungen bauen, auch Logikgatter genannt. Mit Logikgattern können bereits einfache Steuerungen gebaut werden. Z.B. die Steuerung einer KĂŒhlschrankinnenbeleuchtung, einer Waschmaschine oder eines Ventilators. Was Logikgatter machen und was diese mit âLogikâ zu tun haben, erfĂ€hrst du in diesem Kapitel.
đĄ Wie die Logikgatter aus Transistoren gebaut werden können erfĂ€hrst du im Abschnitt âAufbau Logikgatterâ (ein Kapitel fĂŒr Schnelle oder Interessierte).
Unten stehend siehst du ein interaktives NOT gate (erkennbar am Symbol !
). Wenn du auf den Eingang e
klickst (auf das Quadrat âĄ), so wechselt der Eingang zwischen zwei ZustĂ€nden hin und her. Der «weisse Zustand» ist bezeichnet aus
oder 0
, der «rote Zustand» ein
oder 1
. Probiere das gleich einmal aus!
Loading â
â ïž Wie du siehst, zeigt der Ausgang a
immer das Gegenteil vom Eingang e
an. Wenn e
weiss aus
ist, dann ist a
rot ein
und umgekehrt. Daher wird diese Schaltung als NOT gate (Nicht-Gatter) bezeichnet, da sie immer das Gegenteil ausgibt oder anders gesagt den Eingang «negiert».
âïž Anwendung: Mit einem NOT gate kann die KĂŒhlschrankbeleuchtung geregelt werden. Ist die KĂŒhlschranktĂŒre zu, wird der TĂŒrschalter aktiviert (ist ein
). Dadurch wird das Licht im KĂŒhlschrankinneren ausgeschaltet (ist aus
). Wird die TĂŒr geöffnet, ist der TĂŒrschalter aus
und die Lampe im Inneren fÀngt an zu leuchten (ist ein
).
đĄ Die ZustĂ€nde der Ein- und AusgĂ€nge lassen sich auf viele Arten beschreiben, z.B. wie folgt:
Zustand | Zahl | Wahrheitswert |
---|---|---|
ein | 1 | wahr / true |
aus | 0 | falsch / false |
Die Zuordung true
und false
(zu Deuscht: «wahr» und «falsch») wird in der Logik und im Programmieren gebraucht.
e
, welcher Ausgang a
gehört, wobei 0
fĂŒr aus
und 1
fĂŒr ein
stehen. FĂŒlle die nachfolgende Wahrheitstabelle zum NOT gate aus. Loading â
đ€ Was hat das mit «Logik» zu tun? Die Aussage â4 ist eine gerade Zahlâ ist wahr (d.h. true
oder 1
). Das Gegenteil davon (die Negation) muss daher falsch sein (d.h. false
oder 0
): â4 ist keine gerade Zahlâ. Die Aussage â4 ist durch 3 teilbarâ ist falsch. Das Gegenteil davon muss daher wahr sein: â4 ist nicht durch 3 teilbarâ. Genau das beschreibt die Wahrheitstabelle.
Unten stehend siehst du ein interaktives AND gate (erkennbar am Symbol &
). Das AND gate hat zwei EingÀnge e0
und e1
und einen Ausgang a
. Der Ausgang a
ist nur dann ein
wenn beide EingÀnge e0
und e1
gleichzeitig ein
sind. Probiere es aus!
Loading â
âïž Anwendung: Mit einem AND gate kann das sichere Einschalten einer Waschmaschine garantiert werden. Einer der beiden AND-EingĂ€nge ist ein TĂŒrschalter, der nur dann ein
ist, wenn die TĂŒre geschlossen ist. Der andere Eingang ist der Start-Knopf der Waschmaschine. Nur wenn beide EingĂ€nge ein
sind, wird die Waschmaschine gestartet (Ausgang ein
), ansonsten startet die Waschmaschine nicht (Ausgang aus
).
đ€ Was hat das mit «Logik» zu tun? Betrachte folgenden Satz: âWenn es regnet und ich rausgehe, dann werde ich nass.â Die Schlussfolgerung âich werde nassâ ist nur dann wahr (d.h. true
oder 1
) wenn die Aussage âes regnetâ und gleichzetig die Aussage âich gehe rausâ wahr (d.h. true
oder 1
) sind. Ist mindestens eine dieser beiden Aussagen falsch (d.h. false
oder 0
), dann ist auch die Schlussfolgerung falsch (d.h. false
oder 0
). Genau das beschreibt die Wahrheitstabelle.
Unten stehend siehst du ein interaktives OR gate (erkennbar am Symbol â„1
). Das OR gate hat zwei EingÀnge e0
und e1
und einen Ausgang a
. Der Ausgang a
ist nur dann aus
wenn beide EingÀnge e0
und e1
gleichzeitig aus
sind. Probiere es aus!
Loading â
âïž Anwendung: Mit einem OR gate kann ein Ventilator wahlweise automatisch oder manuell eingeschaltet werden. Einer der beiden OR-EingĂ€nge ist ein Temperatursensor, der nur dann ein
ist, wenn die Temperatur einen gewissen Wert ĂŒbersteigt. Der andere Eingang ist der Start-Knopf des Ventilators. Sobald einer der beiden EingĂ€nge ein
ist (oder beide ein
sind), wird der Ventilator gestartet (Ausgang ein
). Nur wenn beide EingÀnge aus
sind, stoppt der Ventilator (Ausgang aus
).
đ€© Kapitel fĂŒr Schnelle oder Interessierte
đĄ In diesem Kapitel erfĂ€hrst du, wie aus Transistoren Logikgatter gebaut werden können. Dazu erweitern wir die Benennung der Transistor-ZustĂ€nde um +
und -
.
Zustand | Zahl | Wahrheitswert | Ladung |
---|---|---|---|
ein | 1 | wahr / true | + |
aus | 0 | falsch / false | - |
e | a |
---|---|
0 | 1 |
1 | 0 |
Wie kann ein NOT gate aus Transistoren gebaut werden? In Abb.1 ist zweimal der Bauplan eines NOT gates abgebildet. Der Eingang e
entspricht dabei dem Gate G
des Transistors.
â ïž Zur Physik: Elektronen sind negativ geladen und stossen einander ab. Elektronen wandern vom Minuspol einer Stromquelle (dort hat es ElektronenĂŒberschuss) zum Pluspol einer Stromquelle (dort hat es Elektronenmangel).
In der Abbildung links liegt eine positive Ladung +
am Eingang e
an. Der Transistor leitet und Elektronen fliessen vom negativ-geladenen Anschluss der Stromquelle (blaue horizontale Linie unten) zum positiv-geladenen Anschluss der Stromquelle (rote horizontale Linie oben). Dabei mĂŒssen die Elektronen auch durch den Widerstand R
hindurch. Da jedoch nur wenige Elektronen gleichzeitig durch R
durchfliessen können, stauen sich die Elektronen vor dem Widerstand (Àhnlich wie Autos vor dem Gotthard-Tunnel). Da Elektronen negativ geladen sind, bewirkt der Elektronenstau, dass eine negative Ladung -
am Ausgang a
entsteht.
In der Abbildung rechts liegt eine negative Ladung -
am Eingang e
an. Der Transistor sperrt, es können keine neuen Elektronen durch den Transistor nachkommen. Daher fliesen alle vorhandenen Elektronen durch den Widerstand R
zum positiv-geladenen Anschluss ab. Das Resultat ist ein Elektronenmangel vor dem Widerstand R
. Der Elektronenmangel bewirkt, dass der Ausgang a
eine positive Ladung +
annimmt.
e1 | e0 | a |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Wie kann ein AND gate aus Transistoren gebaut werden? In Abb.2 ist zweimal ein Bauplan abgebildet. Zwei Transistoren sind «aneinander gehÀngt» (in Serie geschaltet). Die beiden Gates G
stellen die beiden EingÀnge e0
und e1
dar. Wenn beide EingÀnge +
sind, dann ist der Ausgang -
(linke Abbildung). In allen anderen FĂ€llen ist der Ausgang +
(rechte Abbildung).
â ïž Das ist aber genau das Gegenteil der AND-Wahrheitstabelle! Daher wird das Logikgatter in Abb.2 als NAND gate (Nicht-Und-Gatter) bezeichnet. Um ein echtes AND gate zu erhalten, wird einfach an den Ausgang a
des NAND gates ein NOT gate angehÀngt. Dies ist in Abb.3 dargestellt.
e0
positiv +
und e1
negativ -
, dann ist a
positiv +
. Wenn e0
negativ -
und e1
negativ -
, dann ist a
positiv +
. ErklĂ€re im unten stehenden Textfeld warum das so ist. Loading â Antwortzugang e1 | e0 | a |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Wie kann ein OR gate aus Transistoren gebaut werden? In Abb.4 ist zweimal ein Bauplan abgebildet. Zwei Transistoren sind so geschaltet, dass es zwei verschiedene Wege vom negativ-geladenen Anschluss der Stromquelle zum positiv-geladenen Anschluss der Stromquelle gibt (parallel geschaltet). Die beiden Gates G
stellen die beiden EingÀnge e0
und e1
dar. Wenn beide EingÀnge -
sind, dann ist der Ausgang +
(linke Abbildung). In allen anderen FĂ€llen ist der Ausgang -
(rechte Abbildung).
â ïž Das ist aber genau das Gegenteil der OR-Wahrheitstabelle! Daher wird das Logikgatter in Abb.4 als NOR gate (Nicht-Oder-Gatter) bezeichnet. Um ein echtes OR gate zu erhalten, wird einfach an den Ausgang a
des NOR gates ein NOT gate angehÀngt. Dies ist in Abb.5 dargestellt.
e0
negativ -
und e1
positiv +
, dann ist a
negativ -
. Wenn e0
positiv +
und e1
positiv +
, dann ist a
negativ -
. ErklĂ€re im unten stehenden Textfeld warum das so ist. Loading â Antwortzugang Bereits aus den bis hierhin kennengelernten Logik-Gattern lĂ€sst sich Addierer fĂŒr zwei beliebig lange BinĂ€rzahlen bauen. Wir beginnen dabei mit einem einfachen Addierer, welcher zwei einzelne Bit addieren kann (der sogenannte «Halbaddierer») und betrachten danach komplexere Addierer bis hin zum Addierwerk. FĂŒr Interessierte und Schnelle gibt es am Ende noch einen Einblick in die arithmetische-logische Einheit, ein umfassenderes Rechenwerk, dass alle Grundrechenoperationen beherrscht und Zahlen vergleichen kann.
Unten stehend siehst du einen interaktiven Halbaddierer (erkennbar am Symbol HA
). Der Halbaddierer addiert zwei einzlene Bits x
und y
zu einer zweistelligen BinÀrzahl bestehend aus den beiden Stellen s
und c
. Wenn x
den Wert 1
und y
den Wert 1
haben, so wird die zweistellige BinÀrzahl cs
zu 10
. Probiere es aus!
Loading â
đĄ Beim schriftlichen Addieren zweier Zahlen werden die aktuellen Stellen der zu addierenden Zahlen und ein allfĂ€lliger Ăbertrag miteinander addiert. Der Halbaddierer kann zwei Stellen x
und y
addieren, er hat aber keinen Eingang fĂŒr einen Ăbertrag und kann somit keinen Ăbertrag einbeziehen. Daher der Name «Halb». Der Ausgang des Halbaddierers beinhaltet jedoch einen Ăbertrag fĂŒr allfĂ€llige weitere Additionen. Der Ausgang s
bezeichnet die aktuelle Stelle der Addition, der Ausgang c
bezeichnet den Ăbertrag (engl. carry).
Loading â
Unten stehend siehst du einen interaktiven Volladdierer (erkennbar am Symbol VA
). Der Volladdierer addiert drei einzlene Bits x
, y
und c
zu einer zweistelligen BinÀrzahl bestehend aus den beiden Stellen s
und c
. Wenn x
, y
und c
alle den Wert 1
haben, so wird die zweistellige BinÀrzahl cs
zu 11
. Probiere es aus!
Loading â
đĄ Beim schriftlichen Addieren zweier Zahlen werden die aktuellen Stellen der zu addierenden Zahlen und ein allfĂ€lliger Ăbertrag miteinander addiert. Der Volladdierer kann im Gegensatz zum Halbaddierer zwei Stellen x
und y
und einen Ăbertrag c
addieren. Daher der Name «Voll». Der Ausgang s
des Volladdierers bezeichnet die aktuelle Stelle der Addition, der Ausgang c
bezeichnet den Ăbertrag (engl. carry).
Ein Volladdierer kann mit zwei Halbaddierern und einem OR gate realisiert werden. Loading â Werden die Halbaddierer durch die NOT, AND und OR gates ersetzt, aus welchen sie bestehen, dann ergibt sich folgende Schaltung. Loading â
Das Ziel besteht darin, folgende schriftliche Addition zweier dreistelliger BinÀrzahlen x
und y
, bestehend aus den drei Stellen xâ
xâ
xâ
und yâ
yâ
yâ
, zur vierstelligen BinÀrzahl s
, bestehend aus den vier Stellen sâ
sâ
sâ
sâ
, gemÀss folgender Beispielrechnung zu addieren.
Stelle | 3 | 2 | 1 | 0 |
---|---|---|---|---|
BinĂ€rzahl x , d.h. xâ xâ xâ | 1 | 1 | 1 |
|
+ BinĂ€rzahl y , d.h. yâ yâ yâ | 0 | 1 | 1 |
|
+ Ăbertrag c | 1 | 1 | 1 | |
= Summe s , d.h. sâ sâ sâ sâ | 1 | 0 | 1 | 0 |
Die nachfolgende Simulation vermag genau dies zu tun. Dabei werden in der Simulation immer die entsprechenden Stellen zusammengenommen, d.h. die Reihenfolge in der Simulation ist von oben nach unten xâ
yâ
xâ
yâ
xâ
yâ
.
Loading â
Variante mit zusÀtzlicher Visualisierung der EingÀnge
Um die Stelle sâ
auszurechnen, genĂŒgt es die beiden Bit xâ
und yâ
zu addieren. Wir haben hier noch keinen Ăbertrag aus einer anderen Rechnung zu berĂŒcksichtigen. Daher genĂŒgt ein Halbaddierer um sâ
zu berechnen. Diese Rechnung selber kann jedoch in einen Ăbertrag c
resultieren, welcher der Halbaddierer ebenfalls ausgibt.
Um die Stelle sâ
zu berechnen mĂŒssen die beiden Bit xâ
und yâ
und der Ăbertrag c
aus der sâ
-Berechnung addiert werden. HierfĂŒr muss ein Volladdierer verwendet werden. Auch dieser gibt einen Ăbertrag c
fĂŒr die nĂ€chste Berechnung aus.
Die Stelle sâ
berechnet sich per Volladdierer aus xâ
, yâ
und dem c
aus der sâ
-Berechnung und resultiert ebenso in einem weiteren c
.
Obwohl nun alle drei Stellen beider Zahlen x und y verrechnet wurden, muss noch der Ăbertrag c
aus der sâ
-Berechnung berĂŒcksichtigt werden. DafĂŒr wird dieses c
einfach als sâ
, d.h. als vierte Stelle der Zahl s
ausgegeben.
Loading â
đ€© Kapitel fĂŒr Schnelle oder Interessierte
Die arithmetisch-logischen Einheit (ALU) ist ein Rechenwerk, welche nicht nur addieren, sondern auch subtrahieren, multiplizieren, dividieren, zwei Zahlen vergleichen und logische Operationen wie AND, OR, NOT anwenden kann. Sie ist aus mehreren Addierern und Logikgattern aufgebaut.
FĂŒr die Subtraktion wird die abzuziehende Zahl in die binĂ€re Entsprechung einer negativen Zahl, das Zweierkomplement, verwandelt und zu der ersten Zahl hinzu addiert (fĂŒr Detail siehe Rechnen mit dem Zweierkomplement). Wie beim schriftlichen Multiplizieren und Dividieren von Dezimalzahlen kann auch das Multiplizieren und Dividieren auf das Addieren und Subtrahieren von Zahlen zurĂŒckgefĂŒhrt werden. Somit sind die vier Grundoperationen mit einem Addierer umsetzbar.
Es können nicht nur ganze Zahlen verrechnet werden, sondern auch Gleitkommazahlen. Um eine Gleitkommazahl binĂ€r darstellen zu können, wird diese in Exponentialschreibweise geschrieben und das Vorzeichnen mit einem Bit, der Exponent mit einer vorher definierten Anzahl Bit und die Mantisse mit einer vorher definierten Anzahl Bit so genau als möglich dargestellt (fĂŒr Details siehe Gleitkommadarstellung / Gleitkommazahlen und Umrechnen einer Gleitkommazahl in die Gleitkommadarstellung). Aufgrund der vorgegebenen endlichen Anzahl Bit ergibt sich eine eingeschrĂ€nkte Genauigkeit der Darstellung von Gleitkommazahlen. Somit können beim binĂ€ren Verrechnen von Gleitkommazahlen Fehler entstehen.