6
Primjer projektiranja logičkoga sklopa Vesna Skočir X. gimnazija "Ivan Supek", Zagreb Sažetak - Veliki napredak koji iz godine u godinu bilježi računalna znanost teško je pratiti. Računala su sve brža, preciznija, njihovo je sučelje bliže i pristupačnije čovjeku. Pa ipak, logika koja je u njihovoj pozadini ista je kao i kod prvih računala ranih pedesetih godina prošloga stoljeća. Računalni stoj je zapravo logički stroj. Njegova je binarna logika opisana pomoću Booleove algebre. Istu je logiku moguće primijeniti i na druge probleme čije se rješenje da zapisati u obliku odgovora DA ili NE. Upravo je ova činjenica iskorištena kako bi se projektiranjem jednostavnijih sklopova učenicima približila apstraktna logika računala. U radu je pokazano na koji se način poznate igre: papir-škare-dijamant i par-nepar mogu ostvariti kao logički sklopovi. Pored sklopovske pokazana je i softverska realizacija danih igara. I. UVOD Svjedoci smo velikih promjena u računalstvu; napretka koji je iz godine u godinu toliko velik da je gotovo nemoguće pratiti ga. Računala su moćni strojevi, primjenjivi u začudno puno područja ljudske djelatnosti. Još uvijek fasciniraju svojom brzinom i tehničkom preciznošću. Pa ipak, logika koja je u njihovoj pozadini ista je kao i kod prvih računala ranih pedesetih godina prošloga stoljeća. To svakako treba imati na umu kad definiramo znanja i vještine koje odreĎuju informatički pismenog srednjoškolca. Činjenica jest da srednjoškolsko gradivo obrazovnih sustava mnogih zemalja, pa tako i naše, uključuje graĎu i načela funkcioniranja računala. IzmeĎu ostalog kaže se da je matematička osnova računala Booleova algebra, te da se njezinom primjenom dolazi do logičkih sklopova - dijelova računala. Izučavaju se osnovni pojmovi i teoremi ove matematičke discipline, a nastoji se pokazati i na koji se način ona može primijeniti na logiku računala. Budući da se radi o apstraktnim logičkim idejama, ova zadaća nije jednostavna. Rezultat je najčešće taj da dobrohotan učenik čak i vjeruje da to jest važno, ali najčešće uspije "uhvatiti" samo fragmente ovih ideja. Primjerice, nauči logički izraz predočiti tablicom istinitosti i obratno, napisati logički izraz ako je poznata tablica istinitosti, minimizirati jednostavnu logičku funkciju, nacrtati logički sklop ako je dana logička funkcija i slično. U nekim udžbenicima susrećemo primjer poluzbrajala kako bi se pokazalo čemu sve to zaista služi. Taj je primjer u svakom slučaju dobar, no za učenike koji su tek naučili binarno zbrajati, pretežak. Ako je primjer težak ili nije dovoljno blizak, vjerojatno će veći dio učenika odustati od pokušaja da razumije "komplicirano" računalo. Računalni stroj je zapravo logički stroj. Osnovni je cilj ovoga rada približiti učeniku pravo značenje ove tvrdnje. U radu je pokazano kako slijedeći binarnu logiku računala projektirati logički sklop koji nešto radi. Naime, binarna je logika računala opisana pomoću Booleove algebre. Simbolički prikaz izjava te algebarska pravila kojima se meĎu izjavama ostvaruju logičke veze mogu se primijeniti na različite probleme čije se rješenje da zapisati u obliku odgovora DA ili NE (odnosno 1 ili 0). Fizičko ostvarenje logičkih operacija su logički sklopovi. Kao primjer problemske situacije odabrane su poznate igre papir-škare-dijamant i par-nepar. Prednost je igre ta što je neopterećena i neobavezna, zanimljiva, lakše ju je razumjeti, lakše se u nju uključiti. I mada igra učenika udaljuje od stvarnog problema, ona mu u ovom slučaju pomaže da stvarni problem potpunije shvati. 1 U igrama učestvuju dva igrača. Ulazi su izbori igrača, donošenje odluke o pobjedniku preuzima logički sklop, a izlaz naznačuje koji je od igrača pobijedio. Pokazane su sve faze kroz koje prolazimo pri projektiranju sklopa. Nakon specifikacije problema (u ovome slučaju detaljnog opisa igre), slijedi razrada. Cilj je razrade doći do tablice stanja danoga sklopa, koja se, ukoliko je to moguće, minimizira, nakon čega slijedi crtanje sheme kao podloge za izradu samoga sklopa. Diskutiraju se različiti pristupi problemu. Računalo je spoj hardvera i softvera. Posao na računalu moguće je napraviti ako postoji hardver te softver koji se na njemu može izvoditi. Svaka funkcija računala može se ostvariti pomoću hardvera, ali i pomoću softvera. Stoga je pored sklopovske pokazana i softverska realizacija danih igara. II. PAPIR-ŠKARE-DIJAMANT Papir-škare-dijamant je igra za dva (ili više) igrača. U različitim se varijantama igra širom svijeta, a često se umjesto novčića koristi kao metoda selekcije. Slijedi opis igre (problema) koji će služiti kao podloga za projektiranje sklopa. A. Specifikacija problema Dva igrača istovremeno podižu ruku i dlanom pokazuju jedan od tri znaka: znak za papir, za škare ili za 1 U ovom je slučaju stvarni problem dokučiti na koji način realizirati Von Neumannov model računala ukoliko na raspolaganju imamo dovoljan broj osnovnih gradivnih elemenata, a to su sklopovi koji ostvaruju logičke funkcije I, ILI i NE. 1614 MIPRO 2012/CE

