15
5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske discipline imaju matematičku podlogu na osnovu koje razvijaju svoje koncepte. Razvoj digitalnih sistema, uključujući i računarske sisteme, nije različit u tom pogledu. U konkretnom slučaju, matematička osnova se naziva Bulova (Boolean) algebra. Džordž Bul (George Bool) je prvi matematičar koji je 1854. godine publikovao knjigu pod naslovom An Investigation of the Laws of Thought u koju je opisao rigoroznu matematičku strukturu koja se odnosi na ispitivanje načina rezonovanja. Sve do kasnih tridesetih godina ovog veka Bulova algebra u suštini nije naišla ni na kakvu praktičnu primenu. Japanski naučnik Nakašima (A. Nakashima) 1937. godine i naredne godine Šenon (C. E. Shanon) sa MIT-a (Massachusetts Institut of Technology), svaki nezavisno, su primenili Bulovu algebru za analizu mreže sa relejima. Ovo je bila veoma važna aplikacija, jer su telefonski sistemi u to vreme bili u brzom razvoju pa je bilo neophodno koristiti neki pogodan matematički aparat kojim bi se opisivale željene komutacije i način ostvarivanja veza. Od tog trenutka, Bulova algebra je doživela neviđenu ekspanziju u svakoj primeni. U prilog ovoj konstataciji ide svakako i činjenica da su današnji sistemi sve više digitalni. Zbog važnosti prekidačke algebre kod projektovanja ne samo računara, nego i komunikacionih sistema, sistema upravljanja i bilo kojeg drugog sistema koji zahteva ili koristi digitalnu tehnologiju, veoma je važno da se razume značaj ove algebre. U ovoj glavi definisaćemo osnovne pojmove koji se odnose na Bulovu algebru i njen podskup - prekidačku algebru. 5.1. Osnovni postulati i teoreme Algebra se definiše skupom iskaza koji se prihvataju kao činjenice. Ove iskaze nazivamo aksiomima ili postulatima algebre. Jedan od ciljeva matematičara je da izvrše redukciju broja potrebnih postulata kojim se definiše algebra na minimalan konzistentan skup. Godine 1904. je Hantington (E. V. Huntington) redukovao definiciju Bulove algebre na minimalan skup postulata. On je ustanovio da se svi rezultati i implikacije algebre koju je opisao Bul mogu svesti na samo šest osnovnih postulata. Koristeći ovih šest postilata, Hantington je definisao Bulovu algebru na sledeći način. Četvorka (B, +, ,), gde je B skup elemenata ili konstanti algebre, + i dva binarna operatora a simbolunarni operator, naziva se Bulovom algebrom ako su zadovoljeni sledeći aksiomi: 1. Zatvorenost: za svaki element a i b iz skupa B važi (i) a+b je element B, i (ii) ab je element B. 2. Postojanje neutralnih elemenata za operacije + i (i) postoji element 0 iz B takav da za svako a iz B važi 0+a = a+0 = a, i (ii) postoji element 1 iz B takav da sa svako a iz B važi 1a = a1 = a. 0,1B aB (i) (ii). 3. Komutativnost: za sve elemente a i b u skupu B važi (i) a+b = b+a, i (ii) ab = ba. 4. Distributivnost: za sve elemente a, b i c u skupu B važi (i) a(b+c) = ab + ac, i (ii) a+(bc) = (a+b)(a+c). 5. Postojanje inverznog elementa: Za svaki element a iz skupz B postoji u B elementa, takav da važi (i) a +a =1, i (ii) a a = 0. 6. U skupu B postoje najmanje dva različita elementa, tj. 0 1.

Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

  • Upload
    others

  • View
    14

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA

Sve inženjerske discipline imaju matematičku podlogu na osnovu koje razvijaju svoje koncepte. Razvoj digitalnih sistema, uključujući i računarske sisteme, nije različit u tom pogledu. U konkretnom slučaju, matematička osnova se naziva Bulova (Boolean) algebra. Džordž Bul (George Bool) je prvi matematičar koji je 1854. godine publikovao knjigu pod naslovom An Investigation of the Laws of Thought u koju je opisao rigoroznu matematičku strukturu koja se odnosi na ispitivanje načina rezonovanja. Sve do kasnih tridesetih godina ovog veka Bulova algebra u suštini nije naišla ni na kakvu praktičnu primenu. Japanski naučnik Nakašima (A. Nakashima) 1937. godine i naredne godine Šenon (C. E. Shanon) sa MIT-a (Massachusetts Institut of Technology), svaki nezavisno, su primenili Bulovu algebru za analizu mreže sa relejima. Ovo je bila veoma važna aplikacija, jer su telefonski sistemi u to vreme bili u brzom razvoju pa je bilo neophodno koristiti neki pogodan matematički aparat kojim bi se opisivale željene komutacije i način ostvarivanja veza. Od tog trenutka, Bulova algebra je doživela neviđenu ekspanziju u svakoj primeni. U prilog ovoj konstataciji ide svakako i činjenica da su današnji sistemi sve više digitalni. Zbog važnosti prekidačke algebre kod projektovanja ne samo računara, nego i komunikacionih sistema, sistema upravljanja i bilo kojeg drugog sistema koji zahteva ili koristi digitalnu tehnologiju, veoma je važno da se razume značaj ove algebre. U ovoj glavi definisaćemo osnovne pojmove koji se odnose na Bulovu algebru i njen podskup - prekidačku algebru.

5.1. Osnovni postulati i teoreme

