Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| informatyka:podstawy-dzialania-komputera:adder_sumator [2024/05/04 07:31] – kawcix | informatyka:podstawy-dzialania-komputera:adder_sumator [2024/05/04 15:52] (current) – kawcix | ||
|---|---|---|---|
| Line 4: | Line 4: | ||
| Aby go zbudować, zbudujemy half adder - który dodaje 2 bity i Full adder - który dodaje 3 bity. | 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ć: | ||
| + | |||
| + | {{: | ||
| ===== Half Addder ===== | ===== 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 " | ||
| + | |||
| + | [[informatyka: | ||
| + | |||
| + | 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ć, | ||
| + | |||
| + | Poniżej implementacja addera który dodaje dwie 4 bitowe liczby. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Na początku mamy half adder, bo nie potrzebujemy " | ||
| + | |||
| + | Bardziej " | ||
| + | |||
| + | {{ : | ||
| + | |||