Dies ist eine alte Version des Dokuments!
Halbaddierer
Für die ersten Überlegungen vereinfachen wir unser Additionsproblem auf einstellige Binärzahlen:
Wir geben zwei 1-Bitzahlen zur Addition ein und erhalten die Summe – oder einen Übertrag (Carry), wenn die Summe 2 ist.
Wir können als Tabelle aufschreiben, was unsere Schaltung tun soll:
x0 | y0 | s0 | c |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
Hieraus kann man zwei logische Funktionen ablesen, eine für den Übertrag und eine für die Summe:
- Summe: $s_0 = (x_0 \lor y_0)\land \lnot(x_0 \land y_0)$
- Übertrag: $c= x_0 \land y_0$
Die Summe s0 ist also die XOR Verknüpfung von x0 und y0, der Übertrag c die UND Verknüpfung von x0 und y0
Mit diesen Erkenntnissen können wir nun einen Halbaddierer konstruieren. Ein Halbaddierer kann zwei 1-Bit Zahlen korrekt addieren, berücksichtigt jedoch nicht, ob bei der Addition ein Übertrag aus einem vorigen Schritt zu beachten ist.