Algebra se definiše skupom iskaza koji se prihvataju kao činjenice. Ove iskaze nazivamo aksiomima ili postulatima algebre. Jedan od ciljeva matematičara je da izvrše redukciju broja potrebnih postulata kojim se definiše algebra na minimalan konzistentan skup. Godine 1904. je Hantington (E. V. Huntington) redukovao definiciju Bulove algebre na minimalan skup postulata. On je ustanovio da se svi rezultati i implikacije algebre koju je opisao Bul mogu svesti na samo šest osnovnih postulata. Koristeći ovih šest postilata, Hantington je definisao Bulovu algebru na sledeći način. Četvorka (B, +, ⋅,⎯ ), gde je B skup elemenata ili konstanti algebre, + i ⋅ dva binarna operatora a simbol⎯ unarni operator, naziva se Bulovom algebrom ako su zadovoljeni sledeći aksiomi: 1. Zatvorenost: za svaki element a i b iz skupa B važi (i) a+b je element B, i (ii) a⋅b je element B. 2. Postojanje neutralnih elemenata za operacije + i ⋅ (i) postoji element 0 iz B takav da za svako a iz B važi 0+a = a+0 = a, i (ii) postoji element 1 iz B takav da sa svako a iz B važi 1⋅a = a⋅1 = a. ∃0,1∈B ∴ ∀a∈B ⇒ (i) ∧ (ii). 3. Komutativnost: za sve elemente a i b u skupu B važi (i) a+b = b+a, i (ii) a⋅b = b⋅a. 4. Distributivnost: za sve elemente a, b i c u skupu B važi (i) a⋅(b+c) = a⋅b + a⋅c, i (ii) a+(b⋅c) = (a+b)⋅(a+c). 5. Postojanje inverznog elementa: Za svaki element a iz skupz B postoji u B element⎯a, takav da važi (i) a +⎯a =1, i (ii) a ⋅⎯a = 0. 6. U skupu B postoje najmanje dva različita elementa, tj. 0 ≠ 1.

Page 2: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

RAČUNARSKI SISTEMI: Principi digitalnih sistema 54

Termini binarni operator i unarni operator odnose se na broj argumenata koji su uključeni u operaciju: dva ili jedan, respektivno. Prekidačka algebra je Bulova algebra kod koje je broj elemenata u skupu B jednak 2. Binarni operatori koji se predstavljaju znacima + i ⋅ nazivaju se OR i AND, tj. ILI i I, respektivno, dok se unarni operator koji se predstavlaja znakom⎯ naziva NOT, tj. NE, ili operator komplement. Pre nego što zaključimo razmatranja koja se odnose na prekidačku algebru neophodno je da sagledamo neke algebarske implikacije ovih postulata, pre svega uvođenjem nekih definicija, a zatim dokazom određenih teorema koje će nam biti od koristi u daljem razmatranju. Napomenimo još da se najčešće proizvodi tipa a⋅b pišu kao ab, izostavljajući ali podrazumevajući operator ⋅. Definicija 5.1.1. Ako je A Bulov izraz, pod dualnim Bulovim izrazom A* podrazumevaćemo Bulov izraz koji se dobija kada se u izrazu A operacije + zamene operacijama ⋅, operacije ⋅ zamene operacijama +, a konstante zamene njihovim komplementima. Teorema 5.1.2. Princip dualnosti. Ako iskaz A zadovoljava aksiome Bulove algebre, tada i njegov dualni iskaz A* takođe zadovoljava aksiome Bulove algebre. Pokazaćemo nekoliko osnovnih teorema Bulove algebre: Teorema 5.1.3. Zakon idempotencije (zakon nevaženja stepenovanja) ∀a,b∈B ⇒ (i) a+a = a (ii) a⋅a = a Dokaz: (i) a+a = (a + a)⋅1 prema aksiomu (2) (ii) a⋅a = a⋅a + 0 prema aksiomu (2)

= (a + a)(a + a ) prema aksiomu (5) = a⋅a + a⋅a prema aksiomu (5) = a + a⋅a prema aksiomu (4) = a⋅(a+a ) prema aksiomu (4) = a + 0 prema aksiomu (5) = a⋅1 prema aksiomu (5) = a prema aksiomu (2) = a prema aksiomu (2)

Teorema 5.1.4. U Bulovoj algebri komplement elementa a, u oznaci a je jedinstven. Dokaz: Pretpostavićemo suprotno: da ipak postoji još jedan element b≠a , koji predstavlja inverzni element elementa a i koji, prema tome, zadovoljava aksiom (5), tj. a+b=1 i a⋅b=0.

b = b⋅1 (2) b = (a+a )b (5) b = a⋅b + a ⋅b (4) b = 0 + a ⋅b po pretpostavci b = a⋅a + a ⋅b (5) b = a (a + b) (4) b = a ⋅1 po pretpostavci b = a (2)

Dakle, došli smo do protivurečnosti, pa je inverzni element jedinstven. Teorema 5.1.5. Zakon involucije operacije negacije - zakon dvojne negacije. ∀a∈B ⇒ a = a Dokaz: a +a = a+a = 1 a ⋅a = a⋅a = 0 Ako uzmemo da je x = a , tada je, prema aksiomu o inverznom elementu, a =⎯x, a otuda dobijamo da je a = a .

Teorema 5.1.6. ∀a∈B ⇒ (i) a+1 = 1

(ii) a⋅0 = 0 Dokaz: (i) a+1 = (a+1)⋅1 a+1 = (a+1)(a+a )

Page 3: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. Bulova i prekidačka algebra i elementarna logička kola 55

a+1 = a + 1⋅a a+1 = a + a a+1 = 1 (ii) Prema principu dualnosti. Teorema 5.1.7. De Morganova Teorema. ∀a,b∈B ⇒ (i) a + b = a b⋅ (ii) ba=ab + Dokaz: (i) Pokažimo najpre a+b+a b⋅ = 1 (5.1) (a+b)⋅a b⋅ = 0 (5.2)