Primjer projektiranja logičkoga sklopa · 2013-01-23 · Primjer projektiranja logičkoga sklopa. Vesna Skočir. X. gimnazija "Ivan Supek", Zagreb . Sažetak - Veliki napredak koji

  • Upload
    others

  • View
    36

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Primjer projektiranja logičkoga sklopa · 2013-01-23 · Primjer projektiranja logičkoga sklopa. Vesna Skočir. X. gimnazija "Ivan Supek", Zagreb . Sažetak - Veliki napredak koji

Primjer projektiranja logičkoga sklopa

Vesna Skočir X. gimnazija "Ivan Supek", Zagreb

Sažetak - Veliki napredak koji iz godine u godinu bilježi

računalna znanost teško je pratiti. Računala su sve brža,

preciznija, njihovo je sučelje bliže i pristupačnije čovjeku.

Pa ipak, logika koja je u njihovoj pozadini ista je kao i kod

prvih računala ranih pedesetih godina prošloga stoljeća.

Računalni stoj je zapravo logički stroj. Njegova je binarna

logika opisana pomoću Booleove algebre. Istu je logiku

moguće primijeniti i na druge probleme čije se rješenje da

zapisati u obliku odgovora DA ili NE. Upravo je ova

činjenica iskorištena kako bi se projektiranjem

jednostavnijih sklopova učenicima približila apstraktna

logika računala. U radu je pokazano na koji se način

poznate igre: papir-škare-dijamant i par-nepar mogu

ostvariti kao logički sklopovi. Pored sklopovske pokazana je

i softverska realizacija danih igara.

I. UVOD

Svjedoci smo velikih promjena u računalstvu; napretka koji je iz godine u godinu toliko velik da je gotovo nemoguće pratiti ga. Računala su moćni strojevi, primjenjivi u začudno puno područja ljudske djelatnosti. Još uvijek fasciniraju svojom brzinom i tehničkom preciznošću. Pa ipak, logika koja je u njihovoj pozadini ista je kao i kod prvih računala ranih pedesetih godina prošloga stoljeća.

