23
090_BLG_Booleova_algebra_20090212_02 12.2.2009 BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 1 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI Ključne riječi: Booleova algebra, De Morganova pravila, distribucija, I (engl. AND), ILI (engl. OR), istina (T, 1), komutacija, laž (F, 0), logička algebra, logički sklopovi, NE (engl. NOT), negacija, tablica stanja, implikacija, ekvivalencija, tautologija, kontradikcija, normalna forma, NILI (engl. NOR), Ekskluzivno ILI (engl. XOR), NI (engl. NAND), poluzbrajalo (engl. half adder), potpuno zbrajalo (engl. full adder) Logička algebra Logička ili Booleova algebra je sustav teorema koji rabe simboličku logiku da bi opisali skupove elemenata i odnose među njima. Booleova algebra dobila je naziv prema svom tvorcu, engleskom matematičaru George Booleu (1815. – 1864.). George Boole je u svom djelu Matematička analiza logike želio matematički obraditi postupke logičkog zaključivanja, pri čemu su ulazni podatci mogli imati samo dva stanja: istinito i lažno. Razvojem digitalnih računala otkriveno je da je Booleova algebra vrlo dobro primjenjiva u konstruiranju i analizi rada računala jer takva računala također imaju samo dva stanja (uključen – isključen, napon maksimalan – napon minimalan i sl.). Ponašanje logičkih sklopova unutar digitalnih računala može se odlično opisati s pomoću Booleove algebre. Booleova algebra obrađuje znatno šire područje od elektroničkih računala, pa se i izučava kao posebna disciplina. Ovdje će ukratko biti opisana temeljna načela logičke algebre. Osnovni element logičke algebre jest izjava, koja može biti istinita ili lažna. Izjava je npr. “Danas je vedar dan” ili “Medvednica je viša od 1000 metara” ili “1+1=3”. Pitanja NISU izjave i nisu elementi logičke algebre (npr. “Koliko je sati?” nije izjava u smislu logičke algebre). Temeljno je svojstvo izjave istinitost ili lažnost. Istinitost izjave označava se pojmom “istina” ili engl. true. Zbog jednostavnosti i kratkoće istinitost izjave često se označava slovom T ili oznakom “1”. Lažnost izjave označava se pojmom “laž” ili engl. false. Zbog jednostavnosti i kratkoće lažnost izjave često se označava slovom F ili oznakom “0”. Katkad se cijela izjava kratko označava jednim slovom, pa se tako npr. može pisati: P = “Danas je subota” (T) A = “Pročitao sam knjigu” (F) Slovo P pritom zamjenjuje izjavu “Danas je subota”, a slovo A izjavu “Pročitao sam knjigu”. Oznak e u zagradama upućuju na istinitost izjava: izjava P je istinita izjava, a A je lažna izjava. Izjave se mogu međusobno kombinirati u logičke izraze rabeći logičke operatore.. Logički operator NE (engl. NOT) Logička operacija NE naziva se još i negacija, a uključuje jedan operand i jedan operator. Negacija izjave nova je izjava, zasnovana na postojećoj izjavi, koja je lažna ako je postojeća izjava istinita, odnosno istinita je ako je postojeća izjava lažna. Primjerice, ako je postojeća izjava: “Danas je subota”, onda je njezina negacija: “Danas nije subota”. Operator NE predočuje se jednim od simbola: ~ ili ¯ ili ‘. U ovoj će se knjizi rabiti simbol ¯. Označimo li zbog kratkoće postojeću izjavu jednim slovom (npr. P = “Danas je subota”), onda se negacija izj ave označava sa P . Dakle: P je negacija izjave P. Umjesto opisne odredbe odnosa između izjave i njezine negacije može se rabiti tzv. tablica istinitosti ili tablica stanja. Tablica stanja izražava odnose između operanda ovisno o logičkoj operaciji. Tablica stanja definicija je logičke operacije i mora sadržavati sva moguća stanja operanada i logičke operacije. Istinitost se označava slovom T (od engl. true) ili znamenkom 1, a neistinitost ili laž slovom F (od engl. false) ili znamenkom 0. U praksi se rabi samo jedna od te dvije oznake, ovisno o sklonostima. Tablica stanja ili tablica istine za logičku operaciju NE (negaciju) : Booleova algebra i logički sklopovi 1

9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

  • Upload
    others

  • View
    21

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 1

9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

Ključne riječi:

Booleova algebra, De Morganova pravila, distribucija, I (engl. AND), ILI (engl. OR), istina (T, 1), komutacija, laž (F, 0), logička algebra, logički sklopovi, NE (engl. NOT), negacija, tablica stanja, implikacija, ekvivalencija, tautologija, kontradikcija, normalna forma, NILI (engl. NOR), Ekskluzivno ILI (engl. XOR), NI (engl. NAND), poluzbrajalo (engl. half adder), potpuno zbrajalo (engl. full adder)

Logička algebra

Logička ili Booleova algebra je sustav teorema koji rabe simboličku logiku da bi opisali skupove elemenata i odnose među njima. Booleova algebra dobila je naziv prema svom tvorcu, engleskom matematičaru George Booleu (1815. – 1864.). George Boole je u svom djelu Matematička analiza logike želio matematički obraditi postupke logičkog zaključivanja, pri čemu su ulazni podatci mogli imati samo dva stanja: istinito i lažno. Razvojem digitalnih računala otkriveno je da je Booleova algebra vrlo dobro primjenjiva u konstruiranju i analizi rada računala jer takva računala također imaju samo dva stanja (uključen – isključen, napon maksimalan – napon minimalan i sl.). Ponašanje logičkih sklopova unutar digitalnih računala može se odlično opisati s pomoću Booleove algebre. Booleova algebra obrađuje znatno šire područje od elektroničkih računala, pa se i izučava kao posebna disciplina. Ovdje će ukratko biti opisana temeljna načela logičke algebre.

Osnovni element logičke algebre jest izjava, koja može biti istinita ili lažna. Izjava je npr. “Danas je vedar dan” ili “Medvednica je viša od 1000 metara” ili “1+1=3”. Pitanja NISU izjave i nisu elementi logičke algebre (npr. “Koliko je sati?” nije izjava u smislu logičke algebre).

Temeljno je svojstvo izjave istinitost ili lažnost. Istinitost izjave označava se pojmom “istina” ili engl. true. Zbog jednostavnosti i kratkoće istinitost izjave često se označava slovom T ili oznakom “1”. Lažnost izjave označava se pojmom “laž” ili engl. false. Zbog jednostavnosti i kratkoće lažnost izjave često se označava slovom F ili oznakom “0”. Katkad se cijela izjava kratko označava jednim slovom, pa se tako npr. može pisati:

P = “Danas je subota” (T)

