Seštevanje dvojiških števil

Seštevanje dveh dvojiških števil je osnova vseh operacij, ki jih izvaja aritmetično-logična enota.

Pol-seštevalnik

Da bomo ustrezno razumeli koncept delovanja računskih operacij, bomo za zgled najprej sestavili logično vezje, s katerim bomo sešteli dve števili. Najpreprostejše logično vezje, ki ga lahko zgradimo, sešteje dve dvojiški števki. To pomeni, da bomo imeli dve vhodni spremenljivki oziroma dvojiški števki $A$ in $B$ ter eno izhodno spremenljivko $S$, ki bo predstavljala vsoto (ang. sum) dvojiških števk.

Spomnimo se, da obstajajo natančno štiri kombinacije dveh vhodnih spremenljivk. Prve tri kombinacije so:

  • $0 + 0 = 0$
  • $0 + 1 = 1$
  • $1 + 0 = 1$

Te prve tri kombinacije se ujemajo s prvimi tremi kombinacijami logičnih vrat izključujoči ALI (XOR), ki jih uporabimo za izvedbo logičnega vezja.

$A$ $B$ $S$
0 0 0
0 1 1
1 0 1

Četrta kombinacija $1 + 1 = 2$ oziroma $10$ v dvojiškem številskem sistemu. Torej je rezultat seštevanja enak $0$, vrednost $1$ pa moramo prenesti v naslednji stolpec, ki ga moramo dodati v pravilnostno tabelo.


Ker gre za prenos vrednosti (ang. carry), bomo stolpec poimenovali $C$. Upoštevajmo še, da v prvih treh vrsticah oziroma kombinacijah prenosa ni bilo.

$A$ $B$ $C$ $S$
0 0 0 0
0 1 0 1
1 0 0 1
1 0 1 0

Iz pravilnostne tabele lahko razberemo, da je izhod $C$ enak izhodu logičnih vrat IN (AND), izhod $S$ pa je enak izhodu logičnih vrat izključujoči ALI (XOR). Logično vezje za enobitni pol-seštevalnik lahko torej ustvarimo tako, da vhodni spremenljivki ustrezno povežemo z logičnimi vrati IN ter izključujoči ALI ter tako dobimo ustrezni izhodni funkciji, kot prikazuje spodnja interaktivnost.

Logično vezje predstavlja pol-seštevalnik (ang. half-adder), saj pri seštevanju vrednosti ne upošteva morebitnega prenosa iz prejšnjega stolpca. V nadaljevanju si bomo ogledali še polni seštevalnik.