To svakako treba imati na umu kad definiramo znanja i vještine koje odreĎuju informatički pismenog srednjoškolca. Činjenica jest da srednjoškolsko gradivo obrazovnih sustava mnogih zemalja, pa tako i naše, uključuje graĎu i načela funkcioniranja računala. IzmeĎu ostalog kaže se da je matematička osnova računala Booleova algebra, te da se njezinom primjenom dolazi do logičkih sklopova - dijelova računala. Izučavaju se osnovni pojmovi i teoremi ove matematičke discipline, a nastoji se pokazati i na koji se način ona može primijeniti na logiku računala.

Budući da se radi o apstraktnim logičkim idejama, ova zadaća nije jednostavna. Rezultat je najčešće taj da dobrohotan učenik čak i vjeruje da to jest važno, ali najčešće uspije "uhvatiti" samo fragmente ovih ideja. Primjerice, nauči logički izraz predočiti tablicom istinitosti i obratno, napisati logički izraz ako je poznata tablica istinitosti, minimizirati jednostavnu logičku funkciju, nacrtati logički sklop ako je dana logička funkcija i slično. U nekim udžbenicima susrećemo primjer poluzbrajala kako bi se pokazalo čemu sve to zaista služi. Taj je primjer u svakom slučaju dobar, no za učenike koji su tek naučili binarno zbrajati, pretežak. Ako je primjer težak ili nije dovoljno blizak, vjerojatno će veći dio učenika odustati od pokušaja da razumije "komplicirano" računalo.

Računalni stroj je zapravo logički stroj. Osnovni je cilj ovoga rada približiti učeniku pravo značenje ove tvrdnje. U radu je pokazano kako slijedeći binarnu logiku računala projektirati logički sklop koji nešto radi. Naime, binarna je logika računala opisana pomoću Booleove algebre. Simbolički prikaz izjava te algebarska pravila kojima se meĎu izjavama ostvaruju logičke veze mogu se primijeniti na različite probleme čije se rješenje da zapisati u obliku odgovora DA ili NE (odnosno 1 ili 0). Fizičko ostvarenje logičkih operacija su logički sklopovi.

Kao primjer problemske situacije odabrane su poznate igre papir-škare-dijamant i par-nepar. Prednost je igre ta što je neopterećena i neobavezna, zanimljiva, lakše ju je razumjeti, lakše se u nju uključiti. I mada igra učenika udaljuje od stvarnog problema, ona mu u ovom slučaju pomaže da stvarni problem potpunije shvati.

1

U igrama učestvuju dva igrača. Ulazi su izbori igrača, donošenje odluke o pobjedniku preuzima logički sklop, a izlaz naznačuje koji je od igrača pobijedio. Pokazane su sve faze kroz koje prolazimo pri projektiranju sklopa. Nakon specifikacije problema (u ovome slučaju detaljnog opisa igre), slijedi razrada. Cilj je razrade doći do tablice stanja danoga sklopa, koja se, ukoliko je to moguće, minimizira, nakon čega slijedi crtanje sheme kao podloge za izradu samoga sklopa. Diskutiraju se različiti pristupi problemu.

Računalo je spoj hardvera i softvera. Posao na računalu moguće je napraviti ako postoji hardver te softver koji se na njemu može izvoditi. Svaka funkcija računala može se ostvariti pomoću hardvera, ali i pomoću softvera. Stoga je pored sklopovske pokazana i softverska realizacija danih igara.

II. PAPIR-ŠKARE-DIJAMANT

Papir-škare-dijamant je igra za dva (ili više) igrača. U

različitim se varijantama igra širom svijeta, a često se umjesto novčića koristi kao metoda selekcije.

Slijedi opis igre (problema) koji će služiti kao podloga za projektiranje sklopa.

A. Specifikacija problema

Dva igrača istovremeno podižu ruku i dlanom pokazuju jedan od tri znaka: znak za papir, za škare ili za

1 U ovom je slučaju stvarni problem dokučiti na koji način realizirati