A = “Pročitao sam knjigu” (F)

Slovo P pritom zamjenjuje izjavu “Danas je subota”, a slovo A izjavu “Pročitao sam knjigu”. Oznake u zagradama upućuju na istinitost izjava: izjava P je istinita izjava, a A je lažna izjava.

Izjave se mogu međusobno kombinirati u logičke izraze rabeći logičke operatore..

Logički operator NE (engl. NOT)

Logička operacija NE naziva se još i negacija, a uključuje jedan operand i jedan operator. Negacija izjave nova je izjava, zasnovana na postojećoj izjavi, koja je lažna ako je postojeća izjava istinita, odnosno istinita je ako je postojeća izjava lažna. Primjerice, ako je postojeća izjava:

“Danas je subota”,

onda je njezina negacija:

“Danas nije subota”.

Operator NE predočuje se jednim od simbola: ~ ili ¯ ili ‘. U ovoj će se knjizi rabiti simbol ¯. Označimo li zbog kratkoće postojeću izjavu jednim slovom (npr. P = “Danas je subota”), onda se negacija izjave označava sa P. Dakle:

P je negacija izjave P.

Umjesto opisne odredbe odnosa između izjave i njezine negacije može se rabiti tzv. tablica istinitosti ili tablica stanja. Tablica stanja izražava odnose između operanda ovisno o logičkoj operaciji. Tablica stanja definicija je logičke operacije i mora sadržavati sva moguća stanja operanada i logičke operacije. Istinitost se označava slovom T (od engl. true) ili znamenkom 1, a neistinitost ili laž slovom F (od engl. false) ili znamenkom 0. U praksi se rabi samo jedna od te dvije oznake, ovisno o sklonostima. Tablica stanja ili tablica istine za logičku operaciju NE (negaciju):

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 2: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 2

P P

0 1

1 0

Logički operator I (engl. AND)

Logička operacija I naziva se konjunkcija. Uključuje dva operanda i jedan operator. Operator I predočuje se jednim od simbola: ∩ ili · ili ·. U ovoj će se knjizi rabiti simbol ·. Rabe li se slova kao simbolički prikaz izjava, operacija I piše se:

P · Q

i čita “P i Q”.

Tablica stanja logičke operacije I govori da je cjelokupna logička operacija istinita ako i samo ako su istinite obje izjave uključene u tu operaciju. Tablica stanja logičke operacije I :

P Q P · Q

0 0 0

0 1 0

1 0 0

1 1 1

Npr. logički izraz „Dan je sunčan“ I „Ne pada kiša“ bit će istinit ako su istinite obje izjave od kojih se sastoji..

Logički operator ILI (engl. OR)

Logička operacija ILI naziva se inkluzivna disjunkcija, a uključuje dva operanda i jedan operator,

Operator ILI predočuje se jednim od simbola: U ili ∨ Iili +. U ovoj će se knjizi rabiti simbol +.

Operacija ILI piše se simbolički:

P + Q

i čita “P ili Q”.

Tablica stanja logičke operacije ILI govori da je cjelokupna logička operacija istinita ako je istinita bilo koja izjava uključena u tu operaciju. Tablica stanja logičke operacije ILI:

P Q P + Q

0 0 0

0 1 1

1 0 1

1 1 1

Logički operator implikacije (=>)

Logička operacija implikacije na određeni način odgovara veznicima „ako…onda…“ . Operator implikacije predočuje se simbolom =>. Izraz P=>Q je istinit uvijek osim ako je P istinito, a Q lažno. Izjava P se naziva prednjak, razlog ili antecedenta, a izjava Q posljedak, posljedica ili konzekventa. Tablica stanja implikacije je:

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 3: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 3

P Q P => Q

0 0 1

0 1 1

1 0 0

1 1 1

Operacija implikacije piše se simbolički:

P => Q

i čita „P implicira Q“ ili „Ako je P onda je Q“ ili P povlači Q“. Matematički poučci često se izražavaju implikacijom, npr. Pitagorin poučak glasi: Ako je trokut pravokutan onda u njemu vrijedi c

2=a

2+b

2.

Vrijedi i obrat ovog teorema u kojem je također implikacija. Ako u nekom trokutu vrijedi c2=a

2+b

2.onda

je taj trokut pravokutan.

Ako vrijede oba smjera implikacije tj ako P => Q i Q => P onda je riječ o novoj logičkoj operaciji, ekvivalenciji.

Logički operator ekvivalencije ()

Logička operacija ekvivalencije na određeni način govori da su izjave P i Q jednako vrijedne i odgovara veznicima „ako i samo ako“, „akko“, (engl. if and only if, iff). Operator ekvivalencije predočuje se simbolom. Izraz PQ je istinit ako su oba izraza ista glede istinitosti tj. ako su i P i Q istinite izjave ili ako su i P i Q lažne izjave. Tablica stanja ekvivalencije je:

P Q P Q

0 0 1

0 1 0

1 0 0

1 1 1

Operacija ekvivalencije piše se simbolički:

P Q

Složene logičke operacije

Osnovne logičke operacije mogu se kombinirati u složene operacije, pa tako npr. možemo sastaviti složenu logičku operaciju:

“Danas je sunčan dan” ILI “Danas je oblačan dan” I “Iz oblaka pada kiša”.

Ova se logička operacija sastoji od tri operanda i dva operatora. Uočite dva osnovna logička operatora ILI i I. Zamijene li se izjave slovnim oznakama ta logička operacija poprima oblik:

P + Q · R

Često je složene logičke operacije moguće pojednostavniti služeći se nizom jednostavnih pravila. Pojednostavniti logičku operaciju znači smanjiti broj operanada u logičkoj operaciji ne mijenjajući pritom tablicu stanja te operacije. Postoji više postupaka koji pomažu pojednostavnjenju, a mi ćemo ovdje rabiti algebarski postupak. Tim se postupkom zamjenjuju dijelovi logičke operacije služeći se skupom pravila za zamjenu. Ovdje su navedena osnovna pravila koja mogu pomoći pojednostavnjenju, odnosno pretvorbi jednoga logičkog oblika u drugi, a da se pritom ne izmijeni tablica stanja logičke operacije. Tako npr. vrijedi:

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 4: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 4

P · 0 = 0 P + 0 = P

P · P = P P + P = P

P · P = 0 P + P = 1

P · 1 = P P + 1 = 1

P · (P + Q) = P P + (P · Q) = P

P · (P + Q) = P · Q P + (P · Q) = P + Q

De Morganova pravila

(P + Q) = P · Q

(P · Q) = P + Q

Komutacija

P + Q = Q + P

P · Q = Q · P

Distribucija

P · (Q + R) = P · Q + P · R