a+b+a b⋅ = (a+b+a )(a+b+b ) = = (b+1)(a+1) = = 1⋅1 = = 1

(a+b)⋅a b⋅ = a b a + a b b = = 0⋅b + a⋅0 = 0 + 0 = 0

Kako važi (5.1) i (5.2) i uz aksiom o inverznom elementu, jasno je da je ispunjena relacija (i). (ii) Prema principu dualnosti. Sledeće dva teoreme čitalac može da pokuša sam da dokaže. Teorema 5.1.8. Opšta De Morganova teorema. ∀xi∈B, i = 1, ..., n ⇒ (i) x x x x x xn n1 2 1 2+ + + = ⋅ ⋅ ⋅K K (ii) x x x x x xn n1 2 1 2⋅ ⋅ ⋅ = + + +K K Teorema 5.1.9. Generalisana De Morganova teorema. Ako je A Bulov izraz u kome se pojavljuju operacije +, ⋅ i⎯ , tada važi

A x x A x xn n( , , ) ( , , )1 1K K= ∗

Primer 5.1:

De Morganova teorema igra veoma značajnu ulogu kod projektovanja hardvera računara. Koristeći De Morganovu teoremu i neke od rezultata iz odeljka 5.1 pojednostaviti sledeće iskaze: a) x y z w+ +( ) ,

b) [ ( )]( )( )x y z y wz x z+ + + .

Odgovor:

a)

x y z w x y z w

x y z w

x y zwx y zwxy xzw

+ + = +

= + +

= +

= +

= +

( ) ( )

( )

(( )

) b)

[ ( )]( )( ) ( )

( )( )

x y z y wz x z x y z y wz x z

x y z ywz x z

x y z y w z x zx y z y w z x z

+ + + = + + + + +

= + + + +

= + + + + +

= + + + + +

Teorema 5.1.10. Zakon apsorpcije.

∀a,b∈B ⇒ (i) a+ab = a (ii) a(a+b) = a

Page 4: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

RAČUNARSKI SISTEMI: Principi digitalnih sistema 56

Dokaz: (i) a + ab = a⋅1 + ab =

= a(1+b) = = a⋅1 = = a

(ii) Prema principu dualnosti. Teorema 5.1.11. Zakon sažimanja. ∀a,b∈B ⇒ (i) ab + ab = a (ii) (a+b)(a+b ) = a Dokaz: Direktna primena aksiome o distributivnosti i aksiome o inverznom elementu.

Primer 5.2:

Pojednostaviti sledeći izraz: ( )( )(ab ac a b a c+ + + ).

Odgovor: ( )( )( ) ( )( )( )(

( )( )( )(

( )( )

ab ac a b a c a c a b a b a c

a c a c a b a b

a cc a bbaa

+ + + = + + + +

= + + + +

= + +

=

)

)

= 0

Primer 5.3

Šta se dobija komplementiranjem izraza a b c uv+ +( ) i kakav se zaključak na osnovu dobijenog rezultata može izvesti?

Odgovor:

Kada se izraz a b c uv+ +( ) komplementira imaćemo a b c uv ab c uv

a b cuv

a b c u v

+ + = +

= +

= + +

( ) ( )

( )

( ( ))

Zaključujemo da se komplement izraza dobija zamenom +(OR) sa ⋅ (AND) i obrnuto, i zamenom elementa njegovim komplementom.

Primer 5.4

Pojednostavi sledeći izraz ( )x y wz xyv vwz+ + +

Odgovor:

Ako usvojimo da je xy a= i wz = b, tada ( )

( )

x y wz xyv vwz ab av bvab avx y wz xyv

+ + + = + +

= +

= + +

5.2. Prekidačka algebra

Ako na skupu B = {0,1} definišemo operacije +, ⋅ i⎯ na sledeći način

Page 5: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. Bulova i prekidačka algebra i elementarna logička kola 57

+ 0 1 ⋅ 0 1 ⎯ 0 1 0 0 1 0 0 0 1 0 1 1 1 1 0 1

tada se može pokazati da skup B zajedno sa navedenim operacijama zadovoljava aksiome Bulove algebre (dokaz se može sprovesti metodom savršene indukcije). Bulova algebra na skupu od dva elementa naziva se prekidačka algebra. Napomenimo da ćemo nadalje u tekstu podrazumevati da radimo sa prekidačkom algebrom, tj. da je B = {0,1}.

5.2.1. Prekidačke funkcije i izrazi Ako na skupu B definišemo preslikavanje

f : Bn → B tada se preslikavanje f naziva prekidačkom funkcijom (još i Bulovom ili logičkom funkcijom). Elementi skupa B su uređene n-torke

(x1, x2, ... , xn), xi ∈ B koje nazivamo vektorima ili slogovima ili tačkama. Takvih uređenih n-torki ima ukupno 2n. Pod prekidačkim izrazom podrazumevamo izraz koji se dobija primenom konačnog broja puta operacija +, ⋅ i ⎯ nad promenljivama i konstantama iz skupa B.

5.2.2. Zadavanje prekidačkih funkcija Kako prekidačke funkcije imaju konačnu oblast definisanosti, to je moguće vršiti njihovo zadavanje u obliku liste svih slogova sa odgovarajućim vrednostima funkcije na tim slogovima. Ovakve liste nazivamo istinitosne ili kombinacione tablice. Opšti oblik jedne takve tablice dat je na slici 5.1.

x1 x2 ... xn f 0 0 ... 0 f(0, 0, ... , 0) 0 0 . .. 1 f(0, 0, . , 1) ... . .

. . . . . .

. . . . . .

1 1 1 1 f(1, 1, ... , 1)