Von Neumannov model računala ukoliko na raspolaganju imamo dovoljan broj osnovnih gradivnih elemenata, a to su sklopovi koji

ostvaruju logičke funkcije I, ILI i NE.

1614 MIPRO 2012/CE

Page 2: Primjer projektiranja logičkoga sklopa · 2013-01-23 · Primjer projektiranja logičkoga sklopa. Vesna Skočir. X. gimnazija "Ivan Supek", Zagreb . Sažetak - Veliki napredak koji

Sl. 1. Geste koje susrećemo u igri papir-škare-dijamant

dijamant. Ukoliko pokažu isti element, primjerice znak za škare, rezultat je neriješen. U ostalim se slučajevima pobjednik odreĎuje na sljedeći način2:

ako je izabran par: papir i škare, pobjeĎuje igrač koji je pokazao škare;

ako je izabran par: papir i dijamant , pobjeĎuje igrač koji je pokazao papir;

ako je izabran par: škare i dijamant, pobjeĎuje igrač koji je pokazao dijamant.

Naravno, svaki igrač mora pokazati neki od navedenih elemenata.

B. Razrada

Prikažimo ovu igru tablično (Sl.2). Kad je igra

definirana na ovaj način iz nje se na prirodan način dobije tablica stanja (Sl.3).

Igra ima šest ulaza: prvi igrač pokazuje papir (oznaka - P1), prvi igrač pokazuje škare (Š1), prvi igrač pokazuje dijamant (D1), te analogno oznake P2, Š2 i D2, ukoliko drugi igrač pokazuje papir, škare ili dijamant. Ulaz P1 ima vrijednost 1 ukoliko je igrač 1 pokazao papir, u ostalim slučajevima ima vrijednost 0.

Prvi igrač Drugi igrač

Rezultat P Š D P Š D

da Da Neriješeno

da da Pobjeda 2.igrač

da da Pobjeda 1.igrač

Da Da Pobjeda 1.igrač

Da da Neriješeno

Da da Pobjeda 2.igrač

da Da Pobjeda 2.igrač

da da Pobjeda 1.igrač

da da Neriješeno

Sl. 2. Igra papir-škare-dijamant: pravila igre dana odgovorima da/ne (upisano je "da" ukoliko je igrač pokazao odgovarajući element)

2 škare režu papir, dijamant razbija škare, papir obavija dijamant

P1 Š1 D1 P2 Š2 D2 I1 I2

0 0 1 0 1 0 1 0

0 0 1 1 0 0 0 1

0 1 0 0 0 1 0 1

0 1 0 1 0 0 1 0

1 0 0 0 0 1 1 0

1 0 0 0 1 0 0 1

Sl. 3. Djelomični prikaz tablice stanja kojom je definirana igra papir-

škare-dijamant (Prikazane su samo one strategije koje rezultiraju

pobjedom jednoga od igrača)

Analogno su definirane vrijednosti ostalih ulaza.

Dva su izlaza: izlaz I1 odgovara prvom igraču. Vrijednost 1 naznačuje pobjedu igrača I1, u svim ostalim slučajevima (poraz prvog igrača, neriješeno, neregularna kombinacija) vrijednost I1 je 0. Analogno se definira izlaz I2 koji pripada drugom igraču. Tablica stanja danoga sklopa ima 26 =64 mogućih vrijednosti ulaznih varijabli.

Algebarski:

Sklop koji ostvaruje dobivene funkcije prikazan je shemom na slici (Sl.4).

Sl. 4. Logički sklop igre papir-škare-dijamant

III. PAR-NEPAR

Poput igre papir-škare-dijamant i ova igra služi da na

slučajan način odaberemo neki ishod, primjerice odabir strane, dodjelu lopte u nogometu i slično.

A. Specifikacija problema

igrači se unaprijed dogovore koji će od njih biti

PAR, a koji NEPAR;

istovremeno podižu šaku s nekoliko ispruženih