(P + Q) · (R + S) = P · R + P · S + Q · R + Q · S

Ova pravila mogu se dokazati rabeći tablicu stanja lijeve i desne strane jednakosti. Pokažimo npr. da

vrijedi prvo De Morganovo pravilo: (P + Q) = P · Q.

P Q P+Q P+Q P Q P · Q

0 0 0 1 1 1 1

0 1 1 0 1 0 0

1 0 1 0 0 1 0

1 1 1 0 0 0 0

Vidimo da su osjenčani stupci jednaki, dokazali smo da vrijedi pravilo. Na taj se način mogu dokazati i sva ostala pravila.

Primjer

Pojednostavnimo logičku operaciju A + A · B.

Rješenje: A + A · B = A · (1 + B) = A · 1 = A

Primjer

Pojednostavnimo logičku operaciju A · B + A · B + A · C + C

Do rješenja se može doći u 4 koraka:

1. korak (distribucija – izlučivanje A): A · (B + B) + A · C + C

2. korak (pravilo B + B = 1): A · 1 + A · C + C

3. korak (pravilo A · 1 = A): A + A · C + C

4. korak (distribucija – izlučivanje A): A · (1 + C) + C = A · 1 + C = A + C

Primjer

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 5: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 5

Pojednostavnimo logičku operaciju (A + B) · C + (A + D) · C

Do rješenja se može doći u 4 koraka:

1. korak (uklanjanje zagrada): A · C + B · C + A · C + D · C

2. korak (izlučivanje C): (A + B + A + D) · C

3. korak (komutacija): (A + A + B + D) · C

4. korak (pravilo A + A = A): (A + B + D) · C

Primjer

Pojednostavnimo logičku operaciju A · B · C + A · B · C + A · B · C + A · B · C

A · B · C + A · B · C + A · B · C + A · B · C = B · C · (A + A) + A · C · (B + B) = B · C + A · C

Primjer

Pojednostavnimo logičku operaciju A · B · C + A · B · C + A · B · C + A · B · C

A · B · C + A · B · C + A · B · C + A · B · C = B · C · (A + A) + A · C · (B + B) = B · C + A · C

Primjer

Logička operacija implikacije P=>Q može se zamijeniti logičkom operacijom P + Q.

Dokaz :

Tablica stanja za sve vrijednosti ulaznih varijabli jednaka je za oba izraza (sjenčan je pomoćni stupac varijable P):

P Q P => Q P Q P + Q

0 0 1 1 0 1

0 1 1 1 1 1

1 0 0 0 0 0

1 1 1 0 1 1

Tautologija i kontradikcija

Bez obzira na složenost logičke operacije njen konačni rezultat je jedan od dva moguća stanja: istina ili laž, T ili F, 0 ili 1. Rezultat ovisi o istinitosti ili lažnosti svake od izjava (svakog operanda) i o logičkoj operaciji.

Složeni logički izraz čiji je rezultat istinit bez obzira na istinitost izjava od kojih se sastoji naziva se tautologija. U tablici stanja složenog izraza rezultat je uvijek istinit (T), tj. ima sve vrijednosti 1.

Složeni logički izraz čiji je rezultat lažan bez obzira na istinitost izjava od kojih se sastoji naziva se kontradikcija. U tablici stanja složenog izraza rezultat je uvijek lažan (F) tj. ima sve vrijednosti 0.

Normalne forme

Za logički izraz koji zadovoljava određene uvjete kaže se da je u normalnoj formi.

Logički izraz je u konjunktivnoj normalnoj formi ako je to skup logičkih izraza međusobno povezanih operatorom I (konjunkcija, engl. AND). Svaki od povezanih izraza mora biti skup osnovnih logičkih izjava (operanada) ili negacija osnovnih logičkih izjava (operanada) povezanih operatorom ILI (disjunkcija, engl. OR). Primjeri logičkih izraza koji su u konjunktivnoj normalnoj formi su:

(A + B) · (A + C)

(A + B) · (A + B + D) · (B + D)

P · (Q + R + N + T) · (Q + W)

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 6: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 6

Treba uočiti da su osnovne izjave (operandi) međusobno povezani operatorom ILI (+), te da su tako oblikovani izrazi međusobno povezani operatorom I (·).

Rabeći konjuktivnu normalnu formu moguće je na temelju tablice stanja pronaći logički izraz koji ta tablica predstavlja. Postupak je ovaj:

1. Pronaći sve retke u tablici stanja u kojima je rezultat logičke operacije laž (F, 0).

2. U svakom retku u kojima je rezultat logičke operacije laž (F, 0) napisati logički izraz koji opisuje taj redak, a sastoji se od svih operanada povezanih s operatorom ILI (+).

3. U svakom retku u logičkom izrazu dobivenom u točki 2. svaki operand koji ima u tablici stanja vrijednost istina u tom retku (T, 1) treba negirati (invertirati). Operand koji u tablici stanja u tom retku ima vrijednost laž (F, 0) treba ostaviti netaknutog.

4. Na kraju treba sve tako dobivene logičke izraze povezati logičkim operatorom I (·).

Primjer

Neka je zadana tablica stanja kao na slici. Operandi su A i B, a rezultat logičke operacije je Y. Potrebno je pronaći logički izraz koji odgovara toj tablici stanja, tj. treba napisati logički izraz za Y. U stupcu „Logički izrazi konjunktivne normalne forme“ prikazani su članovi konjunktivne normalne forme dobiveni na temelju navedenih pravila.

A B Y Logički izrazi konjunktivne normalne forme

0 0 0 A + B

0 1 1

1 0 1

1 1 0 A + B

Zadatak se rješava prema opisanim koracima.

1. U tablici stanja rezultat logičke operacije je laž Y = 0 u prvom i četvrtom retku pa samo u tim recima treba napisati logičke izraze.

2. U prvom retku tablice stanja operand A = 0, B = 0, pa u logičkom izrazu treba ostaviti operande bez promjene. Logički izraz u prvom retku, dakle, glasi A + B. U četvrtom retku tablice stanja operand A = 1, B =1, pa u logičkom izrazu treba negirati A i B (svaki za sebe). Logički izraz u četvrtom retku, dakle, glasi A + B.

3. Konačni rezultat se dobije tako da se izraz iz prvog i četvrtog retka povežu operatorom I (·), pa se dobije izraz: (A + B) · (A + B). Taj se izraz može urediti: (A + B) · (A + B) = A · A + A · B + B · A + B · B = 1 + A · B + B · A + 1 = A · B + A · B.

4. Logički izraz dobiven opisanim postupkom jest Y = A · B + A · B.

Primjer