Sl. 5.1. Opšti oblik kombinacione tablice.

Funkcija može da ima vrednosti 0 ili 1 na pojedinim slogovima, ali se mogu javljati i nedefinisane vrednosti (što se obično označava sa x ili *, a tumači tako da funkcija na tom slogu može biti jednaka 0 ili 1). Uz malo kombinatorike, može se zaključiti da potpuno definisanih funkcija sa n promenljivih može biti 22

n

. Umesto uređenim n-torkama može se baratati njihovim decimalnim indeksima koji su zapravo dekadni ekvivalenti binarnih brojeva koji predstavljaju određene slogove, tj.

i xkn k

k

n

= −

=∑ 2

1.

Kombinaciona tablica funkcije se može u potpunosti odrediti i zadavanjem skupova decimalnih indeksa slogova na kojima funkcija ima vrednost 1, 0 ili x. Te skupove označavamo redom sa f (1), f (0) i f (x). Vrednosti funkcije na slogovima formiraju vektor istinitosti

Kf = (f(0), f(1), ... , f(2n-1)). Kombinaciona tablica je u potpunosi definisana ako znamo vektor istinitosti funkcije. Brojni indeks funkcije je dekadni zapis binarnog broja čije su cifre elementi vektora istinitosti, s tim što je prvi element vektora cifra najmanje težine.

N f ifi

i

n

==

∑ ( )20

2 1

.

U ovom slučaju moramo znati i broj promenljivih funkcije da bi ona bila potpuno određena brojnim indeksom. Za poslednja dva načina zadavanja funkcija je očigledno da se oni mogu primeniti samo na potpuno definisane funkcije. Osim pomenutih načina zadavanja funkcije u upotrebi je i analitički oblik zadavanja funkcije. Kao i kod svih ostalih matematičkih funkcija, i ovde se funkcije mogu zadati u implicitnom ili u eksplicitnom obliku. Jasno je da kod funkcija sa većim brojem promenljivih (n>5) zadavanje tablicom postaje nepregledno, pa se analitičko zadavanje jedino i primenjuje. Naravno, analitičko zadavanje funkcija se često primenjuje i kod funkcija sa manjim brojem promenljivih. O nekim aspektima ovog zadavanja funkcija biće više reči u narednim odeljcima.

Page 6: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

RAČUNARSKI SISTEMI: Principi digitalnih sistema 58

Primer 5.5

Odredi istinitosne tablice za sledeće funkcije a) f x y z xy xz y z1 ( , , ) = + + , b) f x y z x yz2 ( , , ) = + .

Odgovor:

x y z f1(x, y, z) f2(x, y, z)

0 0 0 1 1

0 0 1 1 1

0 1 0 0 1

0 1 1 1 1

1 0 0 1 0

1 0 1 0 0

1 1 0 1 1

1 1 1 1 0

Primer 5.6

Kreiraj istinitosnu tablicu koja opisuje funkciju g(w, x, y, z) čija je vrednost 1 uvek kada je decimalni ekvivalent četiri nezavisne promenljive, predstavljen kao četvorobitni broj, veći od 9. Ova funkcija se može koristiti za proveru da li četvorobitni broj predstavlja legitimni BCD kod.

Odgovor:

Istinitosna tablica checker-a BCD koda ima sledeći oblik (uvek kada w, x, y i z, pomoću kojih se predstavlja četvorobitni broj sa w kao bitom najveće težine, uzima vrednost veću od 9, g ima vrednost 1).

w x y z g(w, x, y, z) 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1

Primer 5.7

Na osnovu načina prezentacije prekidačkih funkcija pomoću istinitosnih tablica, lako je odrediti broj mogućih prekidačkih funkcija od n promenljivih. Naime, za svaku moguću dodelu od n promenljivih moguće je definisati jednu funkciju čija je vrednost 0, ali takođe i drugu čija je vrednost 1. S obzirom da za n promenljivih postoji 2n mogućih dodela, to znači da za n promenljivih ukupno postoji 2 prekidačkih funkcija. Izlistaj sve 2n

moguće funkcije od dve promenljive i dodeli imena nekim od funkcija koje su prepoznatljive.

Page 7: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. Bulova i prekidačka algebra i elementarna logička kola 59

Odgovor:

xy = 00 01 10 11 funkcija ime

0 0 0 0 0

0 0 0 1 xy AND

0 0 1 0 xy

0 0 1 1 x

0 1 0 0 xy

0 1 0 1 y

0 1 1 0 xy xy+ ExOR

0 1 1 1 x + y OR

1 0 0 0 x y+ NOR

1 0 0 1 xy xy+ ekvivalencija

1 0 1 0 y

1 0 1 1 x y+

1 1 0 0 x

1 1 0 1 x y+ implikacija

1 1 1 0 xy NAND

1 1 1 1 1

5.2.3. Fiktivne promenljive prekidačkih funkcija Ako za neku prekidačku funkciju f(x1, ... , xi, ... , xn) i njenu promenljivu xi važi

f(xi =0) = f(xi =1) tada kažemo da je xi fiktivna promenljiva funkcije f, što znači da vrednost funkcije u stvari ne zavisi od vrednosti te nezavisno promenljive. Postupak utvrđivanja da li je neka promenljiva fiktivna može se sprovesti proverom važenja gornje jednakosti, ili uz pomoć kombinacione tablice kada proveravamo da li vrednost funkcije zavisi od dotične promenljive. S obzirom na uvedeni pojam fiktivnih promenljivih, uviđamo da broj funkcija koja stvarno zavise od n promenljivih nije 2 , već je on dat sledećom rekurentnom formulom: 2n

F nn

nF n

nn

F nn

F

F

n

( ) ( ) ( ) (0)

