Enter
Legge sammen to tall
Digitale regnemaskiner må kunne legge sammen tall. Addisjon er hovedproblemet: Kan du addere tall, kan du også subtrahere. Og med litt tenkning kan du også få til multiplikasjon og divisjon. Men hvordan adderer du tall når du bare kan SANN og USANN?
Først må du forstå hvordan det binære tallsystemet fungerer. Vet du det allerede, kan du bare fortsette -- ellers er du invitert til et lynkurs i binære tall.
La oss begynne med å addere to bits. (En bit tilsvarer et tilstand av type SANN eller USANN, eller et binært siffer.) Siden hver bit har bare to mulige verdier, har vi bare fire muligheter å undersøke. De fire mulige innganger og utganger er:
		0 + 0 =  0
		1 + 0 =  1
		0 + 1 =  1
		1 + 1 = 10
	
Whoops! Den fjerde linjen forteller at når du adderer to 1-bit tall, må du ha en utgang som har to bits. Det som skjer er at du få et overdrag, eller carry-over. Summen blir stårre enn det er mulig å uttrykke med en bit; du må flytte et hack til venstre.
La oss se på logikk-tabellen til dette problemet:
Inngang A Inngang B Utgang 1. bit (Carry) Utgang 2. bit (Summe)
0 0 0 0
1 0 0 1
0 1 0 1
1 1 1 0
Det er tydelig at det er ganske lett å implementere ved hjelp av AND og XOR gate'r. 1. bit (Carry'en) oppfører seg som en AND (eller OG) funksjon. 2. bit (Summen) oppfører seg som en XOR funksjon.
haddr
Men... dette her er enda ikke godt nok. I en datamaskin vil vi trenge å addere multi-bit tall til hverandre. Vi kan ta ha en slik konstruksjon for hver bit-posisjon, men da må vi kunne ta hensyn til en carry-over som måtte oppså ved addisjon i nest-lavere bit-posisjon. Det er som med desimal-tall. Adderer du tall i kolonner, må du i hver kolonne ta hensyn til overdrag som du får i kolonnen til høyre. Vi må gjøre det samme med binære tall!

Gå videre til multi-bit addisjon
Tilbake til index