Neka je zadana tablica stanja kao na slici. Operandi su A, B i C, a rezultat logičke operacije je Y. Potrebno je pronaći logički izraz koji odgovara toj tablici stanja, tj. treba napisati logički izraz za Y. U stupcu „Logički izrazi konjunktivne normalne forme“ prikazani su članovi konjunktivne normalne forme dobiveni na temelju navedenih pravila.

A B C Y Logički izrazi konjunktivne normalne forme

0 0 0 1

0 0 1 1

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 7: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 7

0 1 0 0 A + B + C

0 1 1 0 A + B + C

1 0 0 1

1 0 1 0 A + B + C

1 1 0 1

1 1 1 1

Logički izraz u konjunktivnoj normalnoj formi prikazan tablicom stanja je: Y= (A + B + C) · (A + B + C) · (A + B + C).

Logički izraz je u disjunktivnoj normalnoj formi ako je to skup logičkih izraza međusobno povezanih operatorom ILI (disjunkcija, engl. OR). Svaki od povezanih izraza mora biti skup osnovnih logičkih izjava (operanada) ili negacija osnovnih logičkih izjava (operanada) povezanih operatorom I (konjunkcija, engl. AND). Primjeri logičkih izraza koji su u disjunktivnoj normalnoj formi su:

P · Q + W + P ·W

R + A · B + R · A + A · B · R

A · B · D + B · D + D · B · A + B · C · E

Treba uočiti da su osnovne izjave (operandi) međusobno povezani operatorom I (·), te da su tako oblikovani izrazi međusobno povezani operatorom ILI (+).

Na temelju tablice stanja moguće je pronaći logički izraz u disjunktivnoj formi. Postupak je ovaj:

1. Pronaći sve retke u tablici stanja u kojima je rezultat logičke operacije istina (T, 1).

2. U svakom retku u kojima je rezultat logičke operacije istina (T, 1) napisati logički izraz koji opisuje taj redak, a sastoji se od svih operanada povezanih s operatorom I (·).

3. U svakom retku u logičkom izrazu dobivenom u točki 2. svaki operand koji ima u tablici stanja vrijednost laž u tom retku (F, 0) treba negirati (invertirati). Operand koji u tablici stanja u tom retku ima vrijednost istina (T, 1) treba ostaviti netaknutog.

4. Na kraju treba sve tako dobivene logičke izraze povezati logičkim operatorom ILI (+).

Primjer

Neka je zadana tablica stanja kao na slici. Operandi su A i B, a rezultat logičke operacije je Y. Potrebno je pronaći logički izraz koji odgovara toj tablici stanja, tj. treba napisati logički izraz za Y. U stupcu „Logički izrazi disjunktivne normalne forme“ prikazani su članovi disjunktivne normalne forme dobiveni na temelju navedenih pravila.

A B Y Logički izrazi disjunktivne normalne forme

0 0 0

0 1 1 A · B

1 0 1 A · B

1 1 0

Zadatak se rješava prema opisanim koracima.

1. U tablici stanja rezultat logičke operacije je istina Y = 1 u drugom i trećem retku pa samo u tim recima treba napisati logičke izraze.

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 8: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 8

2. U drugom retku tablice stanja operand A = 0, B = 1, pa u logičkom izrazu treba negirati operand A. Logički izraz u drugom retku, dakle, glasi A · B. U trećem retku tablice stanja operand A = 1, B =0, pa u logičkom izrazu treba negirati operand B. Logički izraz u trećem retku, dakle, glasi A · B.

3. Konačni rezultat se dobije tako da se izraz iz drugog i trećeg retka povežu operatorom ILI (+), pa se dobije izraz: A · B + A · B.

4. Logički izraz dobiven opisanim postupkom jest Y = A · B + A · B.

Primjer

Neka je zadana tablica stanja kao na slici (stupci A, B, C i Y). Operandi su A, B i C, a rezultat logičke operacije je Y. Potrebno je pronaći logički izraz koji odgovara toj tablici stanja. U stupcu „Logički izrazi“ prikazani su članovi disjunktivne normalne forme dobiveni na temelju navedenih pravila.

A B C Y Logički izrazi dijunktivne normalne forme

0 0 0 1 A · B · C

0 0 1 1 A · B · C

0 1 0 0

0 1 1 0

1 0 0 1 A · B · C

1 0 1 0

1 1 0 1 A · B · C

1 1 1 1 A · B · C

Konačni je rezultat: Y= A · B · C + A · B · C + A · B · C + A · B · C + A · B · C

U primjerima dobivanja logičkog izraza u konjunktivnoj i disjunktivnoj normalnoj formi rabila se ista tablica stanja. Pokažite sređivanjem logičkih izraza da je dobiven rezultat u oba slučaja za istu tablicu stanja isti.

Primjer

Neka je zadana tablica stanja kao na slici (stupci P, Q i P => Q). Operandi su P i Q, a rezultat

logičke operacije je P => Q. Na temelju tablice stanja logičke operacije implikacije i pretvorbom u konjunktivnu i disjunktivnu normalnu formu pokazati da vrijedi: P=>Q = P + Q.

P Q P => Q Logički izrazi za konjunktivnu normalnu

formu

Logički izrazi za disjunktivnu normalnu formu

0 0 1 P · Q

0 1 1 P · Q

1 0 0 P + Q

1 1 1 P · Q

Za konjunktivnu normalnu formu rezultat je: P + Q.

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

1

Page 9: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 9

Za disjunktivnu normalnu formu rezultat je: P · Q + P · Q + P · Q = P · Q + (P + P) · Q =

P · Q + 1 · Q = P · Q + Q

Primijenimo dva puta operaciju negacije na dobiveni rezultat čime se ne mijenja rezultat logičke operacije. Nakon prve negacije dobije se izraz (P + Q) · Q = P · Q + Q · Q = P · Q. Nakon druge negacije dobije se izraz P + Q čime je dokazano da se u oba slučaja dobije isti rezultat.

Vježba 1. Logička algebra (vježba se nalazi u Radnim listovima i na CD-u)

Logički sklopovi

Računalo je elektronička naprava pa svoj rad temelji na električkim fizikalnim svojstvima. Obradba podataka unutar elektroničkog sustava, kakvo je računalo, moguća je samo s pomoću električkih veličina: napona i struje. Elektroničko računalo obrađivat će zato samo one podatke koji su predočeni električkim veličinama.

Postoji mnogo načina na koje bi se podatci mogli predočiti električkim veličinama, ali se pokazalo da je za električki prikaz podataka najpogodniji prikaz s dva stanja. Takav prikaz omogućuje jeftinu građu pouzdanih elektroničkih sklopova.

