Professional Documents
Culture Documents
novembar, 2010
SADRŽAJ
UVOD....................................................................................................................................................1
1.0 BROJNI SISTEMI.........................................................................................................................2
1.1 Podjela brojnih sistema..............................................................................................................2
1.1.1 Nepozicioni brojni sistemi...................................................................................................2
U našim računarima to su brojevi iz binarnog brojnog sistema, mada ne mora da bude tako,
postoje računari koji rade u drugim brojnim sistemima.
Numerički (brojčani) podaci su podaci u računaru koji simbolišu neke veličine ili odnose,
odnosno predstavljaju neke brojne vrednosti "iz života".
Nenumerički podaci su podaci u računaru koji sadrže neku informaciju koja se u spoljnom
svetu (van računara) ne može predstaviti brojevima. Primjera ima mnogo više nego primjera
za numeričke podatke:
običan tekst,
formatirani tekst (npr. tabela sa imenima učenika),
slika,
video zapis,
audio zapis,
jednačina ili formula,
program (izvorni kôd ili prevedeni-izvršni program) itd.
Svaki podatak nenumeričkog tipa prevodi se u niz brojeva, predstavljenih na način blizak
računaru. Sve transformacije se dalje vrše nad tim brojevima, a podaci se takođe u tom
formatu skladiraju na masovnim memorijskim medijima (magnetnim, optičkim itd).
1
1.0 BROJNI SISTEMI
Simbol koji označava broj (cifra) ima istu vrijednost nezavisno od toga gdje se nalazi u zapisu
broja. Primjer za nepozicioni brojni sistem su rimski brojevi. Vrijednost zapisa broja računa
se tako što se cifre saberu. Jedini izuzetak je kada je manja cifra lijevo od veće, onda se ona
od te veće oduzima, namjesto njih dvije u zbir ulazi rezultat tog oduzimanja.
Uzmimo zapis broja MCMXXXV. Prilikom sračunavanja brojne vrijednosti ovog zapisa,
slovo M uvijek nosi vrijednost 1000, slovo C uvijek označava vrijednost 100, slovo X uvijek
vrijednost 10 a slovo V uvijek i svuda vrijednost 5. Prilikom sračunavanja brojne vrijednosti
zapisa koristi se pravilo da, ukoliko je manja cifra lijevo od veće, ona se od veće oduzima.
Sve vrijednosti cifara se potom saberu. Sračunavanjem zapisa dobijamo vrijednost 1935.
Možda se nebitnost pozicije cifre najjasnije vidi kod cifre X. Ona se nalazi na tri različite
pozicije i u zbir uvijek ulazi kao 10, dakle nezavisno od pozicije na kojoj se nalazi.
Simbol koji označava broj (cifra) ima različitu vrednost u zavisnosti na kojoj se
poziciji nalazi u zapisu broja.
Primer za pozicioni brojni sistem je dekadni (naš) brojni sistem, binarni, heksadekadni
itd.
Binarni sistem takođe spada u pozicione sisteme i od dekadnog se razlikuje jedino u tome što
poznaje samo dvije različite cifre: 0 i 1.
2
Heksadecimalni i oktalni brojni sistemi su takođe pozicioni brojni sistemi.
Neka brojna vrijednost X se u pozicionom BS sa osnovom N piše u obliku niza cifara iz skupa
cifara:
Brojna vrijednost zapisa broja dobija se kao zbir brojnih vrijednosti pojedinačnih cifara
(zavisnost između pozicije cifre i njene vrijednosti određuje osnova brojnog sistema):
3
1.3 Prevođenje brojeva između različitih brojnih sistema
Osim binarnog, biće obrađena još dva BS, takođe bliska unutrašnjosti računara:
heksadecimalni brojni sistem (osnova: 16) i oktalni brojni sistem (osnova: 8). Pokazaće se da
su ova dva brojna sistema srodna binarnom, te da su postupci prevođenja između ova tri
brojna sistema gotovo trivijalni.
Zapis broja u binarnom brojnom sistemu najjednostavnije je pokazati na primeru. U nerednoj tabeli
su dati zapisi određenih brojeva u dekadnom i binarnom brojnom sistemu.
dekadni → binarni i
4
binarni → dekadni.
Za početak se nećemo baviti razlomljenim dijelom binarnog broja, već samo cjelobrojnim
binarnim brojevima. Dekadna brojna vrijednost cjelobrojnog binarnog broja nalazi se po
sljedećoj formuli:
Zaključak: zna se koja binarna cifra nosi koliku vrijednost (ako je njena težina p, onda ona
nosi vrijednost 2p). Uzmu se u obzir samo jedinice, i saberu im se pripadajuće vrijednosti.
5
Na sličan način prevodi se i razlomljeni dio binarnog broja.
Cjelokupan broj dobija se , zatim, tako što se, jednostavno, razlomljeni dio dopiše do cijelog
dijela broja.
Ova transformacija biće pokazana na konkretnom primjeru (na način na koji se u praksi
najčešće izvodi). Konverzija iz binarnog u dekadni zasnivala se na množenju (binarna cifra se
množila stepenom osnove, i onda dodavala na sumu). Logično je da se suprotna
transformacija zasniva na - dijeljenju. I u ovom slučaju prevodimo nezavisno cio dio broja i
njegov razlomljeni dio a zatim prevedeni razlomljeni dio dopisujemo do prevedenog cijelog
dijela broja.
44:2 = 22 ostatak: 0 Ostatak 0 biće cifra najmanje težine binarnog broja. Upisujemo je na
poziciju najmanje težine.
22:2 = 11 ostatak: 0
11:2 = 5 ostatak: 1
5:2 = 2 ostatak: 1
2:2 = 1 ostatak: 0
6
1:2 = 0 ostatak: 1
Postupak prevođenja razlomljenog dijela je sličan prevođenju cijelog broja, osim što se sada:
0,6875·2=1,375
0,375·2=0,75
0,75·2=1,5
0,5·2=1,0
0,0
NAPOMENA
Poseban slučaj koji se može javiti prilikom konverzije razlomljenog dekadnog broja u binarni,
jeste slučaj periodičnog broja.
0,8·2=1,6 - 1
0,6·2=1,2 - 1
0,2·2=0,4 - 0
7
0,4·2=0,8 - 0 , nadalje se ponavlja sekveca 0110
Ovo možemo posmatrati na sljedeći način: svaka heksadekadna cifra je u binarnom brojnom
sistemu kodirana jednom grupom od 4 binarne cifre, odnosno svaka oktalna cifra je u
binarnom brojnom sistemu kodirana jednom grupom od 3 binarne cifre!
Naravno, ovde nije u pitanju pravo kodiranje, naravno, već klasično prevođenje iz jednog
brojnog sistema u drugi. Ali u ovom slučaju - to prevođenje se vrši po istim pravilima kao
neko kodiranje, i to kodiranje prema kodnoj tablici. Prevođenje brojeva između različitih
brojnih sistema (sa 3 binarne cifre za oktalni a 4 za heksadecimalni).
Od mjesta najmanje težine prema mjestu najveće težine posmatramo grupe po 4 cifara. Po
potrebi dodajemo vodeće 0 koje ne utiču na vrednost broja. Dobijamo 0010111111010011 pa
korišćenjem kodne tabele ovo prevodimo u heksadecimalni broj 2FD3.
Obrnuto - treba da prevedemo heksadecimalni broj 65E u binarni broj. Svaku heksadecimalnu
cifru, prema kodnoj tabeli, mijenjamo grupom od 4 binarne cifre. Na taj način zadati
heksadecimalni broj se prevodi u binarni broj 011001011110, odnosno, nakon odbacivanja
vodećih 0 u broj 11001011110.
Od mjesta najmanje težine prema mjestu najveće težine posmatramo grupe po 3 cifre. Po
potrebi dodajemo vodeće 0 koje ne utiču na vrijednost broja. Dobijamo 001111100010101 pa
korišćenjem kodne tabele ovo prevodimo u oktalni broj 17425.
Obrnuto - treba da prevedemo oktalni broj 473 u binarni broj. Svaku oktalnu cifru, prema
kodnoj tabeli, mijenjamo grupom od 3 binarne cifre. Na taj način zadati oktalni broj se
prevodi u binarni broj 010111011, odnosno broj 10111011 nakon odbacivanja vodećih 0.
8
2.0 PREDSTAVLJANJE NUMERIČKIH PODATAKA
Osnovna razlika, u smislu predstavljanja u računaru, leži u tome što se, kod označenih
brojeva, jedan bit odvaja za znak. Samim tim, za predstavljanje samog broja (njegove
apsolutne vrijednosti), na raspolaganju stoji jedan bit manje. A posljedica toga je smanjenje
opsega brojeva koji se mogu na taj način predstaviti.
Primjer (sa celim brojevima): ako je računar 32-bitan, neoznačen cio broj se predstavlja sa 32
bita, što znači da je moguće predstaviti cijele brojeve od 0 do 2 32-1=4294967295. Ako ipak
jedan bit odvojimo za znak, ostaje nam 31 bit za predstavljanje apsolutne vrijednosti, tako da
opseg prema negativnim brojevima ide od -1 do -231=2147483648, a prema pozitivnim
brojevima od 0 (smatra se pozitivnim) do 231-1=2147483647.
9
brojeve sa fiksnim zarezom (fixed), i
brojeve sa pokretnim zarezom (float).
Reč "float" znači plutati. U engleskom jeziku ona se koristi za ovaj tip podataka, tako da u
našem jeziku postoji i izraz "brojevi u plivajućem zarezu", gde je "plivajući" sinonim za
"pokretni".
Brojevi u fiksnom zarezu su oni brojevi kod kojih se unapred zna broj pozicija za razlomljeni
deo. U pitanju su (u računaru), naravno, pozicije za binarne brojeve.
Brojevi u pokretnom zarezu se tako predstavljaju da je moguće imati više ili manje pozicija za
razlomljeni deo, zavisno od potrebe. Dele se na one sa:
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000000000 0
U prvoj vrsti se, zapravo, nalaze obilježeni stepeni broja 2 (osnove binarnog brojnog sistema).
Prema tome, mjesto najmanje težine broja je obilježeno sa 0 a najveće sa 30.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
10
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 1 0 1 1 0 0 1 1 1
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000000000 0
Broj pozicija za cijeli i razlomljeni dio broja varira i zavisi od konkretne izvedbe računara ili
konkretnih riješenja u jeziku u kome se programira.
Mjesto najmanje težine za cijeli dio broja je pozicija 21 a mjesto najveće težine za razlomljeni
dio broja je pozicija 20.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 1 0 1 1 0 1 0 0 1 0 0 1 0 1 0 1 0 0 000000000 0
Nakon upisivanja zadatog binarnog broja, ostala mesta se popunjavaju sa 0 (plava boja).
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
1 1 1 1 0 1 0 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 111111111 1
11
Nakon upisivanja zadatog binarnog broja, ostala mjesta se popunjavaju sa 1 (plava boja).
R=m·be
gde je: R - vrednost broja, m - mantisa, b - osnova brojnog sistema i e - eksponent.
Ovo je uopštena definicija i važi za sve brojne sisteme. U slučaju binarnog brojnog sistema
osnova brojnog sistema je 2 pa se, dakle, binarni brojevi u pokretnom zarezu predstavljaju u
obliku:
R=m·2e
U 32-bitnoj memorijskoj lokaciji u računaru brojevi se u pokretnom zarezu prikazuju na način:
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000 0 000 0 0 0
m=0,1bbbbbbb
gde je b {0,1} - skup binarnih cifara.
Ovo znači da se podrazumijeva nula, i jedinica, a ono što piše u samom zapisu broja (u
memorijskoj lokaciji) to su ostale cifre, obeležene sa bbbbb.
12
Novi oblik mantise
Novi (normalizovani) oblik mantise izgleda:
m=1,bbbbbb
gde je b {0,1} - skup binarnih cifara.
Kod ovog oblika mantise, podrazumeva se jedinica, a ono što je iza zareza - to je ono što
zapravo stoji u memorijskoj lokaciji (obilježeno sa bbbbb).
Da bi se jedan binarni broj zapamtio u memoriji računara u obliku pokretnog zareza potrebno
je da se prvo dovede u eksponencijalni oblik. Tom prilikom se preračunava vrijednost mantise
(u starom ili novom obliku) i odgovarajući eksponent, pa se zatim vrijednosti mantise,
eksponenta i znaka binarnog broja upisuju na odgovarajuća mjesta u memorijskoj lokaciji
računara. Naravno, ako je broj negativan prethodno se provodi u oblik potpunog
komplementa.
PRIMJER
Ako koristimo stari oblik mantise taj broj sada izgleda: 0,1011010010010101·27. U ovom
slučaju vrijednost mantise je 0,1011010010010101 a vrijednost eksponenta 7. Pošto se kod
starog oblika mantise 0,1 podrazumijeva, u memoriju računara na mjestu predviđenom za
mantisu se upisuju ostale binarne cifre (obeležena plavom bojom). Na mjestu za upisivenje
eksponenta upisuje se broj 7, naravno, prethodno preveden u binarni brojni sistem, odnosno
upisuje se binarni broj 111. Na mjestu za znak broja upisuje se 0. Ostala polja se popunjuju sa
0 (crna boja).
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 1 1 1 0 1 1 0 1 0 0 1 0 0 1 010 1 000 0 0 0
Ako koristimo novi oblik mantise taj broj sada izgleda: 1,011010010010101·2 6. U ovom
slučaju vrijednost mantise je 1,011010010010101 a vrijednost eksponenta 6. Pošto se kod
novog oblika mantise 1, podrazumijeva, u memoriju računara na mjestu predviđenom za
mantisu se upisuju ostale binarne cifre (obeležena plavom bojom). Na mjestu za upisivenje
eksponenta upisuje se broj 6, naravno, prethodno preveden u binarni brojni sistem, odnosno
upisuje se binarni broj 110. Na mjestu za znak broja upisuje se 0. Ostala polja se popunjuju sa 0
(crna boja).
13
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 1 0 0 1 010 1 000 0 0 0
slike i
slova (tekst).
Slika na ekranu sastoji se od tačaka, ona zapravo predstavlja matricu tačaka (npr. 1024x768
tačaka) koje svijetle u određenim bojama i formiraju sliku.
Jedna tačka naziva se pixel (izraz je usvojen i u srpskom jeziku). Svaki pojedinačni piksel
sastoji se od 3 dijela. Svaki od ta tri dijela daje pikselu jednu boju: crvenu (Red), zelenu
(Green) i plavu (Blue). Dokazano je da se kombinacijom ove tri osnovne boje može dobiti
bilo koja boja.
Ovakav pristup formiranju boja kod piksela naziva se RGB pristup (RedGreenBlue). Jedan
piksel dobija određenu boju tako što svaki od njegova tri dela učestvuje sa svojom bojom u
određenom intenzitetu (osvetljaju). Intenzitet boje svake od 3 komponente jednog piksela se
označava brojem iz intervala od 0 do 255!
Neka slika bude veličine 1024x768 piksela. To je ukupno 786432 piksela. Svaki od piksela
ima po 3 komponente. Intenzitet osvetljaja boje svake komponente je predstavljen nekim
brojem. To je ukupno 786432·3=2359296 brojeva.
Niz tih brojeva je zapravo način na koji se slika predstavlja u memoriji računara!
Bilo kakva transformacija nad slikom (promena kolorita slike, ili jasnoće, ili osvetljenja, itd)
koju radimo u nekom programu za manipulaciju slikama, se u računaru izvodi zapravo kao
niz nekih matematičkih operacija nad svim brojevima koji čine unutrašnju predstavu te slike u
računaru.
Na sličan način se predstavljaju i zvuci, animacije, itd (sve na svoj način, ali brojevima).
14
8.0 PREDSTAVLJANJE TEKSTA U RAČUNARU
Svaki računar ima svoju slovnu azbuku, koja se sastoji iz znakova. Svi znaci slovne azbuke
računara se dele na:
brojeve,
slova i
specijalne (upravljačke, kontrolne itd) znake.
Jedan pojedinačni znak ima uobičajen naziv "character" (ta reč je kao takva, fonetski
prevedena, usvojena i kod nas - "karakter").
Kako se u memoriji računara upisuju binarni brojevi, i u ovom slučaju se neki tekst memoriše
kao niz binarnih brojeva, po 1 za svaki karakter teksta.
U računaru postoji kodna tabela u kojoj je za svaki karakter upisan odgovarajući binarni kod
(broj). Tekst, odnosno niz karaktera, se dakle u memoriji računara pamti kao niz binarnih
brojeva odgovarajućih svakom karakteru teksta.
ASCII, i
EBCDIC.
ASCII (čita se "aski") je skraćeno od: American Standard Code for Information Interchange.
Ovaj kod je 7-bitan (slova su dužine 7 binarnih cifara). ASCII kod ima 256 znakova od kojih
je svaki predstavljen binarnim brojem od 0 do 255. ASCII skup sadrži sva slova, brojeve,
većinu znakova interpunkcije, neke matematičke simbole i druge brojeve. Puno ASCII
znakova ima upravljačko značenje (npr: LF - Line Feed, znak štampaču da preskoči jednu
liniju).
EBCDIC (čita se "ebsidik") je skraćeno od: Extended Binary Coded Decimal Interchange
Code). Ovaj kod je 8-bitan.
Ovi kodovi služe i kao jezik za komunikaciju između različitih delova računarskog sistema
(na primer za komunikaciju sa štampačem, itd).
15
ZKALJUČAK
Da bi računar radio sa podacima, oni moraju na neki način biti predstavljeni u računarskom
sistemu.
16
LITERATURA
- Doc. Dr. Siniša M; Mr. Sc. Hadžib S; Arhitektura računarskih sistema i mreža;
Travnik, 2010.
- http://bs.wikipedia.org/wiki/Ra%C4%8Dunar
- http://www.martinjovanovic.com/uur/UUR-I-kol-2004-Dodatak1-
PredstavljanjeBrojeva-2008-12-18.pdf
- http://focainformatika.comlu.com/web_documents/predstavljanjepodataka.pdf
17