Tilbake
2.2
Logiske porter

2.2 Logiske porter

AND, OR, NOT, NAND, NOR og XOR - symboler, funksjoner og sannhetstabeller.

60 min
6 oppgaver
AND-portOR-portNOT-portNAND-portNOR-portXOR-portSannhetstabeller
Du leser den lesevennlige versjonen
Din fremgang i kapitlet
0 / 6 oppgaver

Alt er nuller og ettall

Du har sikkert hørt at datamaskiner «bare snakker i nuller og ettall». Det høres nesten for enkelt ut til å være sant -- hvordan kan en strøm av to tall lage spill, musikk og videosamtaler? Svaret ligger i digitalteknikken, selve grunnmuren under all moderne elektronikk, fra den minste mikrokontroller til den kraftigste datamaskin.

I dette kapittelet skal vi grave i hvordan dette egentlig fungerer. Vi starter med de digitale signalene -- hva en 0 og en 1 faktisk er i form av spenning. Så bygger vi opp de logiske portene som AND, OR og NOT, byggesteinene som tar nuller og ettall inn og gir et bestemt svar ut. Vi setter dem sammen til NAND, NOR og XOR, og lærer å lese enhver krets ved hjelp av sannhetstabeller. Til slutt møter vi boolsk algebra, et sett spilleregler som lar oss forenkle selv kompliserte logiske uttrykk til noe overraskende enkelt. Når du er ferdig, ser du logikken bak maskinen.

Signaler, porter og sannhetstabeller

La oss begynne med byggeklossen. Et digitalt signal har bare to tilstander: 0 og 1. I praksis er dette spenningsnivåer. Logisk 0 -- også kalt LOW eller FALSE -- er lav spenning, typisk mellom 0 og 0,8 V. Logisk 1 -- HIGH eller TRUE -- er høy spenning, typisk mellom 2 og 5 V. Som regel bruker vi positiv logikk, der høy spenning betyr 1.

Nå kommer det interessante: de logiske portene. En AND-port gir 1 bare hvis alle inngangene er 1. En OR-port gir 1 hvis minst én inngang er 1. En NOT-port, også kalt inverter, snur signalet -- 0 blir til 1 og omvendt. Og en XOR-port (eksklusiv OR) gir 1 bare når inngangene er forskjellige.

For å holde styr på dette bruker vi sannhetstabeller, som viser utgangen for alle mulige kombinasjoner av inngangene. Antallet kombinasjoner følger en enkel regel: med NN innganger får du 2N2^N rader. To innganger gir 22=42^2 = 4 rader, tre innganger gir 23=82^3 = 8 rader.

Tenk på et praktisk eksempel. En alarm skal bare utløses når både dørsensoren og bevegelsessensoren er aktive. Hvilken port trenger vi? En AND-port. Med dør som A og bevegelse som B, blir alarmen A AND BA \text{ AND } B -- og den går av bare når begge er 1. Slik blir abstrakt logikk plutselig til en konkret krets som gjør noe nyttig.

📝Oppgave Quiz 1

De sammensatte portene

De fire grunnportene er kraftige, men ved å sette dem sammen får vi enda mer nyttige byggeklosser. Tenk deg at du tar en AND-port og setter en inverter rett etter den. Da får du en NAND-port (NOT-AND): den gir 0 bare når alle inngangene er 1, og 1 ellers -- altså det stikk motsatte av AND. På samme måte gir en OR-port etterfulgt av en inverter en NOR-port (NOT-OR), som gir 1 bare når alle inngangene er 0. Og en XOR med inverter blir en XNOR-port, som gir 1 når inngangene er like.

NAND og NOR har en forbløffende egenskap: de er universelle porter. Det betyr at du kan bygge alle andre logiske porter -- AND, OR, NOT, XOR -- ved å bare bruke NAND-porter (eller bare NOR-porter). I praktisk design er dette gull verdt, for da klarer du deg med én eneste type byggekloss for å lage hvilken som helst logisk funksjon.

Det er lett å blande sammen OR og XOR, så la oss skille dem tydelig. Begge gir 1 når nøyaktig én inngang er 1. Forskjellen dukker opp når begge er 1: da gir OR fortsatt 1, mens XOR gir 0. En fin huskeregel: OR betyr «te eller kaffe -- gjerne begge», mens XOR betyr «te eller kaffe, men ikke begge». XOR er altså den litt strengere varianten som krever at inngangene er forskjellige.

📝Oppgave Quiz 2

Boolsk algebra -- å rydde opp i logikken

Logiske kretser kan fort bli kompliserte, med mange porter etter hverandre. Men ofte skjuler det seg en mye enklere krets bak rotet. Verktøyet for å avsløre den er boolsk algebra -- et sett regneregler for logiske uttrykk.

Noen av reglene er ganske intuitive. Identitetslovene sier at A AND 1=AA \text{ AND } 1 = A og A OR 0=AA \text{ OR } 0 = A. Nullelement og enhet gir A AND 0=0A \text{ AND } 0 = 0 og A OR 1=1A \text{ OR } 1 = 1. Komplementreglene sier at A AND (NOT A)=0A \text{ AND } (\text{NOT } A) = 0 og A OR (NOT A)=1A \text{ OR } (\text{NOT } A) = 1, fordi noe ikke kan være både sant og usant samtidig. Og dobbel negasjon opphever seg selv: NOT(NOT A)=A\text{NOT}(\text{NOT } A) = A.

La oss se kraften i et eksempel. Forenkle F=(A AND B) OR (A AND NOT B)F = (A \text{ AND } B) \text{ OR } (A \text{ AND NOT } B). Først faktoriserer vi ut AA: F=A AND (B OR NOT B)F = A \text{ AND } (B \text{ OR NOT } B). Men B OR NOT B=1B \text{ OR NOT } B = 1 etter komplementregelen, så F=A AND 1F = A \text{ AND } 1, som etter identitetsloven blir rett og slett F=AF = A. Hele uttrykket koker ned til én enkelt variabel -- uansett hva BB er, følger utgangen bare AA.

De kanskje mest berømte reglene er De Morgans lover, som forteller hvordan negasjon flyttes inn i en parentes: NOT(A AND B)=(NOT A) OR (NOT B)\text{NOT}(A \text{ AND } B) = (\text{NOT } A) \text{ OR } (\text{NOT } B) og NOT(A OR B)=(NOT A) AND (NOT B)\text{NOT}(A \text{ OR } B) = (\text{NOT } A) \text{ AND } (\text{NOT } B). Legg merke til at AND blir til OR og omvendt når negasjonen flyttes inn. Disse lovene er uunnværlige når man designer kretser med færrest mulig porter.

📝Oppgave Quiz 3

Oppsummering

Vi har sett hvordan nuller og ettall bygger opp hele den digitale verdenen. Et digitalt signal har to tilstander -- 0 (lav spenning) og 1 (høy spenning) -- og de logiske portene behandler dem: AND gir 1 bare når alle er 1, OR gir 1 når minst én er 1, NOT inverterer, og XOR gir 1 når inngangene er forskjellige.

Vi satte portene sammen til NAND, NOR og XNOR, og oppdaget at NAND og NOR er universelle porter som kan bygge alt. Sannhetstabeller med 2N2^N rader lar oss lese enhver krets. Til slutt ga boolsk algebra oss verktøyene til å forenkle: identitetslover, komplementregler og ikke minst De Morgans lover, som flytter negasjon inn i parenteser og bytter AND med OR. Med dette i ryggen kan du både analysere og forenkle de logiske kretsene som ligger under all digital teknologi.

Dette kapitlet er skrevet av Anthropics toppmodeller (Claude Opus og Claude Fable) og er foreløpig ikke manuelt gjennomgått — kvalitetskontrollen gjøres av uavhengige KI-agenter, og innmeldte feil rettes fortløpende. Funnet en feil? Meld fra, så retter vi den. Les mer om hvordan innholdet lages.