Professional Documents
Culture Documents
UORDPDF
UORDPDF
brojanjem, dolazi do stvaranja prvih brojanih sistema. U starom veku svaka civilizacija je imala
svoje naine zapisa brojeva i raunanja. NA prime egipani koji su sa arapima imali razvijenu
trgovinu koristili su nepozicioni brojni sistem slian rimskom, samo to se umesto slova koristili
razni znakovi za oznaavanje razliitih vrednosti. Prvi brojani sistem slian dananjem (teinski)
definisalisu indusi izmeu 100g n.e. I 200g n.e. Oni su koristili 9 cifara, od njih su arapi 875g n.e.
preuzeli sistem i dodali mu jednu cifru vie (nulu) i napravili sistem kakav danas koristimo. U
evropu je stigao negde u 12.veku. Od "pomagala" u premehanikom periodu su korieni
tapii, kamenii i kosti koje su olakavale brojanje i eventualne raunske operacije. Neki
autori smatraju da su prva raunska sredstva bili antiki tableti za brojanje ABACI, to u sutini
predstavlja preteu abakusa. Tek u 13. veku nastaje "moderna" verzija abakusa, koja dosta
olakava brojanje i elementarne raunske operacije. Koncept raunara kakav danas koristimo je
graen korak po korak kroz vekove pri emu je vili broj ljudi da svoj doprinos, meu njima je
i Muhamed ibn Musa Al Horezmi koji je prvi definisao detaljna pravila izvoenja raunskih
operacija, prema kome je algoritam dobio ime.
Mehaniki period 1450g 1840g
U premehanikom periodu prvi bitniji pomak je ostvario Johan Gutenberg (Johann Gutenber)
1450 godine kada je konstruisao prvu tamparsku presu, ime je postignuto da knjige budu
bre tampane i dostupnije irem krugu ljudi. Ali jo uvek je bilo problema pri raunskim
operacijama, tj. Problemi koji su se javljali razvijanjem trgovine i nauke, naime trebalo je reiti
probleme to bre sa to je mogue veom tanou. Prvi pomak na ovom polju napravio je
Don Neper (John Napier), on je 1614g objavio knjigu Rabdologiae u kojoj je objasnio kako je
mogue transformisati mnoenje i deljenje u sabiranje i oduzimanje, uveo pisanje decimalne
take. Takoe je konstruktor Neperove kosti i kalkulatora(kosti mnoenje jednocifrenog broja
i broja proizvoljne duine, kalkulator izraunavanje korena i kvadrata).Engleski svetenik
Viljem Outred (William Oughtred) 1622. god konstruie klizajui lenjir (iber), omoguavao je
deljenje i mnoenje sa tanou od 3 decimale. iber se intezivno koristio u 19. i 20. veku do
pojave elektronskih kalkulatora. 1642. god Blez Paskal (Blaise Pascal) konstruie mainu koja je
mogla da sabira i oduzima osmocifrene brojeve (Pascaline) . 1673. god Lajbnic pravi mainu
prema Paskalovom konceptu, stim to je lajbnicova maina mogla da sabira, oduzima, deli i
mnoi brojeve koji su imali izmeu 5 i 12 cifara a rezultat je mogao da ima 16 cifara. Francuski
inenjer akard je 1801 god konstruisao automatski razboj koji je koristio buene kartice za
kontrolu are (ovo se smatra za prvu programabilnu mainu). 1820. god arls Havijer Tomas de
Kolmar prema osnovama Lajbnicove maine konstruie aritmometar , to je ujedno i prva
raunska maina koja je ula u serijsku proizvodnju. Do kraja 19. veka konsturisano je jo mnog
raunskih maina, npr Komptometar konsturisana od strane Felta i Taranta je prva raunaska
maina u koju su se vrednosti unosile pritiskanjem tastera. Meutim najznaajniji dogaaj
mehanikog perioda je pojava diferencijske maine koju je konstruisao arls Bebid (Charles
Babbage). On je napravio prototip svoje maine koja je mogla da izraunava kvadrate i kubove
6cifrenih brojeva i razlike drugog reda. Rad na kompletnoj maini je prekinut zbog nedostatka
sredstava. U periodu izmeu 1847 i 1849god projektuje poboljanu verziju diferencijske
maine, ali i ona ostaje nedovrena zbog sredstava (1991 godine je uraena maina prema
bebidovim nacrtima i tehnologiji dostupnoj tada i maina je radila). Pored diferencijske maine
Bebid je radio i na analitikoj maini (1833god). Ideja je bila ta da se u analitiku mainu preko
buenih ploica unose vrednosti, kao i podaci o eljenoj operaciji koja treba da s izvri.
Analitika maina je pretea dananjih raunara. NA projektovanju te maine mu je pomagala i
Ada Augusta Bajron koja se zbog toga smatra prvim programerom u istoriji.
Elektromehaniki period 1840. g. - 1939. g.
Za ovaj period se vezuje otkrie metoda za generisanje i uvanje elektriciteta pomou baterija
krajem 18. veka. 1830. god. je konstruisan prvi telegraf koji je omoguio prenos informacija na
velike daljine, na znaenju je dobio definisanjem Morzeove azbuke 1835. 1866 god spojene su
Evropa i Amerika podmorskim telegrafskim kablom. Sledei pomak u komunikacionoj
tehnologiji bio je pronalazak telefona (Alexandar Graham Bell 1876. god.) i radija (Marconi
1894. god.). Na poetku ovog perioda 1854. g. Dord Bul (George Boole) je objavio knjigu
"Matematika analiza logike" , u njoj je koristio binarni sistem za simboliko i logiko
rezonovanje, danas poznat kao Bulova Algebra.Herman Holerit (Herman Holerith) je 1884. god.
patentirao svoju automatsku mainu za tabeliranje, zasnovanu na buenim karticama,
1890.god. je upotrebio usavrenu verziju maine pri popisu stanovnika u SAD. Posle uspene
saradnje sa vladom SAD osniva kompaniju pod nazivom "Hollerith Tabulating Company" koja je
nastavila sa proizvodnjom slinih maina. Kasnije je sa jo dve kompanije 1914.god. formirala
kompaniju Calculating-Tabulating-Recording koja je 1924.god. promenila ima u IBM. 1935.god.
IBM je proizveo mainu sa buenim karticama pod oznakom 601, koji obavlja mnoenje brojeva
za 1s. Konrad Cuse (Konrad Zuse) je 1931.god prvi elektromehaniki kalkulator u Nemakoj, a
1938.god. objavio poboljanu verziju kalkulatora (Z2), a 1941.god. konstruisao je i Z3 prvi
mehaniki programabilni kalkulator. Pored ve pomenutih maina i raunara, razvijane su i
maine specijalne namene (ifrovanje, deifrovanje) o njima se veoma malo zna poto su
uvani kao dravne tajne (Nemaka Enigma, ili Poljska Bomba). Dord Stibic (George Stibitz)
1939.god. konstruie elektronski relejni mehaniki kalkulator, koji je reavao probleme sa
kompleksnim brojevima, maina je bila specifna i po tome to je podatke unosio preko
teleprintera, dok je sa mainom bio povezan telefonskom linijom. Slava konstruktora prvog
elektromehanikog raunura pripala je Hauardu Ejkenu (Howard Aiken). Uz pomo IBMa je
1944 konstruisao Hardvard Mark 1, koji je bio zasnovan na Holeritovoj maini i Bebidovoj ideji
o maini ote namene. MARK 1 je vrio izraunavanja navigacionih tabela za mornaricu.
Elektronski period 1939. god. - danas
1903. god. kada je Nikola Tesla patentirao elektronsko logiko kolo nazvano vrata ili prekida,
otvorile su se mogunosti za razvoj elektroniskih raunara, pa je za njim krenula lavina
pronalazaka, koji bi (su) omoguili raunare kakve danas poznajemo . 1906.god. Li de Forest
konstruie prvu vakuumsku cev, a 1919.god. je publikovao nacrt prvog Flip Flopa (elektronsko
logiko kolo (bistabil)). Vladimir Zvornik 1928.god. konstruie prvi ekran sa katodnom cevi. Alan
Tjuring (Alan Turing) je 1936.god. objavio svoj rad o "izraunljivim brojevima" gde je predloio
reavanje matematikih problema preko automatizovane maine (veoma slina dananjim
raunarima). Ta maina je kasnije nazvana Tjuringova Maina. 1939.god. na univerzitetu u Ajovi
(SAD) konstruisan prvi 16bitni sabira sa vakuum skim cevima, konstruktori su bili Don
Atanasof (John V. Atanasoff) i Kliford Beri (Clifford Berry). Na osnovu ovog kalkulatora isti ljudi
konstruiu ABC(Atanasoff-Berry-Computer) 1940.god. , koji je reavao sisteme simultanih
lineranih jednaina. 1943. god. je puten u rad Kolos Mark 1 (Collosus Mark 1) koji je sluio za
deifrovanje nemakih ifrovanih poruka. uvan je u strogoj tajnosti i o njemu se mnogo malo
znalo. 1944.god. postaje operativan i Kolos Mark 2, meutim posle kraja drugog svetskog rata
unitene su sve maine zbog mogue pijunae. Ekert i Muli sa svojim timom 1946. god.
zavravaju ENIAC (Electronic Numerical Integrator and Calculator), raunar teak 30 tona, dug
preko 30 metara i visok 3 metra.ENIAC je bio bri od svih dotadanjih raunara . Bio je zasnovan
na dekadnom brojnom sistemu, i takt mu je bio 100KHz, programiranje ENIACA je bilo mogue
samo runo, tj. promenom raznih prekidaa i runim prekopavanjem kablova. ENIAC je vrio
niz sloenih izraunavanja na koja su koriena za proveri teorije na osnovu koje je konstruisana
vodonina bomba. Zbog toga se 1946.god. smatra poetkom nove ere u razvoju i primeni
elektronskih raunara. ENIAC je bio u upotrebi do 1955.god. Don Fon Nojman (John von
Neumann) 30. juna 1945. god. objavio je nacrt u kome je izloio ideju za konstrukciju raunara
koji bi imao mogunost uvanja programa i njegovog kasnijeg izvravanja, ovakav raunar je
nazvao EDVAC (Electronic Discrete Variable Automatic Computer) , ovakva arhitektura je dobila
ima "Fon Nojmanova arhitektura" . Juna 1947. god. Hauard Ejken i njegov tim su zavrili i
pustili u rad elektromehaniki raunar Harvard Majk 2. Ovaj raunar nije imao mogunost
uvanja programa u memoriju ve su podaci i programi odvojeno uvani, ovakva arhitektura se
naziva "Harvard arhitektura". Pri radu na konstrukciji Marka 2, Grejs Huper (Grace Murray
Hopper) je otkrila moljca koji se zaglavio i napravio spoj na jednom releju. I zavela je kvar kao
"bug" (buba), i odatle potie termin bug, koji oznaava greke u programima ili hardveru.
Inae tim sa Ejkenom na eku je napravio jo dva raunara Mark 3 (1949.god.) i Mark
4(1952.god.). Januara 1948.god. IBM je napravio SSEC mainu (Selective Sequence Control
Computer) hibridnu mainu koja je mogla interno da uva deo programa. Grupa na elu sa
Morisom Vilkisom je juna 1949.god. zavrila EDSAC (Electronic Delay Storage Automatic
Computer) kojije zasnovan na Fon Nojmanovoj ideji o EDVACu. To je prvi operativni raunar
koji jemogao da uva proigram. Ulazno izlazne operacije su ile preko buenih kartica, dok je
memorija bila realizovana pomou vakuumskih cevi ispunjene ivom. Grupa koja je radila na
univerzitetu u Manesteru, na elu sa Maks NJumenom(Max Newman) i Fredi Vilijamsom
(Freddy Wiliams) je juna 1948.god. napravio prototip raunara pod nazivom SSEM (Small - Scale
Electronic Machine) ili Beba,raunar je uvao podatke memoriji realizovanih pomou katodnih
cevi (Vilijams). Ista grupa je 1949.god. razivala Manchester Mark 1 raunar kom je program
unoen u binarnom obliku preko tastature, i kao takav uvan u memoriji i kasnije ispisivan na
katodnoj cevi. Za ovaj raunar je Tjuring razvio pritivni asemblerski jezik. MESM (Mala
elektronska raunska maina) je razvijena u periodi od 1947.god. do jaunara 1951.god., od
starne grupe koja je na elu imala Sergeja Aleksejevia Lebedeva. MESM je koristio zapis u
fiksnom zarezu i izvravao je oko 50 instrukcija u sekundi. Grupa je radila u strano loim
uslovima i koristili su odbaene radio ureaje radi delova. Grupa univerziteta u Pensilvaniji
radila je na konstrukciji EDVACa, koji je bio zavren krajem 1951.god. EDVAC je imao 4000
vakuumskih cevi 10000 dioda, i 1024 rei duine 44bita realizhovane preko ultrasonine
memorije. Brzina takta je bila 1MHz. Grupa na elu sa Fon Nojmanom je radila na univerzitetu
Prinston. Maina razvijana za napredne nauke (Insttitute For Advanced Study Machines, IAS) po
kome je kasnije i dobila ime. Maina zavrena 1952.god. Ekert i Muli su 1949.god. isporuili
vazduhoplovstvu BINAC (Binary Automatic Computer), ovaj raunar je znaajan po tome to je
prvi raunar sa dualnim procesorom (drugi je sluio u sluaju da prvi otkae). Isti ljudi su radili i
na razvoju poslovnog raunara UNIVAC (Universal Automatic Computer) meutim ostali su bez
sredstava, i bili prinueni da prodaju kompaniju firmi Remington Rad, u ijem sastavu su
nastavili sa razvojem UNIVACa, meutim, to nije bio prvi poslovni raunar, ta ast je pripala
britanskom raunaru LEO(Lyons Electronic Office) koji je izaao par meseci pre UNIVACa.
Decembra 1950 god. u rad je puten Vihor (Whirlwind) prvi raunara konstruisan da radi u
realnom vremenu. Konstruisan je na MITu (Massachusetts Institute of Techonology) od strane
tima na ijem elu je bio Dej Forester (Jay W. Forester) Raunar je konstruisan za istraivaki
institut ratne mornarice SAD. Vihor je mogao da uradi 500 000 sabiranja ili 50 000 mnoenja u
sekundi.
glavni predstavnici ovog perioda su UNIVAC II iz 1957 godine, kao i IBM 700
serija racunara.
Takodje u vom periodu Dzon Bekus pravi prvi FORTRAn prevodilac 1957.
Druga generacija racunara(1959g-1964g)
-------------------------------------Glavna razlika u odnosu na prvu generaciju racunara je sto su umesto vakumskih cevi za logicke jedinice poceli da se koriste tranzistori, a unutrasnja
memorija su bila magnetna jezgra. Ovo je dovelo do pouzdanijih racunara,
manje potrosnje energije...
Za izradu tranzistora koriscen je prvo germanijum koji je bio skup, a kasnije
se pocelo sa koriscenjem silicijuma.
U ovom periodu se pocinje razvitak operativnih sistema, prevodioca za jezike
viseg nivoa.
Tipican predstavnik je IBM 7094, kod kojih su instrukcije cuvane u memoriji
a izvrsava ih procesor.
Takodje treba napomenuti i projekat Strech, koji je prvi proces izvrsavanja
delio na fazu dohvatanja i dekodiranja i fazu izvrsavanja.
Treca generacija racunara(1965g-1971g)
-------------------------------------Integrisana kola su obelezila ovu generaciju racunara, kao i dalje razvijanje
operativnih sistema i programskih jezika viseg nivoa kao sto je C.
1970g IBM je ponudio Floppy disk.
Predstavnici su IBM S/360 zasnovan na integrisanim kolima., kao i PDP-8 koji
je bio prvi mini racunar na trzistu, bio je prenosan.
Cetvrta generacija racunara(1972g-danas)
---------------------------------------Nastavak razvoja integrisanih cipova je doveo do pojave visokointegrisanih
cipova, a umesto memorije u ovom periodu se koristila poliprovodnicka memorija koja je bila dosta brza a realizovana je u tehnologiji integrisanih kola.
Rastom procesorskih mikrocipova doslo je do pojave mikroprocesora, gde su sve
komponente CPU smestene na jednom cipu.
Predstavnik je racunar CRAY-I.
U ovom periodu dolazi i do razvoja telekomunikacionih mreza.
Brojani sistemi se dele na nepozicione i pozicione. Kod nepozicionih sistema znak koji oznaava
cifru ima istu vrednost bez obzira na poziciju u zapisu broja (egipatski, rimski). Kod pozicionih
sistema vrednost znaka koji predstavlja cifru zavisi i od samog znaka i od pozicije cifre u zapisu
broja (arapski, indijski).
Osnova brojanog sistema je broj razliitih cifara pozicionog brojanog sistema.
Brojana vrednost X u sistemu sa osnovom N se dobija kao zbir vrednosti pojedinanih cifara:
gde su Xi cifre brojanog sistema, V(Xi) vrednost cifre Xi u zapisanoj nisci cifara, a i mesto cifre u
zapisanoj nisci cifara u intervalu od m do n.
Brojana vrednost cifre Xi u zapisanoj nisci cifara zavisi od vrednosti i poloaja cifre i u
najveem broju pozicionih brojanih sistema jednaka je V(Xi)=Xi * Ni. Sve operacije se vre u
brojanom sistemu sa osnovom N.
Pozicija cifre je mesto cifre u zapisu broja. Duina broja je broj cifara u zapisu broja. Teina
cifre je vrednost koliko cifra tei.
Binarni brojani sistem N=2, S={0, 1}. Koristi se u savremenim digitalnim raunarima.
Troini brojani sistem ili sistem sa osnovom 3, N=3, S={0, 1, 2}.
Balansirani troini brojani sistem N=3, S={-1, 0, 1}. (bt)
Oktalni brojani sistem N=8, S={0, 1, 2, 3, 4, 5, 6, 7}. Koristi se u raunarstvu.
Dekadni brojani sistem N=10, S={0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. Koristi se u svakodnevnom ivotu.
Heksadekadni brojani sistem N=16, S={0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}. Koristi se u
raunarstvu.
Brojani sistem kod koga je osnova jednaka N se naziva brojani sistem sa negativnom
osnovom. Specijalni sluaj je kada je N=-2, S={0, 1, 2} i naziva se negabinarni brojani sistem.
(nb)
Osnova brojanog sistema moe da bude i razlomljen broj. Na primer: N=0.5
Brojani sistem sa promenljivom osnovom je sistem kod koga je svakoj poziciji i pridruena
vrednost mi.
Osobine pozicionih brojanih sistema sa fiksnom osnovom:
Poveanjem osnove brojanog sistema smanjuje se duina zapisa broja;
U svim brojanim sistemima se osnova zapisuje kao 10 (jedan, nula), dok je 0 (nula) najmanja
cifra u svim sistemima.
Zapis meovitih brojeva
Neoznaeni meoviti brojevi bez obzira na brojani sistem u kome se zapisuju mogu biti
zapisani na vie naina:
U uobiajenom obliku sa takom osnove (radix point) izmeu celobrojnog i razlomljenog dela.
Zapis u fiksnom zarezu jer je broj cifara u razlomljenom delu uvek fiksiran (jednak m) bez
obzira na veliinu broja. Svaki meovit broj se uvek zapisuje pomou n cifara, pri emu se sa m
n cifara zapisuje razlomljeni deo, a sa n - m cifara celobrojni deo broja. Ukoliko je broj cifara u
celobrojnom delu vei od n - m, vrednost ne moe da bude zapisana i javlja se greka pri zapisu.
Ukoliko je broj cifara u razlomljenom delu manji od m, preostale pozicije se popunjavaju
nulama. Ukoliko je broj cifara u razlomljenom delu vei od m, tada se zapis broja skrauje na m
cifara u razlomljenom delu.
Zapis u pokretnom zarezu pomou znaajnog dela broja (F) i eksponenta (E) koji su
predstavljeni kao brojevi u fiksnom zarezu. Vrednost broja je jednaka F*Ne.
posebno kodiraju cifre razlomljenog i celobrojnog dela broja, i od dobijenih prevoda formira
eljeni prevod. (binarni, oktalni i heksadekadni sistem)
primer: (54,12)8=(101100,001010)2
(+127)10
Znak i apsolutna vrednost: 0127
Nepotpuni komplement: 0127
Potpuni komplement: 0127
Viak 4: 0131
(-64)8
764
713
714
720
Svi podaci u savremenim digitalnim raunarima se uvaju u obliku binarnog zapisa iju osnovu
ini binarni sistem. Rad sa binarnim sistemom je sloen, pa se pri radu na mainskom nivou
koristi zapis pomou heksadekadnog brojanog sistema. Razlog je laka konverzija izmeu
binarnog i heksadekadnog sistema, i rad sa podacima zapisanim u brojevima. Na raunarima se
podaci najee uvaju u jednom ili vie bajtova. Podaci u svakom od bajtova se mogu grupisati
u dve celine po etiri bita koje se svaka pojedinano mogu predstaviti heksadekadnom cifrom.
Sabiranje i oduzimanje u binarnom i heksadekadnom sistemu se obavlja po principima
analognim sabiranju i oduzimanju u dekadnom sistemu. Kao pomo pri izvoenju ovih
operacija koriste se tabele za binarno i heksadekadno sabiranje i oduzimanje.
Pri sabiranju, sabirci se nalaze sa leve strane i na vrhu tabele, a rezultat se oitava u sredini
tabele, na mestu preseka vrste i kolone u kojoj se nalaze sabirci.
Pri oduzimanju, umanjilac se nalazi sa leve strane, umanjenik je u sredini (u istoj vrsti kao i
umanjilac), a razlika se oitava na vrhu tabele, u koloni u kojoj se nalazi umanjenik.
Sabiranje i oduzimanje viecifrenih brojeva se vri tako to se polazi sa desne strane, obrauje
pozicija po pozicija uz dodavanje prenosa narednom cifarskom mestu (kod sabiranja), odnosno
umanjenje za prenos narednog cifarskog mesta (kod oduzimanja).
primeri:
Binarno sabiranje i oduzimanje
Zbir 12 + 12 je 02 uz prenos 12.
Zbir 012 + 112 se dobija sabiranjem poevi od pozicije najmanje teine 12 + 12 = 02 uz prenos
12 na narednu poziciju. U sledeem koraku se sabira 12 + 02 + 12, to kao rezultata daje 02 uz
prenos 12. Kako je ovo bila pozicija najvee teine konani zbir je 012 + 112 = 1002.
Razlika 102 12 se odreuje tako to se u tabeli nae 1 na mestu za umanjilac i pronae u toj
vrsti umanjenik 10. Rezultat 1 se dobija na vrhu kolone u kojoj je umanjenik.
Zbir 2B16 + AE16 se dobija tako to se u prvom koraku odredi zbir B16 + E16, to je prema
tabeli 916 uz prenos 116. U narednom koraku se odreuje zbir 116 + 216 + A16. Kako je 116
+ 216 = 316 i 316 + A16 = D16 dobija se D916 kao krajnji zbir.
Razlika 3216 A16 se zapisuje kao 3216 0A16. U prvom koraku se odreuje 216 A16 (uz
pozajmicu 1 sa prethodnog cifarskog mesta), to iznosi 816. U drugom koraku se naredna
cifarska pozicija umanjenika smanji za prenos, tj. 316 116 = 216, a zatim izrauna razlika sa te
pozicije 216 016 = 216. Time je odreen krajnji rezultat 2816.
Mnoenje i deljenje u binarnom sistemu je trivijalno, dok se u heksadekadnom sistemu moe
izvesti pomou tabele. Tabela se ne koristi za deljenje nulom.
Hartmanova metoda prevoenja
Znakovni podaci se u raunaru zapisuju pomou binarnih kodova. Danas se koristi vie razliitih
kodova, kod kojih se svaki karakter kodira niskom binarnih cifara duine 7, 8 ili 16. Kodovi koji
se najee koriste:
ASCII U ovom kodu se moe predstaviti 128 razliitih karaktera pri emu se svaki karakter
predstavlja jednoznanom niskom od 7 binarnih cifara. Iako se za kodiranje koristi niska od 7
binarnih cifara, karakteri kodirani u ASCII kodu se skoro uvek uvaju i prenose u grupi do 8
bitova, pri emu se osmi bit koristi za kontrolu parnosti. Karatkeri u ASCII kodu se mogu podeliti
na kontrolne karaktere i karaktere koji imaju grafiku reprezentaciju na ekranu. Zasniva se na
engleskom alfabetu, i ne moe da kodira nau latinicu i irilicu.
EBCDIC U ovom kodu se moe predstaviti 256 razliitih karaktera pri emu se svaki karakter
predstavlja jednoznanom niskom od 8 binarnih cifara. Karakteri se dele na kontrolne karaktere
i karaktere koji imaju grafiku reprezentaciju na ekranu.
ISO-8 8-bitni kod koji se u prvih 127 pozicija poklapa sa ASCII kodom dok su preostale pozicije
popunjene kontrolnim i grafikim karakterima. ISO-8 grafiki karakteri formiraju kodnu stranu
koja se naziva ISO/ANSI Multilingual jer sadri grafike karaktere koji se javljaju u razliitim
evropskim jezicima.
IBM-PC 8-bitni kod koji se u prvih 127 pozicija poklapa sa ISO-8 kodom. Pozicije iznad 126 su
popunjene razliitim kontrolnim i grafikim karakterima.
UNICODE Standard za univerzalno kodiranje karaktera i omoguuje razmenu, obradu i prikaz
teksta pisanog u bilo kom jeziku savremenog sveta. UNICODE standard je kompatibilan sa ISO
standardom. Moze da se predstavi 65536 razliitih karaktera u jednoznanoj 16-bitnoj nisci.
UTF-8 Kodira svaki UNICODE simbol pomou promenljivog broja (1-4) okteta (svaki oktet ima
8 bitova), pri emu broj okteta zavisi od celobrojne vrednosti koja je dodeljena UNICODE
karakteru. UTF-8 je kompatibilan sa ASCII kodom. Danas je u irokoj upotrebi.
Kodna strana predstavlja preslikavanje izmeu grafikih karaktera i heksadekadnih
identifikacija. Svrha postojanja kodnih strana je omoguavanje razliitog rasporeda karaktera u
okviru istog koda (kombinacija irilinih i latininih slova).
Ako je zapisan u obliku znak i apsolutna vrednost, bit za znak se pomeri na krajnje levu poziciju i ostala
mesta se popune nulama.
Ako je zapisan u obliku nepotpunog ili potpunog komplementa, slobodne pozicije se popunjavaju
znakom broja.
primeri:
+ 127
-64
znak i apsolutna vrednost:
nepotpuni komplement:
potpuni komplement:
uveanje 128:
01111111
01111111
01111111
11111111
11000000
10111111
11000000
01000000
1. Ovaj algoritam se izvodi tako sto se formira modifikovani Butov mnozilac. On se formira
tako sto se citajuci s desna na levo na pojavu prve jedinice u nizu pise -1, a na pojavu
prve nule nakon niza jedinica pise 1. Na ostala mesta se upisu 0.
2. Formiraju se parovi od po dva clana iz kodiranog mnozioca i njihova vrednost se odredjuje
po formuli 2*A_(2k)+A_(2k-1). Moguce vrednosti su -2, -1, 0, +1, +2
3. Za svaki par koji se pojavi, mnozenik se pomera za 2k mesta ulevo.
4. Tako pomeren mnozenik mnozi se sa vrednoscu para i dobijaju se delimicni proizvodi.
Ako je vrednost para jednaka 0, delimicni proizvod je jednak nuli.
Ako je vrednost para jednaka 1, delimicni proizvod je jednak pomerenom mnozeniku.
Ako je vrednost para jednaka -1, delimicni proizvod je potpunom komplement pomerenog
mnozenika.
Ako je vrednost para jednaka 2, pomera se mnozenik za jos jedno mesto i to je delimicni
proizvod.
Ako je vrednost para jednaka -2, pomera se mnozenik za jos jedno mesto, pa se tako
dobijeni broj potpuno komplementira i to je delimicni proizvod.
5. Kada se svi parovi upotrebe onda se sabiraju delimicni proizvodi i dobija se konacni proizvod.
U najgorem slucaju broj koraka potreban za mnozenje bice jednak K/2 gde je K broj bita mnozioca.
15. Binarno kodirani dekadni brojevi. Binarni kodovi. BCD zapis. Primeri.
Zbog toga sto je nekada nemoguce tacno predstaviti dekadne razlomljene
brojeve u binarnom brojevnom sistemu, doslo se na ideju da se svaka
dekadna ciffra u zapisu broja posebno kodira pomocu binarnog zapisa.
Za uspesno kodiranje svih cifara potrebno je da binarni kod sadrzi najmanje 4 binarne cifre. To daje veliki broj razlicitih kombinacija, ali
posto su dosta njih neupotrebljivi, a i da bi se postoval pravila imamo
neke osnovne zapise koji se danas koriste.
Pravila su sledeca:
1. Kodiranje mora biti jednoznacno, tj razlicite dekadne cifre
moraju biti rezlicito binarno kodirane
2. Najvecoj dekadnoj cifri 9, mora biti pridruzena kodirana rec
koja ima najvecu vrednost posmatrana kao binarni broj
3. Parni i neparni brojevi moraju odgovarati parnim i neparnim
binarnim brojevima
4. Kod je komplementaran kada je a+b=9, gde su a i b kodovi
odgovarajucih dekadnih cifara
DPD kodiranje:
-----------------abcd efgh ijkl
0101 1001 0110
~znaka broja
~frakcije i
~eksponenta.
Tipican predstavnik racunara koji su koristili zapis sa binarnom osnovom su familije PDP-11 i VAX-11
firme DEC.
Zapis u registru duzine 32 bita pomocu binarne osnove prikazan je na sledecoj slici:
Znak
broja
Eksponent sa uvecanjem
128
Frakcija
Znacajni deo broja se zapisuje u obliku znaka i apsolutne vrednosti. Znak znacajnog dela broja je
istovremeno i znak broja. Upisuje se u bit najvece tezine i ima vrednost 0 za pozitivne i 1 za negativne
brojeve. Apsolutna vrednost se prevodi u binarni sistem i zapisuje u normalizovanom obliku uz dodatnu
modifikaciju. Umesto oblika
d 0,d-1d-2..d-(p-1)
koristi se oblik
0,d0d-1d-2..d-(p-1)
s tim da se frakcija zapisuje sa 23 (0-22)binarne pozicije umesto sa 24, zbog toga sto d0 mora da bude
jednak jedinici, pa se on izostavlja.
Pa bi frakcija broja izgledala :
d-1d-2...d-(p-1)
Eksponent se zapisuje u 8 bita na pozicijama od 23-30. Vrednost eksponenta se zapisuje uz uvecanje
128. Vrednost eksponenta koji moze da se zapise pripada intervalu
[-128, +127], odnosno sa uvecanjem [0, 255].
Za vrednost s, kojom se predtavlja frakcija vazi:
Na osnovu prethodnog mogu se zapisati brojevi u intervalu
Medjutim kako
Odnosno dekadno:
Pokusaj da se yapise broj veci od
u zavssnosti od znaka broja. Pri zapisu realnog broja u pokretnom zarezu moze do potkoracenja,
potkoracenje se javlja pri pokusaju zapisa broja koji je po apsolutnoj vrednosti manji od donje granice
intervala brojeva koji se mogu predstaviti u zapisu
U tom slucaju racunar generise informaciju
da je doslo do potkoracenja, zapise takav broj kao 0 i nastavi dalje sa radom. Potkoracenje takodje
moze biri pozitivno i negativno.
Realan broj se zapisuje u dvostrukoj tacnosti pomocu dva uzastopna registra velicine 32 bita. Format
zapisa u prvom registru je identican formatu zapisa u jednostukoj tacnosti, dok se ceo drugi registar
koristi za registrovanje dodatnoh cifara frakcije, dok eksponent ostaje isti.Interval realnih brojeva koji
mogu da se predstave u dvostrukoj tacnosti je:
21. IEEE 754 zapis realnih brojeva i karakteristike. Opis standarda IEEE
754-2008
Zbog lose prenosivosti numerickih programa, lose kompatibilnosti na drugim
racunarima 1985 godine uveden je IEEE 754 standard za zapis realnih brojeva
u pokretnom zarezu. On je propisivao neka pravila, algoritme za izvodjenje
aritmetickih operacija, kao i zaokruzivanja tih brojeva.
1. Zaokruzivanje i greske. Neke brojeve u pokretnom zarezu ne mozemo uvek
predstaviti pomocu izabranog broja bitova, tako da ih moramo zaokruziti i
pri tome se javlja greska koja se moze izraziti u UPL-ima ili kao relativna
greska. Greska u ulpima je greska jedinica na poslednjem mestu. A relativna
greska je apsolutna vrednost razlike broja i njegove reprezentacije, koju
delimo apsolutnom vrednoscu broja.
ULP se koristi kada zelimo da odredimo gresku prilikom zaokruzivanaj, dok za
analizu greske prilikom izracunavanja koristimo relativnu gresku. Oba nacina
su vezana za masinsko E, a oba se takodje mogu koristit za odredjivanje reda
velicine greske.
2. Cifre cuvari sluze da se prilikom izracunavanja smanje greske, tako sto se
brojevi zapisuju sa vecom preciznoscu, pa se posle zavrsene operacije svedu
na staru preciznost. U nekim slucajevima nije dovolja jedna cifra cuvar, pa
se negde koriste i dve cifre cuvara.
3. Tacno zaokruzene operacije se sastoje u tome da se rezultat po zavrsetku
operacije zaokruzi na najblizi realan broj u pokretnom zarezu, tako se dobije
veca preciznost nego pomocu cifara cuvara.
Zbog nemogucnosti predstavljanja svih dekadnih realnih brojeva pomou binarne
osnove, kao i zbog blizine dekadne osnove ljudima doslo se na ideju da se u
standard uvede i dekadna osnova. Kao nacin kodiranja je predlozen BCD, koji
je poslednjih godina promenjen u DPD.
Normalizovani brojevi poseduju eksponent e pripada [e min, e max], implicitni bit je 1, dok
frakcija moze da ima proizvoljnu vrednost.
NaN (Not a number)
NaN-ovi se u IEEE 754 predstavljaju kao broj u pokretnom zarezu sa eksponentom e max +1 (sve
jedinice) i frakcijom koja nije 0.Sadrzaj frakcije zavisi od konkretne implementacije na racunaru. U praksi
se javljaju 2 grupe NaNova:
1) sNaN signalizira izuzeto stanje kod aritmetickih operacija, poredjenja i konverzija operacija
koje su deo standarda.
1 ili 0
11.. 11
0 ili 1
111..111
0000.00000
Oznacena 0
0 se predstavlja pomocu eksponenta e min -1 dok je frakcija jednaka 0. Kako znak moze da ima 2
razlicite vrednosti, to u standardu postoje 2 zapisa za 0 : +0 i -0. Da ne bi bilo razlike pre poredjenju +0 i
-0 standardom je definisano da vazi da su one jednake.
0 ili 1
0000..00
000 000
Denoramlizovani brojevi
Ako je vrednost frakcije f i ako je vrednost eksponenta e, kada je e> e min -1, broj se predstavlja kao
1,f*2^e, dok ako vazi e=e min -1, tada se broj predstavlja kao 0,f * 2^e +1. Bez denormalizovanih
brojeva, svaki broj manji od 2^-26 je zamenjivan sa 0. Sa denormalizovanim brojevima granica je
pomerena na 1,0 * 2^-149 (frakcija sadrzi samo 1 na poslednjem mestu.) Na taj nacin se postize
postepeno potkoracenje.
1 ili 0
000..00
, m je tipa d_0,d_1...d_(p-1)
2. Dve beskonacne vrednosti +oo i -oo
3. Dve NaN vrednosti i to qNaN i sNaN
U nekim slucajevima se frakcija predstavlja kao ceo broj umesto kao razlomljen i
u tom slucaju se konacan broj u pokretnom zarezu predstavlja kao oznacena nula
ili ne-nula vrednost obliak
gde je s=(0,1), emim<=q+p-1<=emax, a C
je broj predstavljan sa d_0.....d_(p-1)
Binarna osnova:
--------------U formatu za razmenu podataka zapisanih pomocu binarne osnove se svaki broj u
pokretnom zarezu zapisuje na jedan nacin. Da bi ovo bilo pravilo izvedeno frakcija se povecava dok exponent smanjujemo, sve dok e=emin ili m>=1. Ako je e=emin
i 0<m<1 onda smo dobili subnormalan broj u pokretnom zarezu.
Format zapisa je sledeci sa leva na desno:
1. Znak broja S velicine 1 bit
2. Uvecani exponent E=e+uvecane zapisan u W bita
3. Frakcija ili znacajan deo d_1...d(p-1) zapisan u duzini T=p-1 bita, a
vodeci ili implicitni bit je zapisan u uvecanom exponentu
Standarad definise formate za razmenu podataka zapisanih upomocu binarne osnove
velicine 16, 32, 64 i 128 bita. Formati binary32 i bynary64 odgovaraju zapisu u
jednostrukoj i dvostrukoj tacnosti. Mozemo zapisati i broj u bilo kom broju bita
koji je veci od 128, a umnozak je 32.
binary16(duz_exp=5, uvecanje=15, prec=11, min=
binary32(duz_exp=8, uvecanje=127, prec=24, min=
, max=
, max=
, max=
, max=
)
)
)
)
dva bita
do kraja.
max=
, max=
, max=
)
)
jednaki 11, a
su 00, 01 ili 10
pa do predposlednje cifre, a
je poslednja cifra
kombinacije
Nastavak frakcije sadrzi 20binarnih cifara koji sa pocetkom daju ukupno 7 dekadnih
cifara koje se mogu predstaviti u ovom obliku.
Nacin kodiranja ne utice na izbor velicine uvecanja exponenta i broja cifara u
znacajnom delu.
decimal32(duz_exp=8, uvec=101, prec=7, min=
decimal64(duz_exp=10, uvec=398, prec=16, min=
decimal128(duz_exp=14, uvec=6176, prec=16, min=
max=
, max
, max
)
)
SABIRANJE I ODUZIMANJE
Neka su brojevi x I y zapisani u pokretnom zarezu kao I neka treba izraunati njihov zbir I razliku. Pri
izvodjenju operacija treba voditi rauna o generisanju I propagaciji sprecijalnih vrednosti. Osnovni koraci
u algoritmu za sabiranje I oduzimanje su:
1. Provera postojanja specijalnih vrednosti. Ukoliko je neki od argumenata operacije specijalna
vrednost, rezulatat se odredjuje po odgovarajuim pravilima.
2. Oduzimanje x-y se realizuje kao x+ (-y) uz prethodnu promenu znaka argumentu y.
3. Ukoliko je jedan od sabiraka jednak nuli, vrednost drugog sabirka je razultat sabiranja.
4. Svodjenje sabiraka na iste eksponente. Svodjenje e vri poveavanjem manjeg eksponenta
uz istovremeno pomeranje cifara frakcije udesno. Pomeranje udesno se vri za onoliko
mesta za koliko je poveana vrednsot eksponenta. Ako pri pomeranju znaajni deo postane
nula, tada vrednost drugog sabirka postaje vrednost rezultata.
5. Sabiranju se frakcije sabitaka, pri emu se uzimaju u obzir njihovi znaci. Sabiraje se vri po
pravilima za sabiranje celih brojeva u zapisu znak I apsolutan vrednost. Ukoliko je dobijeni
rezultat nula, tada je ukupan zbir nula. Ako je pri sabiranju dolo do prekoraenja, dobijeni
rezulatat se pomera za jedno mesto udesno uz poveanje vrednosti eksponenta za jedan.
Ako ovo poveanje vrednosti eksponenta dovede do prekoraenja , ukupan rezultat
sabiranje je + ili - u zavisnosti od znaka broja.
6. Traen zbir predstavlja broj u pokretnom zarezu iji su znak I frakcija jedanki znaku I frakciji
delova sabiraka, a eksponent jednak eksponentu sabiraka. Ako u rezultatu sabiranja frakcija
nije normalizovana ili nije predstavljena pomou ciljanog eksponenta, pokuava se njegova
normalizacija odnosno trai ciljani eksponent. Ukoliko je tom prilikom dolo do
znak znacajnog dela broja je istovremeno i znak broja; upisuje se u bit najvece tezinei ima vrednost 0 za
pozitivne i 1 za negativne brojeve. Frakcija znacajnog dela broja je takodje normalizovana; zapisuje se u
6 heksadekadnih cifara u 24 bita.
Eksponent se zapisuje u 7 bita na pozicijama od 24-30. Vrednost eksponenta se zapisuje u
potpunom komplementu uz uvecanje 64. Vrednost eksponenata koji mogu da se zapisu pripadaju
intervalu [-64,+63] , odnosno [0,127] sa uvecanjem 64.
Znak
broj
a
Eksponent sa uvecanjem 64
Frakcija
negativnog prekoracenja u zavisnosti od znaka broja. Takodje pokusaj zapisa broja gde je apsolutno x
manje od
dovodi do pozitivnog ili negativnog (sto zavisi od znaka) potkoracenja.
I u ovom slucaju realan broj u dvostrukoj tacnosti se zapisuje pomocu 2 uzastopna registra velicine
32 bita. Format zapisa u prvom registru je identican formatu zapisa u jednostrukoj tacnosti, dok se ceo
drugi registar koristi za zapis dodatnih cifara frakcije broja. U ovom slucaju je interval realnih brojeva
koji mogu da se predstave u dvostrukoj tacnosti
.
Za dati skup {mn, mn-1,......m1} pozitivnih celih brojeva koji su vei od 1, RBS (mn|mn-1|.m1)
oznaava brojani sistem sa ostacima mn, mn-1,....m1.
Primer:
Primer: zapis broja 62 u RBS (8 | 7 | 5 | 3) je
r1=62 mod 8=6
r2=62 mod 7=6
r3=62 mod 5=2
r3=62 mod 3=2
Dakle (62)10 = ( 6 | 6 | 2 | 2)RBS(8j7j5j3)
Zapis broja 62 u RBS (9|8|7) je
r1=62 mod 9=8
r2=62 mod 8=6
r3=62 mod 7=6
Dakle: (62)= ( 8 | 6 | 6 )RBS(9j8j7)
Zapis broja 902 u pretpostavljenom RBS je
r1=902 mod 8=6
r2=902 mod 7=6
r3=902 mod 5=2
r4=902 mod 3=2
Dakle (902)10 = ( 6 | 6 | 2 | 2)RBS(8j7j5j3)
U veini brojanih sistema zapis svakog broja bi trebalo da bude jedinstven. Iz prethodnih
primera se vidi da to u sluaju . Da bi se izbegla vieznanost zapisa brojeva i pojava duplikata, moduli
moraju da budu uzajamno prosti brojevi mn, mn-1,....m1 pri emu vai mn>mn-1>.....>m1.
MODULARNA ARITMETIKA
Efikasnost korienja brojanog sistema sa ostacima zavisi od mugnosti efikasnog izvodjenja
osnovnih aritmetikih operacija sabiranja, oduzimanja, mnoenja, deljenja, kao i poredjnja dve
vrednosti.
ADITIVNI INVERZ
Za ostatak x, aditivnvi inverz x je definisan pomou jednakosti x+x=0. Aditivni inverz je jedinstven za
svaki ostatak m i izraunava se kao x=|m-x|(rauna se po m). Njegova glavna primena je u
predstavljanje negativnih brojeva i oduzimanje, i on se moe primeniti kao pojedinane ostatke, tak i na
kompletan zapis broja.
Primeri:
(62)10 = (6j6j2j2)RBS(8j7j5j3)
Aditivni inverz moe da se izracuna kao .
|8-6|8 = 2
|7-6|7 = 1
|5-2|5 = 3
|3-2|3 = 1
Odavde je (6|6|2|2)RBS(8|7|5|3) = (2|1|3|1)RBS(8|7|5|3)
(62)10 = (8|6|6)RBS(9|8|7)
MNOENJE
U modularnoj aritmetici vai sledee pravilo:
|A B| = ||A|m |B|m|m
Primer:
Neka je RBS=(8|7|5|3)
A = 26 = (2|5|1|2)RBS(8|7|5|3)
B = 12 = (4|5|2|0)RBS(8|7|5|3)
Proizvod C = AB je jednak .
C=AB
= ((2 4)mod 8|(5 5)mod 7|(1 2)mod 5|(2 0)mod 3)RBS(8|7|5|3)
= (0|4|2|0)RBS(8|7|5|3)
MNOENJE MODULOM
Za svaku celobrojnu vrednost k I moduo m vai:
1. |k m|m = 0
2. |A k m|m = |A|m
Na osnovu njih skrauje se postupak sabiranja I oduzimanja u sluajevima kada je jedan od
sabiraka umnoak modula, tako to se ne vri sabiranje ili oduzimanje na poziciji tog modula.
A = 26 = (2|5|1|2)RBS(8|7|5|3), B = 14 = (6|0|4|2)RBS(8|7|5|3)
A+B = (2+6|5+0|1+4|2+2)RBS(8|7|5|3) = (0|5|0|1)RBS(8|7|5|3)
Kako je 14 = 27, prema prethodnim pravilima ne treba izvriti sabiranje na poziciji koja
odgovara modulu 7:
A+B = (2+6|5+4|2+2)RBS(8|7|5|3) = (0|5|0|1)RBS(8|7|5|3)
MULTIPLIKATIVNI INVERZ
Za uzajmno proste brojeve ne-nule brojeve A I m, A(na -1) je multiplikativni inverz broja A u
odnosu na na moduo m ako vai
|A A(na -1)|m = 1
Primer:
1. Neka je A = 5. Multiplikativni inverz u odnosu na moduo 11 je vrednost A(na -1) za koju vai
|5 A(na -1)|11 = 1
Za reavanje se moe koristiti diofanska jednacina 5*x = 11*y +1. Jedno
od reenja jednacine je x=9, y=4. Odavde se dobija da 9 je multiplikativni
inverz broja 5 u odnosu na moduo 11 (jer 5*9=45, 45 mod 11 = 1).
2. Neka je A = 9. Multiplikativni inverz u odnosu na moduo 13 je vrednost A(na -1) za koju vai
|9 A(na -1)|13 = 1
Za reavanje se moe koristiti diofantska jednacina 9*x = 13*y +1. Jedno
od reenja jednacine je x=3, y=2. Odavde se dobija da 3 je multiplikativni
inverz broja 9 u odnosu na moduo 13 (jer 9*3=27, 27 mod 13 = 1).
DELJENJE
Deljenje je u modularnoj aritmetici najloenija od osnovnih aritmetikih oprecaija. Deljenje se moe
definisati na pojedinanim brojevima i proiriti tako da vai za skupove torki koje prestavljaju zapise
brojeva u RBS, ali se javljaju problemi jer kolinik ne mora uvek da bude ceo broj. Pored toga nula nema
------------Za module mozemo uzeti bilo koje cele brojeve, ali zbog zahteva koje postavlja
implementacija u racunaru potrebno je izvrsiti neku optimizaciju pri izboru.
Treba koristiti sto manje module, nema svrhe koristiti jedan veliki i ostale
male module, jer taj veliki moduo usporava izvrsavanje operacija.
1. Uzimamo redom proste brojeve dok njihov proizvod ne postane veci od
postavljene granice. Na kraju mozemo pomnoziti neka dva broja, tako da dobijemo
jedan veci u opsegu bita kao najveci od njih. Takodje mozemo i izbaciti neke
manje brojeve tako da proizvod ostalih zadovoljava granicu.
2. Bolji sistem je da redom uzimamo proste brojeve, ali pre nego sto
uzmemo sledeci prost broj, ukljucimo i stepen manjih brojeva, a taj manji broj
iskljucimo.
3. Najbolje je koristit module koji su stepeni broja 2 ili stepeni broja
dva umanjeni za jedan. Takodje ovi brojevi su uzajamno prosti i uz pomoc njih
dobijamo najbolju optimizaciju.
Prevodjenje iz dekadnog u RBS:
-----------------------------Vrsi se tako sto se zeljeni broj deli svakim modulom posebno i ostatak pri tom
deljenju se upisuje redom sa leva na desno, potrebno je n cifara, gde je n broj
modula.
Prevodjenje iz binarnog u RBS:
-----------------------------Izvodi se pomocu tabele u koju se upisu ostaci pri deljenju stepena broja 2 sa
modulima za odredjeni sistem. Onda se izracunavanje vrsi tako sto se saberu sve
vrednosti ostataka iz tabele koje odgovaraju poziciji jedinica u binarnom broju,
ali se sabiranje vrsi po modulu.
Prevodjenje brojeva iz RBS:
--------------------------Moraju se odrediti tezine svake pozicije, a to se vrsi tako sto proizvod modula
na ostalim pozicijama mnozimo sa multiplikativnim inverzom u odnosu na taj moduo.
Vrednost broja iz RBS u dekadnom sistemu se dobija kada tezinu svake pozicije
pomnozimo sa ostatkom na toj poziciji, pa sve saberemo po modulu koji odgovara
proizvodu svih modula ovog sistema.
RBS(8|7|5|3)
Najvaznije osobine masine koje su omogucavale dobar odnos njenih performansi i cene bile su:
Deljenje kesa za instrukcije i podatke cime je dobijena mnogo veca propusnost veze
izmedju memorije i CPU-a.
Nije bilo izvrsavanja aritmetickih operacija nad podacima u memoriji,cime je znatno
poboljsano preklapanje instrukcija.
NACINI ADRESIRANJA
Za navodjenje adresa operanada koriste se razlicite tehnike poznate pod nazivom nacini adresiranja.
Nacin adresiranja odredjuje algoritam po kome se izracunava stvarna adresa. Stvarna adresa moe da
oznacava registar, realnu ili virtualnu memoriju.
Skoro svi racunari koriste bar jedan od nacina adresiranja, pri cemu je vrlo cest slucaj da se nacini
kombinuju. U tom slucaju informacija o nacinu adresiranja mora da bude ukljucena i instrukciju. To se
postie na dva nacina:
1. Upotrebom razlicitih operacionih kodova za istu operaciju sa razlicitim nacinima adresiranja.
2. Upotrebom indikatora modikacije. Indikatori modikacije predstavljaju
jedan ili vie bitova u samoj instrukciji cije vrednosti oznacavaju nacin adresiranja
Najcesce se koriste sledece tehnike adresiranja:
1. Registarsko adresiranje - oznaka registra koji sadri operand je ukljucena
*Vreme pristupa- vreme od trenutka obracanja memoriji do trenutka kada podac bivaju
ispisani. Meri se u nanosekundama za memorije sa slucajnim pristupom ili milisekundama za
sve ostale
*Vreme memorijskog ciklusa - primenjuje se na memoriju sa direktnim ciklusom i
sastoji se od vremena pristupa i vremena koje prodje dok se ponovo omoguci pristup memoriji.
*Brzina prenosa - vreme za koje podaci mogu da se upisu ili prenesu iz memorijsku
jedinicu i iznosi :
T=1/(vreme pristupa) - za memorije sa slucajnim pristupom; T je brzina prenosa cija je velicina
odredjena bajtima.
T=N/(Vn-Vp) - za ostale vrste; T je brzina prenosa i ima jedinicu bps, Vn je prosecno vreme
potrebno za pisanje ili citanje N bitova a Vp je prosecno vreme pristupa
9. Mogucnost promene sadrzaja - Memorije ciji se sadrzaj moze promeniti zovu se
upisno-citajuce (read/write) a memorije ciji se sadrzaj ne moze promeniti nazivaju se
samocitajuce (read-only)
GLAVNA MEMORIJA
1. Organizacija - Pravi se iskljucivo od poluprovodnickih elemenata. Osnovni element
poluprovodnicke memorije je memorijska celija i ona ima sledece osobine: Poseduje dva
stabilna stanja koja se koriste da bi se predstavile 0 i 1, njen sadrzaj se upisuje najmanje jednom
i moze da se cita proizvoljan broj puta. Niz memorijskih celija se pakuje u cip (1M, 4M, 16M,
32M,64M, 256M, 512M i 1G celija)
2. Tipovi - uglavnom se koristi memorija sa slucajnim pristupom.
*Samocitajuca memorija (read only memory, ROM) - njen sadrzaj je stalan i ne moze se
promeniti. Koristi se za mikroprogramiranje, cuvanje sistemskih podataka kao i za cesto
koriscenje delove programskog koda koji je na taj nacin uvek dostupan. Proizvodi se na isti
nacin kao i cip sa integrisanim kolom, pri cemu se podaci ubacuju prilikom proizvodnje.
Problemi koji se javljaju zbog ovakvog nacina izrade: Ukoliko kod koji se upisuje ima gresku ona
se ne moze ukloniti; Preavljenje cipa mnogo kosta i moze se proizvoditi jedino u fabrici sto
onemogucuje njegovu masovnu primenu. Proizvodnja cipova se isplati jedino ako se pravi
serijski
*Programibilni ROM (PROM) - Isti su kao i ROM cipovi samo sto su inicijalno prazni.
SAdrzaj PROM-a se upisuje pomocu elektricnih impulsa. KAd se instrukcije jednom upisu PROM
postaje ROM i vise ne moze da se brise.
*Izbrisivi PROM( Erasable PROM, EPROM) - funkcionise slicno kao i PROM sem sto
njegov sdrzaj moze da se izbrise ultraljubicastim zracima pa da se zameni novim sadrzajem.
Cipovi se brisu odjednom. Za citanje i upis podataka u EPROM koriste se el. impulsi. EPROM
cipovi su skuplji od PROM cipova.
Sastoje se od kruznih ploca velicine 1,8 i 5,25 inca. Ploce se prave od metala ili plastike i
prevlace materijalom koji ima magnetna svojstva. Podaci se zapisuju i citaju preko
upisno-citajuce glave gde je glava nepokretna a ploa rotira ispod nje. Upisivanje na disk se vrsi
uz pomoc magnetnog polja koje pravi struja koja prolazi kroz glavu stvarajuci dva polariteta.
Podaci se citaju tako sto se struja indukuje magnetnim poljem koje se pomera ispod glave.
1. Struktura diska - Podaci na disku se upisuju u obliku koncentricnih krugova (staza) Sirina
staze jednaka je sirini upisno-citajuce glave. Izmedju staza se nalazi prazan prostor koji ima dve
funkcije: sprecava interferenciju izmedju magnetnih polja i pomaze u preciznom poziciranju
glave. Staze se dele na sektore fiksne ili promenljive duzine. Sektori su osnovne jedinice
prenosa podataka. Disk sadrzi jednu ili vise ploca koje se nalaze na jednoj osovini, vise glava
koje su pricvrscene za pokretace, mehanizam za poziciranje...
Formatiranje je proces upisa staza, sektora i kontrolnih podataka na disk. Kod
medjusobnog odnosa cilindara, staza i sektora razlikujemo dve mogucnosti:
*Kod disk uredjaja prethodnih generacija svaka staza sadri istu kolicinu podataka.
Zbog toga je gustina zapisa veca na unutranjim nego na spoljanjim
stazama. Ovi disk uredjaji su adresu podatka generisali kao uredjenu trojku koja je
sadravala broj cilindra, broj staze unutar tog cilindra i broj sektora unutar staze.
*Disk uredjaji nove generacije se adresiraju kao jedan veliki jednodimenzioni
niz logickih blokova, pri cemu je logicki blok najmanja jedinica prenosa. Velicina logickog bloka
je obicno 512 bajtova, mada na nekim diskovima moe
biti i drugacija. Jednodimenzionalni niz logickih blokova se redom preslikava u sektore diska.
Sektor 0 je prvi sektor na prvoj stazi cilindra sa najvecim poluprecnikom.
Proces preslikavanja se nastavlja u okviru ove staze, zatim kroz ostale
staze na tom cilindru i posle toga kroz ostale cilindre iduci od spoljanjih
cilindara ka unutranjim.Savremeni diskovi su organizovani u zone cilindara. U svakoj od tih
zona broj sektora po stazi je konstantan, pri cemu zone na obodu imaju veci broj
sektora od zona koje su blie sreditu diska. Uobicajeno je da spoljanje zone
imaju do 40% vie sektora od unutranjih zona.
2. Formatiranje diska - postoje dve vrste formatiranja:
*Formatiranje niskog nivoa (fizicko formatiranje) -upisuje sektore na disk. Obicno se
obavlja u fabrici kao deo proizvodnog procesa i omogucuje proizvodjacu da testira disk i
inicijalizuje preslikavanje izmedju brojeva logickih blokova i sektora diska koji nemaju
otecenje. Moguce je izabrati razlicite velicine sektora (256, 512 ili 1024 bajta). Sto je sektor
veci to je broj slogova na stazi manji pa je samim tim manji broj zaglavlja i zavrsnih slogova sto
znaci da ima vise mesta za podatke. Neki operativni sistemi rade samo sa diskovima koji imaju
sektore velicine 512 bajta.
DA bi ovako formatiran disk mogao da cuva podatke potrebno se da operativni sistem upise
svoje strukture podataka na disk a to se vrsi u dva koraka : disk se deli u jednu ili vise grupa
cilindra a zatim se vrsi logicko formatiranje.
*Logicko formatiranje - Operativni sistem upisuje strukture podataka koji su mu
potrebni za rad sa datotekama. Postoje i specijalni programi koji imaju mogucnost da koriste
particiju diska kao veliki sekvencijalni niz logickih blokova (ravni ulaz-izlaz).
3. Karakteristike diska - Pristup svim stazama na disku moze da se obezbedi na dva nacina:
Pomocu mehanizma koji omogucuje pomeranje glave napred-nazad i njeno pozicioniranje na
odredjenu stazu (ruka mehanizam) i obezbedjivanjem da svaka staza na ploci ima svoju glavu
koja vrsi upis-ispis samo na toj stazi(upisno-citajuce glave ). Danas se u maloj meri koriste
diskovi sa zasebnim glavama.Glave mogu i da pokazuju samo odredjene staze: ako ruka ima dve
glave, njen radijus pomeranja je manji a ako postoje dve ruke moguc je istovremen rad sa istom
stazom na dve razlicite pozicije. Danas se koriste dvostrani diskovi kod kojih je magnetni
materijal nanet na obe strane ploce, dok jednostrani vise nisu u upotrebi. Takodje, zbov velikog
kapaciteta koriste se fiksni magnetni diskovi koji su stalno montirani na disk uredjajima.
Izmenjivi diskovi imaju mogucnost demontaze i prenosa na drugi racunarski sistem.Postoji
mogucnost da glava zakaci povrsinu diska pri cemu se gube podaci i to se zove PAD GLAVE NA
DISKU.
*Vreme pristupa disku cine VREME TRAZENJA( vreme koje je potrebno za pomeranje
ruke sa glavom) i ROTACIONO KASNJENJE (vreme cekanja da se usled rotacije dista sektor
pozicionira ispod glave). Takodje, peroformanse diska odredjuje i OPSEG DISKA (ukupan broj
prenetih bajtova / ukupno vreme izmedju prvog zahteva za prenos podataka i zavrsetka
poslednjeg prenosa podataka).
OPTICKI DISKOVI
Prvi opticki diskovi nazvani su kompakt diskovi (CD) i uvedeni su 1983.godine kao medijum za
zapis muzike. Podaci se citaju tako sto se ploca diska rotira ispod mehanizma za citanje. Za
cuvanje i citanje podataka koriste se dva mehanizma:
*Konstantna ugaona brzina (Brzina rotacije diska; CAV) -kada disk ploca rotira
konstantnom brzinom onda je potrebno vise vremena da se dodje do podataka zapisanih na
obodu diska nego u centru. Ova razlika u brzinama se nadiknadjuje povecanjem prostora
izmedju bitova na delovima diska koji su blizi obodu sto dovodi do mogucnosti da se
informacije citaju istom brzinom gde god da se nalaze.
*Konstantna linearna brzina (CLV) - Podaci se zapisuju u segmente jednake velicine.
Disk rotira sporije kada se citaju podaci blizi obodu. Kapacitet staze i rotaciono kasnjenje se
povecavaju kako je staza bliza obodu diska zbog cega se citanje obavlja konstantnom linearnom
brzinom. Umesto vise koncentricnih staza moguca je i samo jedna spilarna staza.
Opticki diskovi se dele u 3 grupe: Diskove koji su nasnimljeni i ciji sadrzaj ne moze da se menja
(DO-ROM, DVD-ROM, CD-DA...); Diskove na koje korisnim moze samo jednom da upise sadrzaj
posle cega on ne moze da se menja (CD-R, BD-R i WORM...); Diskove ciji sadrzaj moze da se
pise/brise vise puta (CD-RW, DVD-RW).
1. KArakteristike CD diskova - Precnik je 120 mm, a debljina diska je 1.2 mm. Podaci se smestaju
u sektore od 2 KB. Sirina staze je 0.6 m a prostor izmedju staza je 1.6 m. Za zapis i citanje
podataka koristi se infracrveni laser. Gustina zapisa je 1Mb/mm. Mana je sto postoji
mogucnost horizontalne devijacije pri okretanju. Podaci se na diskovima upisuju u skladu sa
sledecim standardima:
*CD DA (Red Book) - koristi se za zapis muzike (74, 80 ili 90 min). Zapis sadrzi
specifikaciju zvuka, sistem za modulaciju i otklanjanje gresaka, kontrolni sistem i sistem za
prikaz i specifikaciju diska koja sadrzi pocetni i zavrsni prostor i prostor za program.
*CD ROM ( Yellow Book) - cuva razlicite tipove podataka. Pored specifikacija kao i kod
CD DA on sadrzi i podatke vezane za digitalnu strukturu: Strukturu sektora sa ECG kodom i EDC
kodom; Uvodi i poseban nacin zapisa za racunarske podatke i za razlicite tipove podataka;
Sadrzi i formate logickih podataka (ISO 9660, Joliet, Rock Ridge i UDF).
CD ROM-XA je prosirenje Yellow Book-a
*CD-I ( Green Book) - dodatak televizoru i sadrzi informacije o potrosackoj elektronici.
Sadrzi kompletan sistem zasnovan na CD-ROm formatu a moze da sadrzi i video zapis.
*CD za nasnimavanje (Orange Book) - mogu da se nasnimavaju uz mogucnost
postojanja vie sesija. Postoje tri razlicite specifikacije: za magnetno-opticke diskove, za CD-WO
(CD-Write Only) i CD-R kao i za CD-RW .
*Video CD (White Book) - Format diska ukljucuje staze, prostor za VideoCD informacije,
prostor za izvodjenje po segmentima i staze sa audio/video i CD DA zapisima, Ima MPEG
enkodiranje audio/video zapisa na stazama, prostor sa podacima korisnika za brzo
predtrazivanje i primere pokazivanja sekvenci i kontrole ponavljanja.
*CD E( Blue Book) definise prosirenja specifikacije CD-a. Specifikacija diska ukljucuje dve
sesije strukturu direktorijuma koja ukljucuje dodatne informacije, slike, podatke...
*DVD diskovi - diskovi veceg kapaciteta od CD-ROM-a (4.7 GB po jednom nivou ili 18GB
na dva nivoa). Sadrze DVD zastitu od dupliranja, regionalno kodiranje. Posroji vise DVD
formata( DVD ROM, DVD Video, DVD Audio, DVD R, DVD RAM/RW/+RW
*BD diskovi (Blue ray) - koristi plavi laser. KApacitet je 25 GB po strani ilii 50 GB ako se
radi o disku sa dva sloja
2. Nenasnimljeni opticki diskovi
*CD ROM - prave se uz pomov master diska, koji se koristi kao matrica pomocu koje se
formiraju kopije. Master disk se formira pomocu laserskog snopa velikog intenziteta. Povrine
sa rupicama na kopijama se presvlace bezbojnim lakom da bi se zatitile od prljavtine i
otecenja. CD-ROM i CD-DA diskovi koriste CLV. Kapacitet ovih diskova zavisi od gustine zapisa i
rastojanja izmedju staza, tj. delova spirale. Kacitet jednog CD-ROM diska je obicno 700MB
podataka, a CD-DA diska 80 minuta muzike. Postoje i CD-ROM i CD-DA diskovi na kojima moe
da se zapie 800MB podataka( 90 min muzike). Vreme trajanja zapisa na CD-ROM i CD-DA
diskovima
se procenjuje na oko 100 godina.
3. Opticki diskovi za jednokratno nasnimavanje *CD-R - Pomocu CD rezaca nasnimavaju se informacije na CD-R koje se kasnije ne mogu
obrisati ali ako se ostavi mogucnos i ako ima slobodnog mesta mogu se dodavati dodatne
informacije.
*WORM - sadrze tanak sloj aluminijuma izmedju dve ploce od plastike ili stakla. WORM
uredjaj upisuje podatke na disk tako sto laserom busi rupice na aluminijumu tako promena
upisanih podataka nije moguca. Kapacitet WORM diska je od 1,2GB do 9,1GB, uz razlicit broj
bajtova po sektoru(512-4096). Ovaj nacin cuvanja informacija je veoma pouzdan. Koriste CAV
zapis podataka.
4. Opticki diskovi sa promenjivim sadrzajem *Magnetno-opticki diskovi - Podaci se cuvaju na krutoj ploci od magnetnog materijala.
Magnetno-opticka glava se nalazi mnogo blize ploci nego glava kod magnetnih diskova pa se
zbog toga magnetni materijal stiti tankim slojem stakla ili plastike. Prilikom upisivanja bita,
glava osvetljava laserom povrsinu diska koja na tom mestu zagreva povrsinu i preoblikuje je
tako da povrsina postaje osetljiva na magnetno polje. Citanje se obavlja uz pomoc Kerovog
efekta- laserski zrak se odbija o povrsinu a polarizacija zraka zavisi od orijentacije magnetnog
polja i ona moze biti u smeru kazaljke na satu i obrnuto.. Glava otkriva smer rotcije i digitalizuje
ga. Ovi diskovi koriste CAV zapis podataka. Imaju isti kapacitet kao i WORM.
*Diskovi sa promenom faze (CD-RW) - pravi se od materijala koji moze da se nalazi u
kristalnom ili amorfnom stanju. U zavisnosti od stanja u kojem se nalazi, laserski zrak se
reflektuje razlicitom jacinom. Fazni sistem koristi laserski zrak razlicite jacine radi promene
faze na povrini diska, cime menja stepen refleksije.
*Diskovi sa obojenim polimerom - plasticna povrsina je obojena slojem boje koja
apsorbuje lasersku svetlost.Pri zagrevanju laserom boja sa nekog mesta moze da otekne pri
cemu nastaje praznima.
Postoje razne vrste U/I modula. Oni jednostavnije konstrukcije se drugaije nazivaju U/I kontroleri i oni
se najee javljaju na mikroraunarima i radnim stanicama,a oni sloeniji se nazivaju U/I kanal ili U/I
procesor i on omoguuje mnogo sofisticiraniju vezu i najee se javlja na mainframe raunarima. Kod
linih raunara i radnih stanica, ako ureaj komunicira sa raunarom preko veze u samo jednoj taki, ta
taka prikljuka se naziva port. U/I port se najee sastoji od etiri registra koji se nazivaju :
1. Registri statusa oni sadre bitove koji oznaavaju da li je zavreno izvravanje tekue
komande, da li se u registru primljenih podataka nalazi bajt koji moe da se ita i da li je dolo
do greke na prikljuenom ureaju.
2. Registar kontrole u njega se upisuju komande koje treba izvriti ili informacije vezane za
promenu naina rada prikljuenog ureaja.
3. Registri primljenih i poslatih podataka - ovi registri sadre od 1 do 4 bajta. U registar primljenih
podataka se upisuju podaci primljeni od ureaja koje raunarski sistem moze da proita i
prenese na dalju obradu. U registar poslatih podataka se upisuju podaci koje treba preneti
prikljuenom ureaju.
Tehnika izvravanja U/I operacija
Najjednostabniji nain izvrsavanja U/I operacija je programirani U/I. Kada CPU izvrava program i naie
na zahtev za U/I operacijom, on odreuje potrebne adrese, spoljanji ureaj na kome se izvodi U/I
operacija i alje komadnu odgovarajuem U/I modulu. Postoje etiri tipa komandi koje procesor moe
da poalje U/I modulu:
1. Kontrolna komanda koja se koristi za aktiviranje perifernog ureaja i kojom se naznaava akcija
koju treba preduzeti.
2. Test komanda kojom se ispituje stanje U/I modula i odgovarajuih periferala. Obino se stanje
ureaja opisuje preko bitova u kontrolnom registru U/I modula. Kada je ureaj zauzet,
postavljen je bit koji predstavlja indikator zauzea. Vrednost ovog bita se anulira kada periferni
ureaj zavri posao. Ureaj ne moze da primi kontrolnu komandu od procesora sve dok mora
da eka i da periodicno vri proveru sadraja ovog bita.
3. Komanda za itanje izdaje direktivu U/I modulu da proita podatak iz periferala i smesti ga u
interni bafer. CPU zatim uzima podatak iz internog bafera zahtevajui od U/I modula da ga
smesti na magistralu podataka.
4. Komanda za pisanje izdaje direktivu U/I modulu da proita podatak sa magistrale i prenese ga u
periferni ureaj.
Prekidima upravljan U/I ureaj
Kako U/I operacija moe da zahteva relativno veliku koliinu vremena, U/I program mora da stane sa
radom i eka njen zavretak, istovremeno zaustavljajui i izvravanje korisnikog programa za taj
vremenski period. Sa uvoenjem prekida, za vreme trajanja U/I operacija,procesor moe da bude
angaovan na izvravanju drugih instrukcija.
DMA
Nedostaci oba prethodno opisana naina izvravanja U/I operacija su to zahtevaju intervenciju CPU-a
pri prenosu podataka izmeu memorije U/I modula. Prenos podataka se obavlja preko CPU-a i brzina
prenosa je ograniena brzinom kojom procesor moze da testira i servisira U/I modul. Pri izvravanju
svake U/I operacije procesor mora da izvri veliki broj instrukcija zbog cega ostali program moraju da
cekaju. Ovi nedostaci posebno dolaze do izraaja pri prenosu velikih koliina podataka. U tom sluaju je
efikasnije primeniti tehniku prenosa nazvanu direct memory acces-DMA.
DMA zahteva dodatni modul prikljuen na sistemsku magistralu koji se naziva DMA kontroler. DMA
kontroler u sutini predstavlja specijalizovani procesor koji moe da izvrava programirani U/I. Kada
procesor treba da izvri U/I operaciju, on upie DMA kontrolni blok u memoriju. Kontrolni blok sadri
adresu ureaja sa koga se vri prenos ili na koji treba upisati podatke, pokaziva na lokaciju u memoriju
gde treba preuzeti podatke u sluaju unosa, odnosno odakle treba preneti podatke u sluaju izlaza, kao i
informacije o broju bajtova koje treba preneti i identifikaciju akcije koja se zahteva. CPU zatim predaje
adresu DMA kontrolnog bloka DMA kontroleru i prelazi na druge poslove. DMA kontroler nastavlja
izvravanje operacie i prenosi bajt po bajt (a moe i vie,zavisi od irine magistrale), radei direktno sa
magistralom bez pomoci CPU-a. DMA dobija kontrolu nad magistralom kada je CPU ne koristi iako ako
zatrai od CPU-a da privremeno oslobodi magistralu. Ovakav nacin rada se naziva kraa ciklusa. Na kraju
DMA alje prekid procesoru kojim ga obavetava da je operacija izvrena.
U/I procesori i kanali su sloeni U/I moduli koji mogu da obave U/I operacije bez nadzora CPU-a. Kanal
ukljuuje U/I procesor koji moe da izvrava U/I instrukcije u memoriji. To doputa CPU-u da odredi niz
U/I poslova koji se obavlja bez njegovog nadzora. Kanalski procesor obavetava, putem prekida, CPU o
zavrteku izvravanja navedenog niza poslova.
Ukoliko U/i modul ima iste mogunosti kao i kanal,ali poseduje i sopstvenu memoriju,tada se on naziva
periferni procesor. Periferni procesor moe da kontrolie veliki broj perifernih ureaja bez pomoci
CPU-a.