Sustavi koji mogu imati konačan broj stanja i kod kojih ne postoje međustanja zovu se digitalni sustavi. Digitalni sustav, primjerice, jest sklopka za paljenje svjetla jer može biti samo u jednom od dvaju stanja: uključeno ili isključeno. Digitalni sustav jest i prometna svjetlosna signalizacija (semafor), koji može biti u jednom od nekoliko stanja (crveno, žuto, zeleno, crveno-žuto, isključeno). Za razliku od digitalnih sustava, postoje i analogni sustavi, koji mogu poprimiti bilo koje stanje između krajnjih vrijednosti. Primjerice, namještanje glasnoće kod radioprijamnika jest analogno jer ima beskonačno mnogo mogućih stanja.

Kod digitalnih elektroničkih računala, a takva su praktički sva računala danas u uporabi, podatci se predočuju s pomoću dva moguća stanja: maksimalni napon i minimalni napon (npr. 0 V i 5 V). Zbog toga što je riječ o dvama stanjima, računala se zovu binarnima, a zbog toga što je riječ o odvojenim i jasno razlučivim stanjima, zovu se digitalnima. Digitalna binarna računala su, dakle, računala unutar kojih se podatci predočuju samo dvama, i to jasno odvojenim i razlučenim stanjima. Kako su velika većina računala u uporabi upravo digitalna binarna računala, to se u svakodnevnom govoru najčešće rabi naziv digitalna računala ili samo računala.

Zbog jednostavnosti jedno od stanja zove se logička nula i označava s “0” ili velikim slovom s potezom, npr. A (čita se A crtano ili A potez), a pridaje mu se jedna razina napona (npr. 0 V). Drugo se stanje zove logička jedinica i označava s “1” ili velikim slovom, npr. A, a pridaje mu se druga razina napona (npr. 5 V).

Očita je sličnost digitalnoga binarnog računala i logičke algebre. I u jednom i u drugom slučaju operandi mogu poprimiti jedno od dvaju mogućih stanja. To što je kod računala uobičajeno jedno stanje označivati s “0”, a ne sa F (odnosno drugo stanje sa “1”, a ne sa T) nije bitna razlika. Načela logičke algebre (operacije, operandi, pravila logičkih odnosa) mogu se zato primijeniti i kod digitalnih binarnih računala.

Osnovni logički sklopovi

Sklopovlje elektroničkog računala je vrlo složeno, ali su osnovni elementi od kojih je građeno računalo relativno jednostavni i ograničeni na nekoliko osnovnih tipova. Složeni sustavi grade se spajanjem više osnovnih elemenata. Osnovni se elementi zovu logički sklopovi ili vrata, a njihovo se ponašanje opisuje tablicom koja se zove tablica istinitosti ili tablica stanja. Osnovni logički sklopovi mogu imati jedan ili više ulaza i jedan izlaz.

Logička vrata Engl. naziv Oznaka

NE NOT

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 10: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 10

I AND

ILI OR

Isključivi ILI Exclusive OR

NI NAND

NILI NOR

NE vrata (logički sklop invertor, engl. inverter)

NE vrata su najjednostavnija logička vrata sa samo jednim ulazom i jednim izlazom. Na ulazu se može pojaviti “0” ili “1”. Stanje izlaza ovisno je o stanju ulaza i može se odrediti prema tablici.

A Y

0 1

1 0

NE vrata zovu se još i invertor jer “obrću” stanje ulaza. NE vrata su građena tako da oponašaju logičku operaciju negacije, pa su im zato tablice stanja jednake. Sukladno oznakama uvedenim kod logičke algebre, odnos stanja izlaza i ulaza logičkih NE vrata može se pisati:

Y = A

Stanje izlaza logičkih vrata možemo zamisliti kao istinitost ili lažnost logičke operacije (rezultat) predočene tim vratima.

I vrata (logički sklop I engl. AND)

I vrata su logički sklop ili logička vrata s dvama ili više ulaza i jednim izlazom. Na ulazima se mogu pojaviti bilo koje kombinacije “0” i “1”. Stanje izlaza ovisno je o stanju ulaza i može se odrediti prema tablici.

A B Y

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 11: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 11

0 0 0

0 1 0

1 0 0

1 1 1

Očito je iz tablice stanja da je izlaz “1” samo ako su oba ulaza “1”.

Treba uočiti sličnost I vrata s logičkom operacijom I. Vrata su građena tako da oponašaju logičku operaciju I. Može se zato pisati:

Y = A · B

NI vrata (logički sklop NI engl. NAND)

NI vrata su logički sklop ili logička vrata s dvama ili više ulaza i jednim izlazom. Na ulazima se mogu pojaviti bilo koje kombinacije “0” i “1”. Stanje izlaza ovisno je o stanju ulaza i može se odrediti prema tablici.

A B Y

0 0 1

0 1 1

1 0 1

1 1 0

Očito je iz tablice stanja da je izlaz “0” samo ako su oba ulaza “1”.

Treba uočiti da je izlaz NI vrata isti kao da se na izlaz I vrata nadovežu NE vrata (invertor). Kao logički izraz NI vrata se mogu pisati ovako:

Y = A · B

ILI vrata (logički sklop ILI engl. OR)

ILI vrata su logički sklop ili logička vrata s dvama ili više ulaza i jednim izlazom. Na ulazima se mogu pojaviti bilo koje kombinacije “0” i “1”. Stanje izlaza ovisno je o stanju ulaza i može se odrediti prema tablici.

A B Y

0 0 0

0 1 1

1 0 1

1 1 1

Očito je iz tablice stanja da je izlaz “1” ako je bilo koji od ulaza (ili oba) “1”.

Treba uočiti sličnost ILI vrata s logičkom operacijom ILI. Vrata su i građena tako da oponašaju logičku operaciju ILI. Može se zato pisati:

Y = A + B

NILI vrata (logički sklop NILI engl. NOR)

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 12: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 12

NILI vrata su logički sklop ili logička vrata s dvama ili više ulaza i jednim izlazom. Na ulazima se mogu pojaviti bilo koje kombinacije “0” i “1”. Stanje izlaza ovisno je o stanju ulaza i može se odrediti prema tablici.

A B Y

0 0 1

0 1 0

1 0 0

1 1 0

Očito je iz tablice stanja da je izlaz “1” samo ako su oba ulaza “0”.

Treba uočiti da je izlaz NILI vrata isti kao da se na izlaz ILI vrata nadovežu u NE vrata (invertor). Kao logički izraz NILI vrata se mogu pisati ovako:

Y = A + B

Isključivo ILI vrata (logički sklop isključivo ILI engl. exclusive OR, XOR)

Isključivo ILI vrata su logički sklop ili logička vrata s dvama ulazima i jednim izlazom. Na ulazima se mogu pojaviti bilo koje kombinacije “0” i “1”. Stanje izlaza ovisno je o stanju ulaza i može se odrediti prema tablici.

A B Y

0 0 0