(0)

= −−

⎛⎝⎜

⎞⎠⎟

− −−

⎛⎝⎜

⎞⎠⎟

− − −⎛⎝⎜⎞⎠⎟

=

21

12

20

2

2 K

5.2.4. Superpozicija prekidačkih funkcija Zahvaljujući činjenici da se oblast definisanosti nezavisnih promenljivih i oblast vrednosti funkcija poklapaju, moguće je vršiti superpoziciju prekidačkih funkcija. Pod superpozicijom prekidačkih funkcija podrazumevamo postupak dobijanja nove funkcije na osnovu polaznih tako što se vrši izmena oznaka promenljivih ili umesto promenljivih stavljaju neke od polaznih funkcija.

5.2.5. Osobine nekih funkcije jedne i dve nezavisne promenljive Što se tiče funkcija koje zavise od samo jedne nezavisno promenljive, osim identičke funkcije f(x) = x, interesantna je NE funkcija čija je kombinaciona tablica prikazana na slici 5.2.

Page 8: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

RAČUNARSKI SISTEMI: Principi digitalnih sistema 60

x NE

x y I ILI

0 1 0 0 0 0 1 0 0 1 0 1 1 0 0 1 1 1 1 1

Sl. 5.2. Kombinacione tablice funkcija NE, I i ILI.

Na slici 5.2 su date i kombinacione tablice za funkcije I i ILI. NE funkcija i ove dve funkcije imaju iste osobine kao i operacije ⎯ , ⋅ i +, respektivno. Njihovi analitički oblici su stoga:

NE(x) = ⎯x I(x,y) = xy ILI(x,y) = x+y

Osim ovih funkcija, najčešće se koriste funkcije suma po modulu dva (isključivo ILI), implikacija, NI i NILI. Kombinacione tablice ovih funkcija prikazane su na slici 5.3.

x y ⊕ → NI NILI 0 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 1 0 1 1 0 1 0 0

Sl. 5.3. Kombinacione tablice za funkcije isključivo ILI, implikacija, NI i NILI.

Analitički oblik funkcije suma po modulu 2 je sledeći: f(x, y) = x ⊕ y = x y + x y

Ova funkcija poseduje sledeće osobine: 1. x ⊕ y = y ⊕ x 2. x ⊕ (y ⊕ z) = (x ⊕ y) ⊕ z = x ⊕ y ⊕ z 3. x(y ⊕ z) = xy ⊕ xz 4. x ⊕ x = 0 5. x ⊕ x = 1 6. x ⊕ 1 = x 7. x ⊕ 0 = x

Funkcija implikacije ima sledeći analitički oblik:

f(x, y) = x → y = x + y Za ovu funkciju važi sledeće:

1. x → y ≠ y → x 2. x → (y → z) ≠ (x → y) → z 3. x → x = 1 4. x → x = x 5. x → 0 = x 6. x → 1 = 1 7. 0 → x = 1 8. 1 → x = x

Analitički oblici funkcija NI i NILI su sledeći:

NI(x,y) = x | y = xy

NILI(x,y) = x ↓ y = x y+

Za obe funkcije važi komutativnost, ali asocijativni zakon ne važi. Od ostalih osobina navodimo sledeće. 1. x | x = x x ↓ x = x 2. x | x = 1 x ↓ x = 0 3. x | 0 = 1 x ↓ 0 = x 4. x | 1 = x x ↓ 1 = 0

Page 9: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. Bulova i prekidačka algebra i elementarna logička kola 61

5.2.6. Potpuna disjunktivna normalna forma i potpuna konjuktivna normalna forma funkcije

Definicija 5.2.1. Za dve prekidačke funkcije f i g, kažemo da je funkcija g implikant funkcije f, u oznaci f⊂g, ako na svim slogovima gde funkcija f ima vrednost 0 i funkcija g ima vrednost 0, a na slogovima gde funkcija f ima vrednost 1 funkcija g može da ima vrednost 0 ili 1. Još kažemo da na slogovima na kojima funkcija g ima vrednost 1 ona pokriva funkciju f. Definicija 5.2.2. Pod elementarnim proizvodom ili konjunkcijom podrazumevamo izraz oblika

~ ~ ~x x xi i ik1 2K

pri čemu su i1, ... , ik različite vrednosti iz skupa {1, 2, ... , n}, a ~ { , }x x x∈ . Konstanta 1 može se smatrati elementarnim proizvodom. Definicija 5.2.3. Pod prostim proizvodom podrazumevamo proizvod oblika

x x xi i ik1 2K

Definicija 5.2.4. Potpuni proizvod (minterm) je elementarni proizvod u kome se pojavljuju sve promenljive. Definicija 5.2.5. Pod elementarnom sumom ili disjunkcijom podrazumeva se izraz oblika:

~ ~ ~x x xi i n1 2 i+ + +K Konstanta 0 može se smatrati elementarnom sumom. Definicija 5.2.6. Potpuna suma (maksterm) je elementarna suma u kojoj se javljaju sve promenljive. Teorema 5.2.7. Svaka prekidačka funkcija, izuzev konstante 0, može se na jedinstven način predstaviti u obliku:

f x x P P Pn i i k( , , )1 1 2

K K i= + + + , pri čemu su P j potpuni proizvodi koji odgovaraju onim slogovima na kojima funkcija ima vrednost 1. Ovaj oblik se naziva potpuna diskjunktivna normalna forma funkcije (PDNF).

kij, , ...,= 1

Teorema 5.2.8. Svaka prekidačka funkcija, izuzev konstante 0, može se na jedinstven način predstaviti preko sume po modulu 2 potpunih proizvoda na slogovima na kojima funkcija ima vrednost 1, tj.