prstiju;

ukoliko je broj ispruženih prstiju paran pobjeĎuje

igrač koji je odreĎen kao PAR, u protivnom

pobjeĎuje igrač NEPAR. U slučaju da oba igrača

MIPRO 2012/CE 1615

Page 3: Primjer projektiranja logičkoga sklopa · 2013-01-23 · Primjer projektiranja logičkoga sklopa. Vesna Skočir. X. gimnazija "Ivan Supek", Zagreb . Sažetak - Veliki napredak koji

nisu podigla niti jedan prst, po dogovoru

pobjeĎuje igrač PAR.

B. Razrada

Primijetimo da ova igra ima 10 ulaza (svaki igrač može pokazati jedan od pet prstiju). Dakle, ukupno je 210=1024 kombinacija i za njih treba naznačiti izlaz. Primijetimo da u ovoj igri nema neregularnih ulaza; jedan od igrača uvijek pobjeĎuje (Sl.5).

Budući da je broj ulaza zaista velik, pokušajmo najprije problem riješiti u posebnom slučaju kad svaki igrač može ispružiti samo dva prsta, primjerice palac i kažiprst. Tada je broj mogućih kombinacija je 16 i tablica stanja može se relativno brzo sastaviti. Igru definira sljedeća tablica na slici 6.

U tablici stanja ulazi A,B,C,D imaju vrijednost 1 ukoliko je odgovarajući igrač podigao odreĎeni prst, 0 inače. Izlaz IP Ima vrijednost 1 ukoliko je igrač PAR pobijedio u igri, vrijednost 0 ukoliko je izgubio. Slično , vrijednost logičke varijable IN naznačuje pobjedu (poraz) igrača NEPAR. Algebarski:

Igrač PAR Igrač NEPAR

PobjeĎuje

igrač

Pal

ac

Kaž

iprs

t

Sre

dnji

prs

t

Prs

tenja

k

Mal

i p

rst

Pal

ac

Kaž

iprs

t

Sre

dnji

prs

t

Prs

tenja

k

Mal

i p

rst

PAR

da NEPAR

da NEPAR

da NEPAR

da NEPAR

da NEPAR

da NEPAR

da da PAR

da da PAR

………………………………………………………………..

Sl. 5. Igra par-nepar: pravila igre dana odgovorima da/ne; prikazan je samo dio pravila (upisano je "da" ukoliko je igrač pokazao

odgovarajući prst)

Igrač –PAR Igrač-NEPAR PobjeĎuje

igrač

Tablica stanja

Palac Kažiprst Palac Kažiprst A B C D IP IN

PAR 0 0 0 0 1 0

da NEPAR 0 0 0 1 0 1

da NEPAR 0 0 1 0 0 1

da da PAR 0 0 1 1 1 0

da NEPAR 0 1 0 0 0 1

da da PAR 0 1 0 1 1 0

da da PAR 0 1 1 0 1 0

da da da NEPAR 0 1 1 1 0 1

da NEPAR 1 0 0 0 0 1

da da PAR 1 0 0 1 1 0

da da PAR 1 0 1 0 1 0

da da da NEPAR 1 0 1 1 0 1

da da NEPAR 1 1 0 0 1 0

da da da PAR 1 1 0 1 0 1

da da da PAR 1 1 1 0 0 1

da da da da NEPAR 1 1 1 1 1 0

Sl.6. Pravila reducirane igre par-nepar definirana "da/ne" tablicom

(upisano je "da" ukoliko je igrač pokazao odgovarajući prst) i odgovarajuća tablica stanja

Uvijek je dobro vidjeti može li se problemu "prići" i na drugi način i možda dobiti jednostavnije rješenje i/ili skratiti postupak da se do rješenja doĎe. Najbolja3 rješenja obično su i ona najjednostavnija.