0 1 1

1 0 1

1 1 0

Isključivo ILI vrata oponašaju istoimenu logičku operaciju (ta operacija nije spomenuta kod logičkih operacija). Operand logičke operacije označava se simbolom ʘ pa se operacija simbolički može prikazati:

Y = A ʘ B

Složeni logički sklopovi

Međusobnim spajanjem osnovnih logičkih sklopova moguće je sagraditi složene logičke sklopove koji sadržavaju stotine, tisuće, a u suvremenim računalima i milijune osnovnih logičkih sklopova. Bez obzira na složenost, uvijek je moguće sastaviti tablicu stanja logičkog sklopa koja se temelji na tablicama stanja svakog ugrađenoga osnovnoga logičkog sklopa.

Postupak ili algoritam građe složenoga logičkog sklopa na temelju logičke operacije jest:

5. Pojednostavniti logičku operaciju što je više moguće postupcima opisanim kod logičkih operacija.

6. Podijeliti logičku operaciju na dva dijela, tako da je između ta dva dijela jedan od osnovnih logičkih operatora.

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 13: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 13

7. Predočiti logičku operaciju logičkim vratima s jednim izlazom i dvama ulazima, pri čemu je izlaz cjelokupna logička operacija, jedan ulaz je jedan od dva dijela logičke operacije, a drugi ulaz drugi dio logičke operacije.

8. Ponoviti postupak za svaki od ulaza tako dobivenoga logičkog sklopa promatrajući logički izraz toga ulaza kao posebnu logičku operaciju.

9. Postupak ponavljati za svaki ulaz sve dok na ulazu logičkog sklopa ne bude samo jedan osnovni logički operand.

Primjer

Treba izraditi složeni logički sklop koji je opisan logičkim izrazom: A · B + C

Rješenje

Podijelimo logički izraz u dva dijela odijeljena osnovnim logičkim operatorom:

Prvi dio: Y = A · B

Drugi dio: C

Operand: + (operand ILI)

Logička vrata koja predočuju ovako rastavljenu logičku operaciju su ILI vrata (jer je logički operand između dva člana ILI).

Jedan od ulaza logičkog sklopa jest osnovni operand (C), pa je za taj ulaz postupak završen. Za drugi ulaz ponovno rastavimo logičku operaciju na dva dijela:

Prvi dio: A

Drugi dio: B

Operand: · (operand I)

Logička vrata koja predočuju ovako rastavljenu logičku operaciju su I vrata (jer je logički operator između dva člana I).

Prikazani logički sklop predočuje navedenu logičku operaciju.

Primjer

Treba izraditi složeni logički sklop koji je opisan logičkim izrazom: Y = A · B + C + A · D + C · D

Rješenje

Služeći se pravilima za pojednostavnjenje, može se logički izraz pojednostavniti:

Y= A · B+ A · D+ A · D+ C + C · DY = A · (B + D) + C · (1 + D)

Y = A · (B + D) + C

Podijelimo logički izraz u dva dijela odijeljena osnovnim logičkim operatorom:

Prvi dio: Y = A · (B + D)

Drugi dio: C

Operand: + (operand ILI)

Logička vrata koja predočuju ovako rastavljenu logičku operaciju su ILI vrata (jer je logički operand između dva člana ILI).

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 14: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 14

Jedan od ulaza logičkog sklopa jest osnovni operand (C), pa je za taj ulaz postupak završen. Za drugi ulaz ponovno rastavimo logičku operaciju na dva dijela:

Prvi dio: B + D

Drugi dio: A

Operand: · (operand I)

Logička vrata koja predočuju ovako rastavljenu logičku operaciju su I vrata (jer je logički operator između dva člana I).

Jedan od ulaza logičkog sklopa jest osnovni operand (A), pa je za taj ulaz postupak završen. Za drugi ulaz ponovno rastavimo logičku operaciju na dva dijela:

Prvi dio: B

Drugi dio: D

Operand: + (operand ILI)

Logička vrata koja predočuju ovako rastavljenu logičku operaciju su ILI vrata (jer je logički operator između dva člana ILI).

Prikazani logički sklop predočuje navedenu logičku operaciju. Valja primijetiti da je logičku operaciju bilo moguće rastaviti i na drugačiji način, pa bi tada složeni logički sklop izgledao drugačije. U oba bi slučaja, međutim, ponašanje cjelokupnoga logičkog sklopa bilo istovjetno. Time je zadatak riješen.

Primjer

Treba izraditi složeni logički sklop koji je opisan logičkim izrazom: Y = A · (B + C) + D

Navedena logička operacija ne može se pojednostavniti, pa se primjenjujući navedeni postupak, dobiva složeni logički sklop kao na slici.

Primjer

Treba napisati tablicu stanja i logički izraz za logički sklop prema slici.

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 15: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 15

U tablici stanja treba popunjavati stupce ovim redom:

a) Najprije popuniti stupce A,B i C tako da su zastupljene sve moguće kombinacije stanja.

b) Popuniti stupac Y1 = A + B.

c) Popuniti stupac Y2 = Y1.

d) Popuniti stupac Y = Y2 + C.

A B C Y1 = A + B Y2 = Y1 Y = Y2 + C

0 0 0 0 1 1

0 0 1 0 1 1

0 1 0 1 0 0

0 1 1 1 0 1

1 0 0 1 0 0

1 0 1 1 0 1

1 1 0 1 0 0

1 1 1 1 0 1

Pri izradi tablice stanja treba krenuti s lijeva i popunjavati vrijednosti za izlaze pojedinih logičkih sklopova udesno tako da svaki idući sklop udesno ima već riješena stanja za svoje ulaze.

Logički izraz za sklop se može dobiti ovako

a) Krenuti s desne strane, od izlaza logičkog sklopa i napisati logički izraz za logička vrata kojima pripada taj izlaz: Y = Y2 + C.

b) Za svaki član tog izraza koji NIJE osnovni operand napisati logički izraz pripadnih logičkih vrata: Y = (Y2) + C = (Y1) + C = (A + B) + C = A · B + C. U zadnjem koraku je primijenjeno De Morganovo pravilo.

Primjer

Treba napisati tablicu stanja i logički izraz za logički sklop prema slici.

U tablici stanja treba popunjavati stupce ovim redom:

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 16: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 16

e) Najprije popuniti stupce A,B i C tako da su zastupljene sve moguće kombinacije stanja.

f) Popuniti stupac Y1 = B.

g) Popuniti stupac Y2 = B + C.

h) Popuniti stupac Y3 = A + Y1.

i) Popuniti stupac Y = Y2 · Y3.

A B C Y1 = B Y2 = B + C Y3 = A + Y1 Y = Y2 · Y3

0 0 0 1 0 1 0

