This is an old revision of the document!
8 Adder (Sumator)
Adder – cyfrowy układ kombinacyjny, który wykonuje operacje dodawania dwóch liczb dwójkowych.
Aby go zbudować, zbudujemy half adder - który dodaje 2 bity i Full adder - który dodaje 3 bity.
Aby zrozumieć jego działanie musisz przeczytać: 7 Dodawanie w systemie binarnym
Half Addder
Mamy 2 wejścia A i B. Są to bity do dodania. Na wyjściu mamy Sum - czyli wynik dodawania, i carry - te “przeniesienie”. full adder będzie miał 3 wejścia A, B, i własnie carry, ale narazie zajmijmy się half adderem
2 Zamiana tabeli prawdy na wyrażenie boola
SUM:
NOT(A) AND B OR A AND NOT(B)
CARRY:
A AND B
Implementacja i prezentacja działania:
Full Addder
SUM: NOT(A) AND NOT(B) AND C OR
NOT(A) AND B AND NOT(C) OR
A AND NOT(B) AND NOT(C) OR
A AND B AND C
SUM: NOT(A) AND NOT(B) AND C OR NOT(A) AND B AND NOT(C) OR A AND NOT(B) AND NOT(C) OR A AND B AND C
CARRY: NOT(A) AND B AND C A AND NOT(B) AND C A AND B AND NOT(C) A AND B AND C = C AND B OR A AND B OR A AND C
moja implementacja:
Prościej jest zaimplementować full adder za pomocą half adderów:
Adder
Mając już half adder i full adder możemy je połączyć, aby otrzymać adder.
Poniżej implementacja addera który dodaje dwie 4 bitowe liczby.
Na początku mamy half adder, bo nie potrzebujemy “carry” dla pierwszej liczby. Następnie mamy odpowiednio połączone full addedry.
Bardziej “czytelny” przykład jego działania: