Tilbake
2.4
Kombinatorisk logikk

2.4 Kombinatorisk logikk

Design av kombinatoriske kretser med multipleksere, dekodere og addere.

55 min
5 oppgaver
MultiplekserDekoderHalvaddererHeladdererKombinatoriske kretser
Du leser den tradisjonelle versjonen
Din fremgang i kapitlet
0 / 5 oppgaver

Kombinatorisk logikk

I kombinatoriske kretser bestemmes utgangen utelukkende av de nåværende inngangsverdiene. Kretsen har ingen hukommelse – den «husker» ikke hva som skjedde tidligere. Dette skiller kombinatoriske kretser fra sekvensiell logikk (som vi ser på i senere kapitler), der utgangen også avhenger av tidligere tilstander.

Kombinatoriske kretser er byggesteinene i alle digitale systemer. Fra enkle velgere (multipleksere) til aritmetiske enheter – alle er bygd opp av logiske porter i ulike kombinasjoner.

I dette kapittelet skal du lære:
- Hva multipleksere (MUX) og dekodere er
- Hvordan halvaddere og heladdere fungerer
- Å designe enkle kombinatoriske kretser fra en sannhetstabell

Multiplekser (MUX)

En multiplekser (MUX) er en digital velger – den velger én av flere innganger og sender den videre til utgangen.

2-til-1 MUX:
- Har to datainnganger (D₀ og D₁), én velgerinngang (S) og én utgang (Y)
- Når S = 0, sendes D₀ til utgangen: Y = D₀
- Når S = 1, sendes D₁ til utgangen: Y = D₁

Boolsk uttrykk for 2-til-1 MUX:
Y = S̄ · D₀ + S · D₁

4-til-1 MUX:
- Har fire datainnganger (D₀–D₃), to velgerinnganger (S₁, S₀) og én utgang
- Velgerinngangene danner et 2-bits binærtall som velger inngang

S₁S₀Y
00D₀
01D₁
10D₂
11D₃

Bruksområder: Dataseleksjon, rutingsystemer, implementering av logiske funksjoner.

Dekoder

En dekoder konverterer et binært inngangssignal til ett av flere utgangssignaler. Bare én utgang er aktiv (høy) om gangen.

2-til-4 dekoder:
- Har to innganger (A₁, A₀) og fire utganger (Y₀–Y₃)
- Inngangene tolkes som et 2-bits binærtall, og den tilsvarende utgangen aktiveres

A₁A₀Y₀Y₁Y₂Y₃
001000
010100
100010
110001

Boolske uttrykk:
- Y₀ = Ā₁ · Ā₀
- Y₁ = Ā₁ · A₀
- Y₂ = A₁ · Ā₀
- Y₃ = A₁ · A₀

Bruksområder: Adressedekodering i hukommelseskretser, sjusegment-display, valg av enhet i datasystemer.

✏️Velge mellom to sensorer med MUX

Et system har to temperatursensorer (Sensor A og Sensor B). En bryter S bestemmer hvilken sensor som leses. Beskriv hvordan en 2-til-1 MUX kan brukes, og skriv det boolske uttrykket.

Vi kobler:
- Sensor A til inngang D₀
- Sensor B til inngang D₁
- Bryteren til velgerinngang S

Boolsk uttrykk:
Y = S̄ · A + S · B

Funksjon:
- Bryter av (S = 0): Y = 1 · A + 0 · B = A → Sensor A leses
- Bryter på (S = 1): Y = 0 · A + 1 · B = B → Sensor B leses

Multiplekseren fungerer som en elektronisk bryter som velger mellom de to sensorene basert på styringsinngang S.

📝Oppgave 1

En 4-til-1 MUX har velgerinngangene S₁ = 1 og S₀ = 0. Hvilken datainngang kobles til utgangen?

Halvadder (Half Adder)

En halvadder legger sammen to enkeltbiter og gir et sum-bit (S) og et mente-bit (C, carry).

Innganger: A og B (én bit hver)
Utganger: S (sum) og C (mente/carry)

Sannhetstabell:

ABS (sum)C (mente)
0000
0110
1010
1101

Boolske uttrykk:
- S = A ⊕ B (XOR – eksklusiv ELLER)
- C = A · B (AND)
Halvadderen kalles «halv» fordi den ikke har inngang for mente fra et tidligere siffer.

Heladder (Full Adder)

En heladder legger sammen to biter pluss en innkommende mente (carry in). Den er nødvendig for å legge sammen flersifrede binærtall.

Innganger: A, B og Cᵢₙ (carry in)
Utganger: S (sum) og Cᵤₜ (carry out)

Sannhetstabell:

ABCᵢₙS (sum)Cᵤₜ (carry out)
00000
00110
01010
01101
10010
10101
11001
11111

Boolske uttrykk:
- S = A ⊕ B ⊕ Cᵢₙ
- Cᵤₜ = A · B + Cᵢₙ · (A ⊕ B)
En heladder kan bygges av to halvaddere og en OR-port.

✏️Addisjon med halvadder og heladder

Bruk halvaddere og heladdere til å legge sammen de 2-bits binærtallene A₁A₀ = 11 og B₁B₀ = 01. Vis hvordan bitene behandles steg for steg.

Vi legger sammen 11₂ + 01₂ (3 + 1 = 4 i desimal).

Steg 1 – Minst signifikante bit (posisjon 0): Halvadder
- A₀ = 1, B₀ = 1
- S₀ = 1 ⊕ 1 = 0
- C₀ = 1 · 1 = 1 (mente til neste posisjon)

Steg 2 – Posisjon 1: Heladder
- A₁ = 1, B₁ = 0, Cᵢₙ = 1 (fra forrige steg)
- S₁ = 1 ⊕ 0 ⊕ 1 = 0
- Cᵤₜ = 1 · 0 + 1 · (1 ⊕ 0) = 0 + 1 · 1 = 1

Resultat: Cᵤₜ S₁ S₀ = 1 0 0 = 100₂ = 4 i desimal. ✓

📝Oppgave 2

En halvadder har inngangene A = 1 og B = 0. Beregn sum (S) og mente (C). Bruk deretter resultatet i en heladder der den andre inngangen er B = 1 og carry in = 0.

📝Oppgave 3

Hva er forskjellen mellom en halvadder og en heladder?

Oppsummering

I dette kapittelet har du lært om viktige kombinatoriske kretser:

- Multiplekser (MUX): En digital velger som sender én av flere innganger til utgangen, styrt av velgerinnganger
- Dekoder: Konverterer et binærtall til aktivering av én bestemt utgang
- Halvadder: Legger sammen to enkeltbiter → gir sum og mente
- Heladder: Legger sammen to biter pluss innkommende mente → kan kjedes sammen for flersifrede tall

Viktige uttrykk


KretsUttrykk
2-til-1 MUXY = S̄·D₀ + S·D₁
Halvadder sumS = A ⊕ B
Halvadder menteC = A · B
Heladder sumS = A ⊕ B ⊕ Cᵢₙ
Heladder menteCᵤₜ = A·B + Cᵢₙ·(A⊕B)
📝Oppgave 4

Bruk én halvadder og én heladder til å legge sammen de 2-bits binærtallene 10 og 11. Vis beregningen for hver adder steg for steg, og oppgi det endelige svaret i binært og desimalt.

📝Oppgave 5

Du skal designe en krets som styrer et trafikklys. Kretsen har to innganger (S₁, S₀) som koder for tilstanden: 00=rødt, 01=rødt+gult, 10=grønt, 11=gult. Design en dekoder med tre utganger (R, G, Gu) for rød, grønn og gul lampe. Sett opp sannhetstabellen og skriv de boolske uttrykkene for hver utgang.

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.