Sabirač-oduzimač

Из Википедије, слободне енциклопедије

U digitalnoj elektronici, sabirač oduzimač je kolo koje može da sabira ili oduzima brojeve (posebno binarne). Ispod je kolo koje radi sabiranje ili oduzimanje, u zavisnosti od kontrolnog signala. Takođe je moguće da se izgradi kolo koje vrši i sabiranja i oduzimanja u isto vreme.

Konstrukcija[уреди]

4-bitni енгл. ripple-carry; sabirač-oduzimač baziran na 4-bitnom sabiraču koji obavlja komplement dvojke na A kada je D=1 da doprinese S=B-A

Imamo n-bitni sabirač za A i B, tada je S = A + B. Zatim, pretpostavimo da su brojevi u komplementu dvojke. Onda se izvši B - A, teorija komplementa dvojke kaže da se obrće svaki bit sa NE vrata, a zatim dodajete jedan. Ovo donosi S = B + \overline{A} + 1,što je lako uraditi sa nešto izmenjenim sabiračem.

Od svakog prethodnog A bitnog ulaza na sabirač sa 2-u-1 multiplekserom gde je:

  • Ulaz 0 (I_0) je direktno kroz (A_i)
  • Ulaz 1 (I_1) negira (\overline{A_i})

koji ima kontrolni ulaz D i početni prenos povezivanja je takođe povezan sa D onda:

  • Kada jeD=0, modifikovani sabirač obavlja sabiranje
  • Kada je D=1, modifikovani sabirač obavlja oduzimanje

Ovo radi zato što, kada je D=1, A ulaz na sabirač je zaista \overline{A} i prenos je u 1. Dodavanjem B na \overline{A} i 1 dobijamo željeno oduzimanje B-A.

Način na koji možete označiti broj A kao pozitivan ili negativan, bez korišćenja multipleksera za svaki bit, jeste da koristite XOR (Ekskluzivno OR) kolo, umesto kao prethodno, svaki bit.

  • Prvo, ulaz za XOR kolo je aktuelni ulazni bit.
  • Drugo, ulaz za XOR kolo je Kontolni ulaz za svako D

Ovo daje istu Tablicu istinitosti za bit koji dolazi sa sabirača kao i što multiplekserovo rešenje radi. Kao kada je D=0 XOR izlazno kolo će biti ono na šta je postavljen ulazni bit. I kada je D=1 efektivno će obrnuti bitni ulaz.

Uloga u aritmetičkoj logičkoj jedinici[уреди]

Sabirači su deo srži jedne aritmetičko-logičke jedinice(ALU). Kontrona jedinica odlučuje koje operacije ALU treba da izvrši i postavlja ALU operacije. D ulaz na sabirač oduzimač gore, bi bila jedna takva kontrolna linija od kontrolne jedinice.

Gore, sabirač oduzimač može lako da se proširi da sadrži, prihvata, više funkcija. Na primer, 2-u-1 multiplekser mogao bi biti uveden na svaki B_i da bi se moglo prebacivati između nule i B_i; to bi moglo da se koristi (u konjukciji sa D = 1) da da komplement dvojke od A jer -A = \overline{A} + 1.

Dalji korak bi bio da se promeni 2 - u- 1 mltiplekser na A u 4- u -1, tako da treći ulaz bude nula, onda replicira ovo na B_i i time daje sledeći izlaz funkcije:

  • 0 (sa oba A_i i B_i ulaza postavljena na nulu i D=0)
  • 1 (sa oba A_i i B_i ulaza postavljena na nulu i D=1)
  • A (sa B_i ulazom postavljenim na nulu)
  • B (sa A_i ulazom postavljenim na nulu)
  • A+1 (sa B_i ulazom postavljenim na nulu i D=1)
  • B+1 (sa A_i ulazom postavljenim na nulu i D=1)
  • A+B
  • A-B
  • B-A
  • \overline{A} (sa A_i invertno setovanim; B_i setovano na nulu; i D=0)
  • -A (sa A_i invertno setovanim; B_i setovano na nulu; i D=1)
  • \overline{B} (sa B_i invertno setovanim; A_i setovano na nulu; i D=0)
  • -B (sa B_i invertno setovanim; A_i setovano na nulu; i D=1)

Dodavanjem još logike ispred sabirača, jedan sabirač se može konvertovati u mnogo više od običnog sabirača - ALU.

Vidi još[уреди]