Budući da svaki igrač može pokazati samo paran ili neparan broj prstiju, to on ima na raspolaganju svega dvije različite mogućnosti. U tom smislu nije bitno pokaže li igrač jedan, tri ili svih pet prstiju, a isto je tako svejedno je li igrač pokazao dva, četiri prsta ili nijedan. Stoga najprije za jednoga igrača odredimo je li podigao paran ili neparan broj prstiju. Nakon toga jednostavno je odrediti pobjednika jer je zbroj dva parna broja, kao i zbroj dva neparna broja paran broj, a zbroj parnog i neparnog broja uvijek je neparan.

U verziji igre u kojoj svaki od igrača može podići najviše dva prsta, Igru definiraju tablice na slici 7.

3 Najbolje rješenje u smislu optimalnog ne postoji ukoliko ima više

kriterija kojima to rješenje vrednujemo. U svakom slučaju zanimaju nas

rješenja s manjim brojem sklopova i jednostavnijim vezama.

1616 MIPRO 2012/CE

Page 4: Primjer projektiranja logičkoga sklopa · 2013-01-23 · Primjer projektiranja logičkoga sklopa. Vesna Skočir. X. gimnazija "Ivan Supek", Zagreb . Sažetak - Veliki napredak koji

P

alac

Kaž

iprs

t PAR/

NEPAR

Igrač

PAR

Igrač

NEPAR

PobjeĎuje

igrač

ne ne PAR NEPAR NEPAR PAR

ne da NEPAR NEPAR PAR NEPAR

da ne NEPAR PAR NEPAR NEPAR

da da PAR PAR PAR PAR

P K R I'

P I'N IP IN

0 0 0 0 0 1 0

0 1 1 0 1 0 1

1 0 1 1 0 0 1

1 1 0 1 1 1 0

Sl.7. Pravila reducirane igre par-nepar definirana "da/ne" tablicom koja uključuju pretpostavku da svaki igrač ima dvije bitno različite strategije;

i njima odgovarajuće tablice stanja

Algebarski:

Shema na slici 8 prikazuje odgovarajući logički sklop.

Primijetimo da se ovakvim pristupom jednostavno može riješiti i polazna igra u kojoj svaki igrač može podići svih pet prstiju. Naime, ako se broj prstiju poveća treba samo promijeniti sklop koji odreĎuje strategiju igrača, a ta je, podiže li on paran ili neparan broj prstiju (v. sliku 9.).

Sl. 8. Logički sklop pojednostavljene igre par-nepar (uz pretpostavku da svaki igrač ima dvije bitno različite strategije)

Pal

ac

Kaž

iprs

t

Sre

dnji

prs

t

Prs

tenja

k

Mal

i p

rst

PAR/

NEPAR A B C D E R

PAR 0 0 0 0 0 0

da NEPAR 0 0 0 0 1 1

da NEPAR 0 0 0 1 0 1

da da PAR 0 0 0 1 1 0

da

NEPAR 0 0 1 0 0 1

da da PAR 0 0 1 0 1 0

da da PAR 0 0 1 1 0 0

da da da NEPAR 0 0 1 1 1 1

da NEPAR 0 1 0 0 0 1

da da PAR 0 1 0 0 1 0

da da PAR 0 1 0 1 0 0

da da da NEPAR 0 1 0 1 1 1

da da PAR 0 1 1 0 0 0

da da da NEPAR 0 1 1 0 1 1

da da da NEPAR 0 1 1 1 0 1

da da da da PAR 0 1 1 1 1 0

da

NEPAR 1 0 0 0 0 1

da

da PAR 1 0 0 0 1 0

da

da PAR 1 0 0 1 0 0

da

da da NEPAR 1 0 0 1 1 1

da

da PAR 1 0 1 0 0 0

da

da da NEPAR 1 0 1 0 1 1

da

da da NEPAR 1 0 1 1 0 1

da

da da da PAR 1 0 1 1 1 0

da da PAR 1 1 0 0 0 0

da da da NEPAR 1 1 0 0 1 1

da da da NEPAR 1 1 0 1 0 1