0 0 1 1 1 1 1

0 1 0 0 1 0 0

0 1 1 0 1 0 0

1 0 0 1 0 1 0

1 0 1 1 1 1 1

1 1 0 0 1 1 1

1 1 1 0 1 1 1

Pri izradi tablice stanja treba krenuti s lijeva i popunjavati vrijednosti za izlaze pojedinih logičkih sklopova udesno tako da svaki idući sklop udesno ima već riješena stanja za svoje ulaze.

Logički izraz za sklop se može dobiti ovako

c) Krenuti s desne strane, od izlaza logičkog sklopa i napisati logički izraz za logička vrata kojima pripada taj izlaz: Y = Y2 · Y3.

d) Za svaki član tog izraza koji NIJE osnovni operand napisati logički izraz pripadnih logičkih vrata: Y = (Y2) · (Y3) = (B + C) · (A + Y1) = (B + C) · (A + B) = B · A + B · B + C · A + C · B = A · B + A · C + B · C.

Primjer Treba napisati tablicu stanja i logički izraz za logički sklop prema slici.

A B Y1 = B Y2 = A Y3 = Y1 + A Y4 = Y2 + B Y = Y3 · Y4

0 0 1 1 1 1 1

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 17: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 17

0 1 0 1 0 1 0

1 0 1 0 1 0 0

1 1 0 0 1 1 1

Y = Y3 · Y4 = (Y1 + A) · (Y2 + B) = (B + A)· (A + B) = B · A + B · B + A · A + A · B = A · B + A · B.

Sklop za zbrajanje binarnih brojeva

Sklop za zbrajanje binarnih brojeva je primjer primjene logičkih sklopova u računalu. To je složeni slijedni logički sklop čiji izlaz odgovara zbroju dva binarna broja na ulazu.

Pravilo za zbrajanje dva binarna broja je:

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 0 i 1 dalje

Ako prvi pribrojnik označimo s A, drugi s B, rezultat s Y i prijenos s C tablica stanja logičkog sklopa za zbrajanje dva jednoznamenkasta binarna broja ima oblik:

A B Y C

0 0 0 0

0 1 1 0

1 0 1 0

1 1 0 1

Zanemarimo za trenutak prijenos i pronađimo disjunktivnu normalnu formu logičkog izraza koji odgovara tablici stanja za zbroj:

A B Y Logički izrazi za disjunktivnu normalnu formu

0 0 0

0 1 1 A · B

1 0 1 A · B

1 1 0

Disjunktivna normalna forma logičkog izraza je: Y = A · B + A · B. Logički sklop koji odgovara tom izrazu je:

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 18: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 18

Na isti se način može naći disjunktivna normalna forma logičkog izraza za prijenos:

A B C Logički izrazi za disjunktivnu normalnu formu

0 0 0

0 1 0

1 0 0

1 1 1 A · B

Disjunktivna normalna forma logičkog izraza je: Y = A · B. Logički sklop koji odgovara izrazu je:

Povežu li se ta dva sklopa u jedan dobije se sklop:

Izlaz sklopa na slici odgovara zbroju dva jednoznamenkasta binarna broja A i B. Rezultat zbroja je Y, a prijenos je C. Sklop na slici poznat je pod nazivom poluzbrajalo (engl. half adder).

Ako se želi zbrajati dva višeznamenkasta binarna broja tada treba uzeti u obzir prijenos (vidi pravila zbrajanja višeznamenkastih binarnih brojeva). To znači da treba zbrojiti tri binarne znamenke pri zbrajanju znamenki na pojedinom težinskom mjestu binarnih brojeva (dvije znamenke binarnih brojeva i prijenos sa susjednih znamenaka niže težinske vrijednosti). Tablica stanja za zbrajanje tri binarna broja A + B + C je:

A B C Y C1 Logički izrazi za Logički izrazi za

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 19: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 19

disjunktivnu normalnu

formu za Y

disjunktivnu normalnu

formu za C1

0 0 0 0 0

0 0 1 1 0 A · B · C

0 1 0 1 0 A · B · C

0 1 1 0 1 A · B · C A · B · C

1 0 0 1 0 A · B · C

1 0 1 0 1 A · B · C A · B · C

1 1 0 0 1 A · B · C A · B · C

1 1 1 1 1 A · B · C A · B · C

Disjunktivna normalna forma logičkog izraza za zbroj je: Y = A · B · C + A · B · C + A · B · C + A · B · C + A · B · C + A · B · C + A · B · C. Nakon sređivanja izraz glasi: Y = A · B · C + B · C + C.

Disjunktivna normalna forma logičkog izraza za prijenos je: C1 = A · B · C + A · B · C + A · B · C + A · B · C. Nakon sređivanja izraz glasi:C1 = A · C + B · C. Logički sklop koji odgovara navedenim izrazima je:

Takav je sklop poznat pod nazivom potpuno zbrajalo (engl. full adder).

Postoje i brojne druge mogućnosti konstrukcije logičkog sklopa koji će obavljati istu funkciju. Jedna od mogućnosti je npr. drugačije srediti logičke izraze disjunktivne normale forme. Druga mogućnost je rabiti poluzbrajalo kao dio potpunog zbrajala.

Moguće je izraditi logički sklop koji zbraja višeznamenkasti binarni broj. Napišimo dva binarna višeznamenkasta broja u obliku:

A = … A2 A1 A0

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 20: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 20

B = … B2 B1 B0

I rezultat njihovog zbroja u obliku:

Y = … Y3 Y2 Y1 Y0

Gdje su s indeksom nula označene krajnje desne znamenka, s indeksom jedan susjedne itd.

C3 C2 C1 C0 Prijenos

… … A2 A1 A0 Pribrojnik A

… … B2 B1 B0 Pribrojnik B

… Y3 Y2 Y1 Y0 Rezultat

Zbrajanje višeznamenkastog binarnog broja moguće je spajanjem više punih zbrajala prema slici:

Puno zbrajalo

Puno zbrajalo

Puno zbrajalo

Puno zbrajalo

A0

B0

A1

B1

A2

B2

A3

B3

Y0

C0 Y1

Y2

Y3

C3

C1

C2

0

Krajnje desne znamenke pribrojnika A i B su označene s indeksom 0. Znamenke lijevo do njih indeksom 1 itd. Krajnje desna znamenka rezultata Y je označena indeksom 0. Znamenka lijevo od nje indeksom 1 itd. Kako kod krajnje desnih znamenki pribrojnika nema prijenosa treća je znamenka kod potpunog zbrajala koje zbraja krajnje desne znamenke pribrojnika jednaka 0. Kako je u tom slučaju riječ o zbrajanju samo dva binarna jednoznamenkasta broja umjesto potpunog zbrajala na tom se mjestu može rabiti i poluzbrajalo. Prijenos pojedinog zbrajanja je označen slovom C i odgovarajućim indeksom.

