| POČETNA STRANICA | SURADNICI | PROJEKTI | NASTAVA |
 
Pohranjivanje podataka
Ono što je zajedničko svim operacijama koje izvodi računalo jest manipulacija sa podacima. Kod unosa, računalo čita podatke, tj. pohranjuje ih u radnu memoriju. Tijekom obrade sirovi podaci dohvaćaju se iz memorije, te podvrgavaju aritmetičkim i logičkim operacijama i pretvaraju u korisnu informaciju koja, tijekom operacije prikazivanja poprima formu razumljivu korisniku. Odlučimo li podatke pohraniti, računalo ih sprema na odabrani medij za trajnu pohranu. Pri svakoj od navedenih operacija, računalo uvijek barata sa podatkom predstavljenim nizom bitova.

Bitovi. Definicija. Pohranjivanje.

"BIT" (binary digit – binarna znamenka) može poprimiti jedan od dva znaka: 0 ili 1; za sada ih smatrajmo simbolima bez numeričkog značenja. Štoviše, cilj je pokazati da smisao bita ovisi o primjeni. Ponekad nam niz bitova predstavlja numeričku vrijednost, ponekad slovo ili simbol, a može čak predstavljati sliku ili zvuk. Pohranjivanje bita u stroju podrazumijeva postojanje uređaja koji može biti u jednom od dva stanja kao što je prekidač (upaljen ili ugašen), relej (otvoren ili zatvoren) ili zastavica (podignuta ili spuštena). Jedno se stanje koristi za predstavljanje nule, a drugo za jedinicu. Promotrimo neke od načina na koje bitove možemo pohraniti u "stroju".

Vrata i bistabili

Da bismo objasnili funkcionalnost vrata/ bistabila, najprije uvedimo operacije: AND, OR i XOR na način predstavljen tablicom:

ULAZ 1 ULAZ 2 AND OR XOR
0 0 0 0 0
0 1 0 1 1
1 0 0 1 1
1 1 1 1 0


Ove operacije slične su aritmetičkim operacijama PLUS i PUTA po tome što kao rezultat dvaju uparenih vrijednosti nastaje nova. U ovom slučaju uparene vrijednosti su operacijski ulazi, a nova vrijednost je operacijski izlaz. Za razliku od aritmetičkih operacija, operacije AND, OR i XOR manipuluraju sa samo dvije znamenke na ulazima: nula ili jedan. U tom kontekstu, poistovjetimo li nulu sa neistinom, a 1 sa istinom, tada operacije AND, OR i XOR postaju Booleove operacije (Georges Boole 1815-1864).
Booleova algebra, ili algebra logike je sustav dvočlane algebre kojom predstavljamo logičke odnose i operacije. Engleski logičar i matematičar, George Boole, prvi je primijenio ove algebarske tehnike na logičke procese, tvrdeći da bilo kojoj izjavi možemo pridružiti binarnu vrijednost, kao što su to, primjerice vrijednosti: istina/laž, ili da/ne. 1854 godine napisao je "Ispitivanje zakonitosti u mislima" u kojoj je predstavio način na koji se mogu komplicirane logičke veze svesti na jednostavne izjave jednakosti, nejednakosti, inkluzije i ekskluzije. Boole je pokazao i način na koji se ove izjave predstavljaju simbolički, korištenjem binarnog (two values) koda i smislio je algebarska pravila pomoću kojih dobivamo točne logičke veze. Ova veza između matematike i logike poznata je pod imenom Booleova algebra. Promotrimo to na konkretnom primjeru. Neka je zadana složena izjava: P AND Q, gdje P predstavlja jednu, a Q drugu izjavu. Primjerice: Tom je mačka i (AND) Jerry je miš. Ulazi u ovu AND operaciju predstavljaju istinu ili neistinu ovisno o dijelovima složene izjave, a izlaz je istina odnosno neistina same složene izjave. Kako je izjava tipa «P AND Q» istinita onda i samo onda ako su istinite izjave P i Q, zaključujemo da će samo 1 AND 1 biti 1, a sve ostale kombinacije binarnih znamenaka bit će 0, što je sukladno s tablicom. Na isti način objašnjavamo OR ili XOR operacije. I operacija negacije je još jedna Booleova operacija. Razlikuje se od prethodne tri po tome što ima samo jedan ulaz. Izlaz je suprotan ulazu. Uređaj koji generira izlaz Booleovih operacija zove se vrata. Za konstrukciju se mogu koristiti različite tehnologije kao što su zupčanici, releji, optički uređaji. U današnjim uređajima vrata su obično predstavljena elektroničkim sklopom kod kojeg se znamenke 0 i 1 interpretiraju naponskim nivoima. Za objašnjavanje funkcionalnosti poslužit ćemo se samo simboličkim oznakama tih sklopova prokazanim na slijedeći način:

SKLOP OZNAKA ULAZ 1 ULAZ 2 IZLAZ
I VRATA 0
0
1
1
0
1
0
1
0
0
0
1
ILI VRATA 0
0
1
1
0
1
0
1
0
1
1
1
NOT VRATA 0
1
1
0


Uređaji (sklopovi) predstavljeni gornjim simbolima temeljni su sastavni dijelovi od kojih je izgrađeno čitavo računalo. Značajan korak u razumijevanju ove tvrdnje predstavljen je funkcionalnošću bistabila
– sklop koji ima dva stabilna stanja, a izgrađen je isključivo od osnovnih vrata. Sklop generira ili nula ili jedan i tu vrijednost drži konstantno na svom izlazu sve dok impuls sa drugog sklopa ne promijeni mu stanje. Drugim riječima, sklop «preklapa» na jednu od dvije moguće vrijednosti upravljan vanjskom pobudom.

Promotrimo detaljnije:
Da bi realizirali sklop koji nam predstavlja memoriju, moramo usvojiti pojam "povratne veze". Općenito, taj se pojam koristi ukoliko signal (ili dio signala) sa izlaza dovodimo na ulaz istog sklopa. Najjednostavniji je primjer predstavljen slikom:



Ako je izlaz Q bio u stanju 1, u tom stanju će i ostati, tj trajno će ga pamtiti. Ostvarimo li sklop složenijeg oblika sastavljen od dvaju NAND vrata, tada funkcionalnost sklopa možemo predstaviti tablicom:

R S Q Q'
0 0 Nedozvoljeno stanje Nedozvoljeno stanje
0 1 1 0
1 0 0 1
1 1 Pamti prethodno stanje Pamti prethodno stanje


Ono što je zapisano u tablici možemo interpretirati kao:
  • Ako su R i S suprotni, onda Q slijedi S ulaz, a Q' je suprotan Q
  • Ako se R i S istovremeno upale u 1, sklop pamti prijašnje stanje
  • Ako se R i S istovremeno upale u 0, izlaz nema smisla, pa mogućnost takvog ulaza moramo zaustaviti (spriječiti) dodatnom logikom
Predstavimo li ulaz D kao ulaz putem kojeg se upisuju podaci (DATA), a ulaz E kao ulaz koji omogućava ili brani unos novih podataka (ENABLE) dobili smo sklop koji može pamtiti bit i kontrolirati vrijeme izmjene. Sklop poput bistabila «pamti» određeno stanje na svom izlazu. Upravo takvi sklopovi čine osnovne elemente određenih vrsta memorije koje koriste današnja računala.