da da da da PAR 1 1 0 1 1 0

da da da NEPAR 1 1 1 0 0 1

da da da da PAR

1 1 1 0 1 0

da da da da PAR 1 1 1 1 0 0

da da da da da NEPAR 1 1 1 1 1 1

Sl. 9. Pravila kojima je definirana strategija igrača uz pretpostavku da

on može podići svih pet prstiju, prikazana "da/ne" tablicom te njoj

odgovarajućom tablicom stanja

Odgovarajući logički izraz glasi:

(1)

MIPRO 2012/CE 1617

Page 5: Primjer projektiranja logičkoga sklopa · 2013-01-23 · Primjer projektiranja logičkoga sklopa. Vesna Skočir. X. gimnazija "Ivan Supek", Zagreb . Sažetak - Veliki napredak koji

Logički izraz uvijek nastojimo pojednostaviti, to jest zamijeniti ga ekvivalentnim logičkim izrazom koji je jednostavniji od polaznog: ima manje operanada i/ili operatora. Iako se u ovom slučaju algebarski postupak minimizacije čini odveć kompliciran, slutimo da bi on ipak mogao biti moguć. Naime, podizanje 0,2 ili 4 prsta ima isti ishod. Isto tako, ishod se neće promijeniti podigne li igrač 1,3, ili 5 prstiju.

No mi već imamo riješen zadatak u kojem svaki igrač podiže dva prsta. Označimo li ulaze simbolima A i B (svaki naznačuje je li prst podignut ili nije), tada je, kako smo vidjeli, rezultat dan formulom

.

Ovo rješenje možemo upotrijebiti pri rješavanju općenitijeg u kojem igrač može podići svih pet prstiju. Rezultat podizanja prvog para prstiju označimo s

,a rezultat podizanja drugog para prstiju označimo s R2, odgovarajuća formula je

.

Preostao je još peti prst E i njegovu oznaku ne mijenjamo. No sada ulaze A i B možemo zamijeniti ulazom R1, a ulaze C i D ulazom R2 pa dobijemo sljedeću tablicu stanja (Sl.10).

R1 R2 E R

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 0

1 1 1 1

Sl. 10. Tablica stanja kojom je definirana strategija igrača uz

pretpostavku da on može podići svih pet prstiju

Odgovarajuća formula je:

Odnosno:

(2)

Lako je provjeriti da se tablice istinitosti izraza (1) i (2) podudaraju u vrijednosti rezultata. To znači da smo korištenjem pomoćnih zadataka uspjeli pojednostaviti logički izraz (1).

Shemom na slici 11 prikazan je odgovarajući logički sklop. Pri projektiranju korišten je podsklop koji realizira igru par-nepar u kojoj svaki igrač može podići najviše dva prsta.

Sl. 11. Logički podsklop igre par-nepar (svaki igrač može podići pet

prstiju)

IV. PROGRAMSKO RJEŠENJE

Do rješenja problemske situacije može se doći i

pomoću računala implementiranjem odgovarajućeg programa. Ovdje su navedeni primjeri procedura realiziranih u jeziku Pascal koje bi se mogle upotrijebiti za "proglašavanje" pobjednika u opisanim igrama.

Slijedi programsko rješenje igre PAPIR-ŠKARE-DIJAMANT. Primijetimo da se dojavljuje i neriješeni rezultat, što je u sklopovskom rješenju izostavljeno.

TYPE IZBOR = (PAPIR, SKARE, DIJAMANT);

MOGUCI_ISHOD = (IGRAC_1, IGRAC_2, NERIJESENO);

PROCEDURE PAPIR_SKARE_DIJAMANT (VAR

IZBOR_IGRAC_1, IZBOR_IGRAC_2 ; IZBOR; VAR POBJEDNIK: MOGUCI_ISHOD);

BEGIN

IF IZBOR_IGRAC_1 <> IZBOR_IGRAC_2 THEN IF (IZBOR_IGRAC_1 = DIJAMANT) AND