I ovakav se zadatak može riješiti na mnogo načina. Npr. tako da se napiše tablica stanja i iz nje izvedu normalne forme logičkih izraza i zatim na temelju toga konstruira logički sklop. Ovisno o odabranim normalnim formama logičkog izraza i o načinu sređivanja izraza mogu se dobiti različiti logički sklopovi koji će obavljati istu zadaću. Postoje postupci kojima je moguće pronaći takav izraz za koji je potrebno utrošiti najmanje logičkih sklopova a da cjelokupan sklop još uvijek obavlja istu zadaću.

Slijedni logički sklopovi

Izlaz svih do sad opisanih logičkih sklopova ovisi samo o stanju ulaza. Ako je poznato stanje ulaza na temelju tablice stanja može se sa sigurnošću ustanoviti i stanje izlaza. Drugim riječima da bi se ustanovilo stanje izlaza dovoljno je znati stanje ulaza. Za isto stanje ulaza i izlaz će biti isti.

Slijedni ili sekvencijalni logički sklopovi su takvi logički sklopovi kod kojih izlaz ovisi o stanju ulaza ali i o trenutnom stanju logičkog sklopa. To znači da takvi sklopovi mogu biti u više različitih unutarnjih stanja. Da bi se ustanovilo stanje izlaza slijednog logičkog sklopa treba znati stanje ulaza ali i unutarnje stanje sklopa. To znači da za isto stanje ulaza izlaz sklopa može biti različit, ovisno o unutarnjem stanju sklopa.

Slijedni sklopovi nužno moraju imati memoriju tj. sposobnost pamćenja stanja u kojem se nalaze. Primjer jednostavnog slijednog sklopa je bistabil. To je sklop koji može biti u jednom od dva stanja.

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 21: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 21

Izlaz bistabila ovisi o stanju u kojem se nalazi i o stanju na svojim ulazima. Analiza rada slijednih logičkih sklopova je mnogo složenija od analize do sad spomenutih logičkih sklopova i neće biti ovdje opisana.

Vježba 2. Logički sklopovi (vježba se nalazi u Radnim listovima i na CD-u)

Sažetak

Logička ili Booleova algebra sustav je teorema koji rabe simboličku logiku da bi opisali skupove elemenata i odnose među njima. Razvojem digitalnih računala otkriveno je da je Booleova algebra vrlo dobro primjenjiva u konstruiranju i analizi rada računala.

Logičke operacije su: NE (engl. NOT), I (engl. AND) i ILI (engl. OR), implikacija i ekvivalencija.

Tablica stanja izražava odnose među operandima ovisno o logičkoj operaciji. Tablica stanja definicija je logičke operacije i mora sadržavati sva moguća stanja operanada i logičke operacije.

Složeni logički izraz čiji je rezultat istinit bez obzira na istinitost izjava od kojih se sastoji naziva se tautologija. Složeni logički izraz čiji je rezultat lažan bez obzira na istinitost izjava od kojih se sastoji naziva se kontradikcija.

Osnovne logičke operacije mogu se kombinirati u složene operacije. Često je složene logičke operacije moguće pojednostavniti služeći se nizom jednostavnih pravila.

Za logički izraz koji zadovoljava određene uvjete kaže se da je u normalnoj formi (disjunktivnoj ili konjunktivnoj).

Kod digitalnih elektroničkih računala, a takva su praktički sva računala danas u uporabi, podatci se predočuju s pomoću dva moguća stanja: maksimalni napon i minimalni napon. Logički sklopovi predočuju logičke operacije uporabom električkih veličina i osnovni su element elektroničkih računala. Načela logičke algebre (operacije, operandi, pravila logičkih odnosa) mogu se primijeniti i kod digitalnih binarnih računala.

Sklop za zbrajanje dva binarna broja naziva se poluzbrajalo (engl. half adder), a sklop za zbrajanje tri jednoznamenkasta binarna broja potpuno zbrajalo (engl. full adder).

Pitanja za provjeru znanja

1. Koje su osnovne logičke operacije?

2. Što je tablica stanja?

3. Što je osnovni element logičke algebre?

4. Kako je uobičajeno označivati dva moguća stanja izjava (sudova) logičke algebre?

5. Što su operatori, a što operandi logičke algebre?

6. Koji su osnovni operatori logičke algebre?

7. Što je i čemu služi tablica stanja?

8. Koja je logička operacija tautologija, a koja kontradikcija?

9. Koje uvjete mora zadovoljavati logički izraz da bi bio u disjunktivnoj, a koje da bi bio u konjunktivnoj normalnoj formi?

10. Koji se simboli koriste za logičke operatore: NE, I, ILI, isključivo ILI?

11. Što su logički sklopovi?

12. Koja je temeljna razlika između digitalnih i analognih sustava?

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 22: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 22

13. Kakva su to digitalna binarna računala?

14. Koji su osnovni logički sklopovi?

15. Koji se shematski simboli rabe za osnovne logičke sklopove?

16. Koko se iz tablice stanja može konstruirati logički sklop koji odgovara toj tablici?

17. Može li se na temelju iste tablice stanja konstruirati više različitih logičkih sklopova koji se ponašaju sukladno tablici stanja?

18. Čemu služe logički sklopovi koji se nazivaju poluzbrajalo (engl. half adder) i potpuno zbrajalo (engl. full adder).

Zadatci za vježbu

1. Napišite tablicu stanja za sljedeće logičke operacije:

a. Y = A + B,

b. Y = A • (B + C),

c. Y = A • B • C + D,

d. Y = (A + B) • (C + D),

e. Y = A + B • C + A • C.

f. Y = A • B + A • C + A • D,

2. Pojednostavnite sljedeće logičke operacije:

a. Y = A • B + A • B + A • C + B • D,

b. Y = A • (B + C) + B • (A + D) + C • (A + D),

c. Y = X • (Q + P) + X • P + Q.

3. Nacrtajte logički sklop koji predočuje sljedeće logičke operacije:

a. Implikaciju

b. Ekvivalenciju

c. Y = A • (B + C) + B,

d. Y = A • B + A • C + B • C,

e. Y = X + Q • (P + X) + Q • P,

f. Y = V • (W + Z + R) + W • (Z + R) + R.

4. Napisati tablicu stanja i logički izraz za ove logičke sklopove:

a.

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2

Page 23: 9. BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI

090_BLG_Booleova_algebra_20090212_02 12.2.2009

BOOLEOVA ALGEBRA I LOGIČKI SKLOPOVI 23

b.

c.

Bo

ole

ov

a a

lgeb

ra i l

og

ički

sklo

po

vi

2