f x x P P Pn i i k( , , )1 1 2

K K i= ⊕ ⊕ ⊕ . Ovaj oblik se naziva potpuna polinomna normalna forma (PPNF). Definicija 5.2.9. Suma po modulu dva međusobno različitih prostih proizvoda naziva se kanonički polinom ili polinom po modulu 2. Teorema 5.2.10. Svaka prekidačka funkcija, izuzev konstante 0, može se na jedinstven način predstaviti u obliku

f x x c c x c x c x c x x c x x x cn n n n n in( , , ) , { , }1 0 1 1 2 2 1 1 2 2 1 1 2 0 1K K K K= ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ∈+ −

Ovaj oblik funkcije se naziva razvoj Rida-Milera. Teorema 5.2.11. Svaka prekidačka funkcije, osim konstante 1, može se na jedinstven način predstaviti u obliku

f x x S S Sn i i k( , , )1 1 2

K K i= ⋅ ⋅ ⋅ ,

pri čemu su S j potpune sume koje odgovaraju onim slogovima na kojima funkcija ima vrednost 0. Ovaj oblik se naziva potpuna konjuktivna normalna forma funkcije (PKNF).

kij, ,...,= 1

5.2.7. Klase prekidačkih funkcija i potpuni skupovi prekidačkih funkcija Prekidačke funkcije mogu pripadati sledećim klasama prekidačkih funkcija: 1. Klasa funkcija koje zadržavaju nulu (K0):

f(x1, ... ,xn) ∈ K0 ⇔ f(0,...,0) = 0 2. Klasa funkcija koje zadržavaju jedinicu (K1):

f(x1, ... ,xn) ∈ K1 ⇔ f(1,...,1) = 1 3. Klasa linearnih prekidačkih funkcija (L): Ove funkcije mogu se predstaviti kanoničkim polinomom prvog stepen, tj.

f(x1, ... ,xn) = c0⊕c1x1⊕ ... ⊕cnxn 4. Klasa samodualnih prekidačkih funkcija (S):

Page 10: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

RAČUNARSKI SISTEMI: Principi digitalnih sistema 62

f(x1, ... ,xn) ∈ S ⇔ f(x1, ... ,xn) = f x xn( , , )1 K 5. Klasa monoloških funkcija (M): Ako nad skupom vektora dužine n uvedemo relaciju poretka

A ≤ B ⇔ ai ≤ bi , ∀i ∈ {1, ..., n}, tada važi

f(x1, ... ,xn) ∈ M ⇔ (A ≤ B ⇒ f(A) ≤ f(B)) Navedene klase prekidačkih funkcija zatvorene su u odnosu na operaciju superpozicije. Pripadnost funkcija ovim klasama značajna je kod određivanja da li neki skup prekidačkih funkcija predstavlja potpun skup prekidačkih funkcija, odnosno skup prekidačkih funkcija preko koga se mogu izraziti sve ostale prekidačke funkcije. O ovome govori sledeća teorema. Teorema 5.2.12. (Postova teorema) Skup prekidačkih funkcija je potpun ako sadrži bar jednu funkciju koja ne pripada klasi K0, bar jednu funkciju koja ne pripada klasi K1, bar jednu funkciju koja ne pripada klasi L, bar jednu funkciju koja ne pripada klasi S i bar jednu funkciju koja ne pripada klasi M. Funkcije I, ILI i NE čine jedan potpun skup prekidačkih funkcija. Funkcije NI i NILI, svaka za sebe, čine potpun skup prekidačkih funkcija. Stoga se ove funkcije nazivaju univerzalnim prekidačim funkcijama. Značaj univerzalnih funkcija je u tome što je u integrisanoj poluprovodničkoj tehnologiji jako povoljna realizacija regularnih struktura.

Primer 5.8

Za bilo koju Bulovu funkciju, izraženu u obliku sume proizvoda (SOP - sum of products) ili proizvoda suma (POS - product of sums), postoji standardna ili kanonička forma. Kod obe alternativne forme svaka promenljiva se javlja bilo u komplementiranom bilo u nekomplementiranom obliku u svakom od članova tipa proizvod ili suma. Član tipa proizvod koji ima osobine naziva se minterm, dok člna tipa suma koji poseduje ove osobine nazivamo maksterm. Za Bulovu funkciju koja je u potpunosti komponovana od mintermova kažemo da ima kanoničku formu tipa SOP. Na primer,

f x y z x yz x yz xyz x yz( , , ) = + + + predstavlja kanoničku funkciju od tri promenljive, jer svaki član tipa proizvod sadrži sve promenljive u funkciji. Promenljivu v i njen komplement⎯v nazivamo literalima. Ako je Bulova funkcija u potpunosti komponovana od makstermova, tada kažemo da ima kanoničku formu tipa proizvod suma. Na primer,

f x y z x y z x y z x y z x y z( , , ) ( )( )( )( )= + + + + + + + + predstavlja kanoničku funkciju od tri promenljive sa četiri maksterma. Za Bulovu funkciju od n promenljivih koliko makstermova i mintermova postoji?

Odgovor:

Kod Bulove funkcije od n promenljivih postoji 2n mintermova i 2n makstermova. Na primer, mintermovi i makstermovi za Bulovu funkciju od tri promenljive f(x, y, z) su:

mintermovi makstermovi x yz x y z+ +

x yz x y z+ +

x yz x y z+ +

x yz x y z+ +

x yz x y z+ +

x yz x y z+ +

x yz x y z+ +

x yz x y z+ +

Lako je uočiti iz minterm/maksterm liste da komplement bilo kog minterma predstavlja maksterm i obrnuto.

Page 11: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. Bulova i prekidačka algebra i elementarna logička kola 63

Primer 5.9