(IZBOR_IGRAC_2 = SKARE) OR

(IZBOR_IGRAC_1 = SKARE) AND (IZBOR_IGRAC_2 = PAPIR) OR

(IZBOR_IGRAC_1 = PAPIR) AND

(IZBOR_IGRAC_2 = DIJAMANT) THEN POBJEDNIK := IGRAC_1

ELSE POBJEDNIK := IGRAC_2

ELSE

POBJEDNIK := NERIJESENO END;

Programsko rješenje igre PAR-NEPAR ilustrira

istoimena procedura:

1618 MIPRO 2012/CE

Page 6: Primjer projektiranja logičkoga sklopa · 2013-01-23 · Primjer projektiranja logičkoga sklopa. Vesna Skočir. X. gimnazija "Ivan Supek", Zagreb . Sažetak - Veliki napredak koji

TYPE PRSTI = (PALAC, KAZIPRST,SREDNJI_PRST,

PRSTENJAK, MALI_PRST);

IZBOR = ARRAY [PALAC..MALI_PRST] OF

BOOLEAN; MOGUCI_ISHOD = (PAR, NEPAR);

PROCEDURE PAR_NEPAR (VAR IZBOR_IGRAC_PAR, IZBOR_IGRAC_NEPAR : IZBOR;

VAR POBJEDNIK : MOGUCI ISHOD);

VAR ZBROJ_PRSTIJU : INTEGER;

I _ PRSTI;

BEGIN

ZBROJ_PRSTIJU := 0;

FOR I := PALAC TO MALI_PRST DO BEGIN IF IZBOR_IGRAC_PAR[I] = TRUE THEN

ZBROJ_PRSTIJU := ZBROJ_PRSTIJU+1;

IF IZBOR_IGRAC_NEPAR[I] = TRUE THEN ZBROJ_PRSTIJU := ZBROJ_PRSTIJU+1;

END;

IF (ZBROJ_PRSTIJU MOD 2) = 0 THEN POBJEDNIK := PAR

ELSE

POBJEDNIK := NEPAR END;

V. ZAKLJUČAK

U radu je prezentirano projektiranje logičkih sklopova na nastavi informatike. Kao primjer odabrane su poznate igre: papir-škare-dijamant i par-nepar. Za svaku je napisana detaljna specifikacija koja služi kao podloga za dalju razradu. Rezultat razrade je tablica stanja i

odgovarajuća logička funkcija koja se, ukoliko je to moguće minimizira, nakon čega slijedi crtanje sheme kao podloge za izradu sklopa. Na primjeru igre par-nepar pokazano je koliko je kod projektiranja logičkih sklopova važna pronicljivost i snalažljivost projektanta. U ovom je slučaju drukčijim pristupom dobiveno još jedno rješenje koje je jednostavnije i bolje. Budući da svaka funkcija može biti ostvarena alternativno: pomoću hardvera ili softverski, predložene su i procedure kojima se ostvaruje programsko rješenje danih igara.

Ovakvi primjeri omogućuju učenicima uvid u činjenicu da je računalni stroj zapravo logički stroj. Naime, na sličan se način primjenom Booleove algebre grade i složeniji sklopovi – dijelovi računala.

UvoĎenje ovakvih i sličnih problemskih zadataka u nastavu informatike ima i druge prednosti:

dobro odabranim zadacima postiže se da veći broj učenika učestvuje u rješavanju problema;

uče se strategije rješavanja problema, razvija logičko mišljenje i potiče kreativnost.

LITERATURA

[1] Polya, George, Kako ću riješiti matematički

zadatak, 2. izdanje, Školska knjiga, Zagreb, 1966

[2]Skočir, Vesna, Informatika za maturu, koncepti

računala, tehnologije i aplikacija, priručnik za

pripremu državne mature, Element, Zagreb, 2010

MIPRO 2012/CE 1619