Was ist ein Halb/Volladdierer?

4 Antworten

Ein Halbadder ist ein Bauteil aus der Digitaltechnik, welches eine Addition zweier Operanden vollzieht.

Ein Volladder ist eine Kombination aus mehreren Halbaddern mit einem Überlauf (das sogenannte "Carry-Flag")

In diesem Beitrag nutze ich folgende Bezeichner:
A = Input-Bit 1
B = Input-Bit 2
c1 = Carry-out-Bit (Übertrag)
c0 = Carry-in-Bit

Ein Halbaddierer addiert zwei binäre Bits (A und B) und gibt das Ergebnis an zwei Ausgangsbits (s und c1) weiter mit

s = A XOR B berechnet (exklusives oder)
c1 = A und B

Dadurch ergibt sich folgende Wahrheitstabelle:

A | B || c1 | s
0 | 0 || 0 | 0
0 | 1 || 0 | 1
1 | 0 || 0 | 1
1 | 1 || 1 | 0

Ein Volladdierer hat zu den beiden Eingangbits A und B auch noch einen Eingang für c0 mit

s  = A XOR B XOR c0
c = (A UND B) ODER ((A XOR B) UND c0)

Somit ergibt sich folgende Wahrheitstabelle für den Volladdierer

A | B | c0 || c1 | s
0 | 0 | 0 || 0 | 0
0 | 0 | 1 || 0 | 1
0 | 1 | 0 || 0 | 1
0 | 1 | 1 || 1 | 0
1 | 0 | 0 || 0 | 1
1 | 0 | 1 || 1 | 0
1 | 1 | 0 || 1 | 0
1 | 1 | 1 || 1 | 1


Ein Volladdierer hat einen Überlauf, der Ausgang hat eine Stelle mehr als die Eingänge.


xxxcyberxxx  02.04.2017, 19:52

Sowohl Halbaddierer als auch Volladdierer haben einen Ausgang für das Carry-out-Bit. Nur der Volladdierer hat dabei auch einen Eingang für das Carry-in-Bit

0
manni94  02.04.2017, 16:23

Ich würde carry_out als Übertrag und nicht als Überlauf bezeichnen. Ein Überlauf läge dann vor, wenn ein Rechenergebnis die Kapazität eines Rechenwerks überschreiten würde.

1
Jaridien  02.04.2017, 16:27
@manni94

Es ist dasselbe gemeint. Aber meine Antwort war nicht ganz korrekt, ein VA hat auch einen zusätzlich Eingang für einen Übertrag

0