Sa ciljem da se pojednostavi notacija mintermova oni se obično kodiraju kao decimalni brojevi. Ovo se izvodi na taj način što se dodeljuje 0 komplementiranoj promenljivoj a 1 nekomplementiranoj, tako da kao rezultat dobijamo binarnu prezentaciju minterma. Tako na primer, minterm x yz se piše kao 110 (=6), a minterm označava kao m6. Za sledeće Bulove funkcije a) f x y z x y z x yz x y z x yz1 ( , , ) = + + + , odrediti formu minterm liste; b) f x y z x y z x y z x y z x y z2 ( , , ) ( )( )( )( )= + + + + + + + + , odrediti formu maksterm liste.

Odgovor:

a) f1(x, y, z) = m1 + m2 + m5 + m7 ili, ekvivalentna minterm lista je oblika

f1(x, y, z) = Σm(1, 2, 5, 7) b) Za kodiranje makstermova takođe se koriste decimalni brojevi. Ali, u ovom slučaju se 0 dodeljuje

nekomplementiranoj promenljivoj, a 1 komplementiranoj. Maksterm se označava sa Md, gde je d decimalni ekvivalent binarnog broja. Shodno prethodnom, Bulova funkcija f2(x, y, z) se može predstaviti kao

f2(x, y, z) = M0 + M3 + M5 + M6 dok će forma liste biti

f2(x, y, z) = ΠM(0, 3, 5, 6)

Primer 5.10

Za Bulovu funkciju specificiranu sledećom istinitosnom tablicom

x y z f(x, y, z)

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 0

1 0 0 1

1 0 1 0

1 1 0 1

1 1 1 1

odrediti minterm i maksterm liste.

Odgovor:

Forma tipa SOP funkcije f(x, y, z) je sledećeg oblika f x y z xyz xyz xyz xyz x yz( , , ) = + + + + = m7 + m6 + m4 + m2 + m1 = Σm(1, 2, 4, 6, 7) Forma tipa POS funkcije f(x, y, z) je oblika

f x y z x yz xyz xyz

x yz xyz xyz

x y z x y z x y z

M M M

M

( , , )

( )( )(

( ,5)

= + +

= ⋅ ⋅

= + + + + + +

=

=

0 3 5

0,3Π

)

Primer 5.11

Proširimo sledeću Bulovu funkciju datu u obliku nekanoničke SOP f x y z xy xz yz( , , ) = + +

Page 12: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

RAČUNARSKI SISTEMI: Principi digitalnih sistema 64

Odgovor:

f x y z xy xz yz

xy z z x y y z x x yz

xyz xyz xyz xyz xyz xyz

( , , )

( ) ( ) ( )

= + +

= + + + + +

= + + + + +

Članovi xyz i xyz se javljaju po dvaput, pa kako važi da je Q + Q = Q, tada dobijamo da je

f x y z xyz xyz xyz xyz

m m m m

m

( , , )

( , ,6,7)

= + + +

= + + +

=

7 6 4 3

3 4Σ

Primer 5.12

Proširimo sledeću Bulovu funkciju datu u formi nekanonički POS. f x y z x y x z( , , ) ( )( )= + +

Odgovor:

f x y z x y zz x yy z

x y z x y z x y z x y z

M M M M

M

( , , ) ( )( )

( )( )( )(

( , ,6)

=

)

+ + + +

= + + + + + + + +

=

=

0 1 4 6

0,1 4Π

Primer 5.13

Ispitajmo da li su sledeći Bulovi izrazi jednaki

f x y z xy yz xz x y

f x y z xy x y x yz1

2

( , , )

( , , )

= + + +

= + +

Odgovor:

Proširimo f1(x, y, z) u kanoničku formu.

f x y z xy z z x x yz x y y z x y z z

xyz xyz xyz xyz xyz x yz x yz x yz

xyz xyz xyz x yz x yz

m

1

0 1

( , , ) ( ) ( ) ( ) ( )

( , ,3,6,7)

= + + + + + + +

= + + + + + + +

= + + + +

= Σ

Proširimo sada f2(x, y, z) u kanoničku formu

f x y z xy z z x y z z xyz

xyz xyz x yz x yz xyz

m

2

0 1

( , , ) ( ) ( )

( , ,3,6,7)

= + + + +

= + + + +

= Σ

S obzirom da su kanoničke forme identične, date funkcije predstavljaju istu Bulovu funkciju.

Primer 5.14

Napisati izraz za prekidačku funkciju f(x, y, z)=Σm(0, 2, 4, 7) u standardnoj SOP formi u zavisnosti od njenih promenljivih.

Odgovor:

f x y z m m m m

x yz x yz xyz x yz

( , , ) = + + +

= + + +

0 2 4 7

Primer 5.15

Napisati SOP i POS forme za prekidačku funkciju f1(x, y, z, w) zadatu sledećom tabelom:

Page 13: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. Bulova i prekidačka algebra i elementarna logička kola 65

x y z w f1

0 0 0 0 1

0 0 0 1 0

0 0 1 0 0

0 0 1 1 0

0 1 0 0 1

0 1 0 1 0

0 1 1 0 1

0 1 1 1 0

1 0 0 0 1

1 0 0 1 1

1 0 1 0 0

1 0 1 1 0

1 1 0 0 0

1 1 0 1 0

1 1 1 0 1

1 1 1 1 0

Odgovor:

f1(x, y, z, w) = Σm(0, 4, 6, 8, 9, 14) f1(x, y, z, w) = ΠM(1, 2, 3, 5, 7, 10, 11, 12, 13, 15)

5.3. Elementarna logička kola

Kola koja se koriste za realizaciju Bulovih funkcija nazivaju se logička kola. Postoje AND, OR i NOT (invertor) logička kola koji obavljaju AND, OR i NOT operaciju, respektivno.

