Wie verwendet man Halb- und Volladdierer zusammen?

Ich versuche, mir das Konzept der (Halb- und Voll-)Addierer von Wikipedia beizubringen , und bin etwas verwirrt.

Muss ich Halbaddierer und Volladdierer zusammen verwenden, um eine Multi-Bit-Addition durchzuführen? Wie kombiniere ich sie miteinander?

Antworten (2)

Für das erste Bit wird ein Halbaddierer verwendet, da kein Übertrag vorhanden ist. Für das zweite und die folgenden Bits benötigen Sie Volladdierer.

Halbaddierer haben im Vergleich zu Volladdierern kein Carry-Eingangsbit; Sie sind also nicht notwendig, werden aber verwendet, um Hardware zu sparen, wenn nur zwei Bits hinzugefügt werden müssen.

Ein Beispiel ist die Summe von zwei Bytes: Die niedrigstwertigen Bits benötigen normalerweise keinen Übertrag, können also mit einem Halbaddierer (oder einem Volladdierer mit Cin = 0) hinzugefügt werden.

Ein weiteres Beispiel ist der Multiplikator: Hier summieren Sie die Teilprodukte, aber das letzte Bit (das höchstwertige) von jedem muss nur zum Übertrag der vorherigen Summe addiert werden, sodass diese Operation von einem Halbaddierer durchgeführt werden kann.

Beachten Sie, dass in mehreren Fällen die Einsparung von Fläche den zusätzlichen Aufwand nicht wert ist, einen Halbaddierer speziell zu entwerfen; Daher wird stattdessen ein Volladdierer mit geerdetem (oder bei 1 gebundenem Übertrag, wenn mit invertierter Logik gearbeitet wird) verwendet.

Obwohl man einen Halbaddierer für das unterste Bit einer Übertragskette verwenden kann, findet eine häufigere Verwendung am oberen Ende statt, beispielsweise wenn man eine Schaltung benötigt, um eine 8-Bit-Zahl zu einer 16-Bit-Zahl zu addieren. Wenn man in der Lage sein muss, zu addieren oder zu subtrahieren, kann man zwei XORs und ein AND für jedes Bit verwenden; etwas teurer als ein Halbaddierer, aber immer noch billiger als ein Volladdierer.
Ja, im Grunde ist das Konzept: zwei Eingänge - Halbaddierer, drei Eingänge - Volladdierer