5.3.1. AND AND logičko kolo na svom izlazu ima 1 ako i samo ako su svi njegovi ulazi jednaki 1. Simbol AND kola sa dva ulaza prikazan je na slici 5.4a, a odgovarajuća istinitosna tablica na slici 5.4b.

x y z 0 0 0 0 1 0 1 0 0 1 1 1

x z

y

a) Logički simbol. b) Istinitosna tablica.

Sl. 5.4. AND logičko kolo.

5.3.2. OR OR logičko kolo generiše na izlazu 1 ako je najmanje jedan od njegovih ulaza postavljen na 1. Logički simbol OR kola sa dva ulaza i odgovarajuća istinitosna tablica prikazani su na slici 5.5.

x y z 0 0 0 0 1 1 1 0 1 1 1 1

x z

y

a) Logički simbol. b) Istinitosna tablica.

Sl. 5.5. OR logičko kolo.

Page 14: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

RAČUNARSKI SISTEMI: Principi digitalnih sistema 66

5.3.3. NOT NOT logičko kolo generiše na izlazu 1 kada je ulaz na 0, a na izlazu se generiše 0 ako je na ulazu 1. Logički simbol i istinitosna tablica NOT kola prikazane na slici 5.6. NOT logičko kolo je poznato pod alternativnim nazivom invertor.

x z 0 1 1 0

a) Logički simbol. b) Istinitosna tablica.

Sl. 5.6. NOT logičko kolo.

5.3.4. Izvedena logička kola Od tri elementarna logička kola je moguće izvesti još dva, NOR logičko kolo i NAND logičko kolo.

A. NOR logičko kolo

NOR logičko kolo, slika 5.7a, dobija se kombinovanjem NOT logičkog kola sa OR logičkim kolom. Istinitosna tablica data je na slici 5.7b.

x y z 0 0 1 0 1 0 1 0 0 1 1 0

a) Logički simbol. b) Istinitosna tablica.

Sl. 5.7. NOR logičko kolo.

Alternativni oblik NOR logičkog kola je prikazan na slici 5.8.

Sl. 5.8. Alternativni oblik NOR logičkog kola.

B. NAND logičko kolo

NAND logičko kolo, slika 5.9a, se dobija kombinovanjem NOT logičkog kola sa AND logičkim kolom. Istinitosna tablica NAND logičkog kola prikazana je na slici 5.9b.

x y z 0 0 1 0 1 1 1 0 1 1 1 0

a) Logički simbol. b) Istinitosna tablica.

Sl. 5.9. NAND logičko kolo.

Alternativni oblik NAND logičkog kola je prikazan na slici 5.10.

≡ x

y

x

y z

x

y z

x

y z ≡

≡ x

y

x

y z

z z ≡ y

x

x z

x

y

z

z

Sl. 5.10. Alternativni oblik NAND logičkog kola.

Page 15: Bulova i prekida~ka algebra - mf-bl.commf-bl.com/upload/documents/Dokumenti/Predmeti/Programiranje/Bulova... · 5. BULOVA I PREKIDAČKA ALGEBRA I ELEMENTARNA LOGIČKA KOLA Sve inženjerske

5. Bulova i prekidačka algebra i elementarna logička kola 67

5.3.5. Ostali tipovi logičkih kola Dva dodatna tipa logičkih kola koji se često koriste kod digitalnih kola su ExOR (Exclusive OR) i ExNOR (Exclusive NOR) kola.

A. ExOR kola

ExOR kolo generiše na svom izlazu 1 kada je bilo koji od njegovih ulaza, ali ne i oba, na 1. Istinitosna tablica i logički simbol ExOR kola prikazani su na slici 5.11.

≡ z y x

x x y z 0 0 0 0 1 1 1 0 1 1 1 0

y z

a) Logički simbol. b) Istinitosna tablica.

Sl. 5.11. Logičko ExOR kolo.

ExOR kolo je poznato i kao isključivo ILI kolo. Bulova funkcija koja odgovara istinitosnoj tablici ExOR kola je oblika

f x y xy xy x y( , ) = + = ⊕

B. ExNOR kolo

ExNOR logičko kolo se dobija kombinovanjem NOT logičkog kola sa ExOR logičkim kolom. Logički simbol i istinitosna tablica ExNOR logičkog kola prikazani su na slici 5.12.

x y z 0 0 1 0 1 0 1 0 0 1 1 1

z ≡ y x x z

y

a) Logički simbol. b) Istinitosna tablica.

Sl. 5.12. Logičko ExNOR kolo.

ExNOR kolo je poznato pod imenom isključivo NILI kolo. ExNOR logičko kolo se naziva i logičko kolo ekvivalencije ili koincidencije, a predstavlja se simbolom .

5.4. Problemi

1. Primenom aksioma i teorema Bulove algebre uprostiti izraz ab c a b c+ + +( )

2. Proveriti da li važi

abc a b c b c a c= + + +( )( )( ) 3. Funkciju f (x1, x2, x3) zadatu skupom decimalnih indeksa f (1) = {2, 3, 5, 6} napisati u obliku PDNF i PKNF. 4. Napisati kanonički polinom funkcije

f x x x x x x x x x x( , , ) ( )1 2 3 1 2 2 3 1 1 3= + + + 5. a) Ispitati da li je univerzalna prekidačka funkcija

f(x, y) = x ⊕ y b) Ako f nije univerzalna funkcija, naći najprostije funkcije koje sa datom funkcijom obrazuju potpun skup

prekidačkih funkcija. c) Na osnovu potpunog skupa prekidačkih funkcija iz tačke b) realizovati funkcije I, ILI i NE.