33
Osnovi računarstva I Uvod

Osnovi racunarstva - Brojni Sistemi

  • Upload
    -

  • View
    145

  • Download
    7

Embed Size (px)

DESCRIPTION

etf.ac.me Brojni sistemi - prezentacijaM. Radonjić,

Citation preview

Page 1: Osnovi racunarstva - Brojni Sistemi

Osnovi računarstva I

Uvod

Page 2: Osnovi racunarstva - Brojni Sistemi

� ECTS formular je objavljen na virtuelnoj oglasnoj tabli: www.etf.ac.me

� Nastavnik: Doc. dr Milutin Radonjić

� Saradnik: mr Predrag Raković

� Fond časova: 2P+1V+1L

� Literatura:

� Skripta: Lj. Stanković, R. Saveljić, Osnovi računarstva I, Podgorica 1994.

� Udžbenik – radna verzija: Lj. Stanković, V. Ivanović, M. Radonjić, Osnovi računarstva, Podgorica, 2013.

� Skripta: M. Radonjić, Osnovi računarstva I – riješeni zadaci.

� Obaveze studenta u toku nastave:

� pohaña nastavu,

� uradi i preda sve domaće zadatke,

� odradi laboratorijske vježbe i

� radi kolokvijum

Page 3: Osnovi racunarstva - Brojni Sistemi

� Oblici provjere znanja i ocjenjivanje :

� 5 domaćih zadataka se ocjenjuju sa ukupno 5 poena (1 poen za svaki domaći zadatak).

� Laboratorijske vježbe se ocjenjuju sa ukupno 5 poena.

� Kolokvijum se ocjenjuje sa 45 poena (28.10.2013.).

� Završni ispit se ocjenjuje sa 45 poena (23.12.2013.).

� Prelazna ocjena se dobija ako se kumulativno sakupi najmanje 50 poena .

� Konačni rezultati sa predlozima ocjena koje će ići na usvajanje NN Vijeću biće poznati nakon popravnog ispita.

� Studenti koji su ostvarili rezultate saglasno granicama u ECTS katalogu, obezbijedili su tamo navedene ocjene.

� Preduslovi da se uspješno savlada gradivo:

� Dobra volja.

� Poznavanje 4 osnovne matematičke operacije.

� Malo vašeg dragocjenog vremena.

Drugim riječima:Svako može biti uspješan!

Page 4: Osnovi racunarstva - Brojni Sistemi

� Obratiti pažnju :

� Domaći zadaci se predaju u za to predviñenim terminima (ne mora lično).

� Ne postoji obnova laboratorijskih vježbi i domaćih zadataka.

� Redovno pratite obavještenja na virtuelnoj oglasnoj tabli – postoji i aplikacija za „pametne“ telefone.

� Prigovori na stanje bodova se mogu realizovati lično, a najkasnije 7 dana nakon objavljivanja.

� Svaki komentar, kritiku ili sugestiju slobodno iznesite, lično ili putem e-maila, i biće razmatrani.

� Učestvujte u nastavi – nemojte biti samo pasivni posmatrači!

Page 5: Osnovi racunarstva - Brojni Sistemi

Osnovi računarstva I

Brojni sistemi

Page 6: Osnovi racunarstva - Brojni Sistemi

� Brojne vrijednosti (brojevi) se, zavisno od raspoloživog prostora ili svoje namjene, predstavljaju u različitim brojnim sistemima.

� Brojne vrijednosti se reprezentuju nizom cifara (digita) odgovarajućeg brojnog sistema.

� Svaka cifra pojedinačno, svojom pozicijom u reprezentaciji brojne vrijednosti, doprinosi njenoj ukupnoj numeričkoj vrijednosti.

� Brojni sistem koji poznajemo iz svakodnevnog života je dekadni brojni sistem.

� U ovom brojnom sistemu osnova brojanja je 10.

� Čovjek je brojanje bazirao na deset prstiju svojih ruku, pa je zato dekadni brojni sistem njemu prirodan i poželjan način reprezentacije posmatrane vrijednosti.

� Dekadni broj predstavljen zapisom:

ima vrijednost:

gdje cifre a, b, c, d, e uzimaju vrijednosti iz skupa cifara:

.abc de2 1 0 1 210 10 10 10 10a b c d e− −× + × + × + × + ×

{0,1,2,3,4,5,6,7,8,9}

Page 7: Osnovi racunarstva - Brojni Sistemi

� Primjer: Broj 173.76 može biti predstavljen na sljedeći način:

� U opštem slučaju – slučaju proizvoljnog brojnog sistema – osnova može biti proizvoljan prirodni broj B, veći od 1. U tom slučaju broj predstavljen zapisom abc.de ima vrijednost:

� Proizvoljni broj:

zapisan u brojnom sistemu osnove brojanja B, ima vrijednost:

pri čemu su cifre ai upotrijebljenog brojnog sistema cijeli brojevi iz opsega

� Gornja jednačina predstavlja opšti izraz za konverziju broja datog u sistemu proizvoljne osnove brojanja B u dekadni brojni sistem.

2 1 0 1 21 10 7 10 3 10 7 10 6 10− −× + × + × + × + ×

2 1 0 1 2a B b B c B d B e B− −× + × + × + × + ×

1 1 0 1 2... . ...n n ma a a a a a a− − − −

ni

ii m

S a B=−

= ∑

0 1ia B≤ ≤ −

Page 8: Osnovi racunarstva - Brojni Sistemi

� Težine (položaji) cifara posmatraju se relativno u odnosu na decimalni zarez.

� Težine cifara cjelobrojnog dijela broja uzimaju pozitivne vrijednosti, u rastujućem redu, počev od decimalnog zareza u lijevu stranu.

� Težine cifara decimalnog dijela broja uzimaju negativne vrijednosti, u opadajućem redu, počev od decimalnog zareza u desnu stranu.

� U istoriji civilizacije su korišćeni i brojni sistemi sa drugim osnovama:

� Vavilonski brojni sistem, koji se smatra prvim težinskim brojnim sistemom, imao je osnovu brojanja 60 (ostalo kod računanja vremena – sati, minuti, sekunde)

� Sistem sa osnovom brojanja 12 (danas se upotrebljava u kalendarskoj podjeli godine; u engleskom mjernom sistemu ovaj sistem brojanja je često upotrebljavan – „dozen”)

� Najpoznatiji netežinski sistem je Rimski sistem označavanja brojeva

Page 9: Osnovi racunarstva - Brojni Sistemi

Osnovi računarstva I

Binarni brojni sistem

Page 10: Osnovi racunarstva - Brojni Sistemi

� Sa stanovišta računarske tehnike i tehnologije posebno je interesantan binarni brojni sistem, čija je osnova brojanja

� Cifre u ovom brojnom sistemu uzimaju vrijednosti iz skupa cifara

� Fizička realizacija cifara ovog brojnog sistema je veoma jednostavna:

� zatvoren prekidač može predstavljati binarnu cifru 1, a otvoren binarnu cifru 0;

� visok nivo napona može označavati 1, a nizak nivo napona 0;

� jedan smjer magnetnog polja se može tumačiti kao 1, a drugi smjer polja kao 0;

� ...

� dva jasno definisana stacionarna stanja tranzistora, zasićenje i zakočenje, mogu označavati binarne vrijednosti 1 i 0, respektivno.

2B ={0,1}

Page 11: Osnovi racunarstva - Brojni Sistemi

� U binarnom brojnom sistemu broj

ima vrijednost:

� Primjer : Binarni zapis broja 1011 predstavlja vrijednost

� Ukoliko se izvrši izračunavanje ovog izraza, on može ujedno poslužiti za tumačenje posmatranog broja u dekadnom brojnom sistemu, u kome posmatrani binarni broj ima vrijednost:

� U cilju razlikovanja brojeva zapisanih u različitim brojnim sistemima, prilikom njihovog zapisivanja, u indeksu broja ćemo dodavati vrijednost osnove brojnog sistema:

.abc de2 1 0 1 22 2 2 2 2a b c d e− −× + × + × + × + ×

3 2 1 01 2 0 2 1 2 1 2× + × + × + ×

3 2 1 01 2 0 2 1 2 1 2 8 2 1 11× + × + × + × = + + =

(2) (10)1011 11=

Page 12: Osnovi racunarstva - Brojni Sistemi

Pretvaranje broja iz dekadnog brojnog sistema u bina rni

� Razlikuje se za cjelobrojni i decimalni dio dekadnih brojeva.

� Pretvaranje cjelobrojnog dijela dekadnog broja u njegov binarni ekvivalent je iterativan postupak (izvršava se u nizu veoma sličnih koraka).

� Prva iteracija se sastoji u dijeljenju posmatranog dekadnog broja sa osnovom binarnog brojnog sistema (2) i zapisivanju ostatka dijeljenja.

� Tom prilikom se može dobiti ostatak dijeljenja jednak nuli ili jedinici, a to su cifre binarnog brojnog sistema.

� Postupak se ponavlja, u nizu iteracija, sa količnikom dobijenim u prethodnoj iteraciji.

� Kada se dobije količnik dijeljenja jednak nuli, postupak se prekida.

� Ostaci dobijeni prilikom dijeljenja sa 2, zapisani obrnutim redoslijedom od onog kojim su dobijeni, obrazuju traženi binarni zapis dekadnog broja.

Page 13: Osnovi racunarstva - Brojni Sistemi

� Dokaz:

� Cijeli broj zapisan u binarnom brojnom sistemu, u dekadnom brojnom sistemu ima vrijednost:

� Podijelimo dekadni broj S osnovom brojanja binarnog brojnog sistema:

, sa ostatkom

� Primijetimo da ovim dijeljenjem kao ostatak dobijamo , najmanje značajnu cifru posmatranog binarnog broja

� Ponavljamo postupak:

, sa ostatkom

. . .

, sa ostatkom

, sa ostatkom

1 2 1 0...n na a a a a−

1 21 2 1 02 2 ... 2 2 .n n

n nS a a a a a−−= × + × + + × + × +

1 21 2 1/ 2 2 2 ... 2n n

n nS a a a a− −−= × + × + + × + 0a

0a

2 2 31 2( / 2) / 2 / 2 2 2 ...n n

n nS S a a a− −−= = × + × + + 1a

/ 2nnS a= 1na −

1/ 2 0nS + = na

KRAJ

Page 14: Osnovi racunarstva - Brojni Sistemi

� Primjer: Pretvoriti dekadni broj 23(10) u njemu odgovarajući binarni zapis.

� Rješenje:

Prema tome, dekadnom broju 23(10) odgovara binarni zapis 10111(2)

ostatak 23/2=11 1→ 0a

11/2=5 1→ 1a

5/2=2 1→ 2a

2/2=1 0→ 3a

1/2=0 1→ 4a

Page 15: Osnovi racunarstva - Brojni Sistemi

� Pretvaranje decimalnog dijela dekadnog broja u njegov binarni ekvivalent je takoñe iterativan postupak

� Prva iteracija se sastoji u množenju posmatranog decimalnog dijela dekadnog broja sa osnovom binarnog brojnog sistema (2) i zapisivanju cjelobrojnog dijela dobijenog rezultata.

� Tom prilikom se može dobiti cjelobrojni dio jednak nuli ili jedinici, a to su cifre binarnog brojnog sistema.

� Postupak se ponavlja, u nizu iteracija, sa decimalnim dijelom dobijenim u prethodnoj iteraciji.

� Kada se dobije decimalni dio jednak nuli ili postigne željena preciznost, postupak se prekida.

� Cjelobrojni djelovi dobijeni prilikom množenja sa 2, zapisani redoslijedom kojim su dobijeni, obrazuju traženi binarni zapis decimalnog dijela dekadnog broja. Ne zaboraviti vodeću nulu i decimalni zarez!

� Dokaz je analogan dokazu za konverziju cjelobrojne vrijednosti –pogledati u literaturi!

Page 16: Osnovi racunarstva - Brojni Sistemi

� Primjer : Odrediti binarni ekvivalent decimalnom dekadnom broju 0.8125(10)

� Rješenje:

Traženi binarni zapis je 0.1101(2), odnosno (10) (2)0.8125 0.1101=

cijeli dio rezultata 0.8125 × 2 = 1.625 1→ 1a−

0.625 × 2 = 1.25 1→ 2a−

0.25 × 2 = 0.5 0→ 3a−

0.5 × 2 = 1.0 1→ 4a−

Page 17: Osnovi racunarstva - Brojni Sistemi

� Dekadni broj sa konačnim brojem decimalnih mjesta za svoj binarni ekvivalent može imati broj sa beskonačnim brojem decimalnih mjesta.

� Ova činjenica predstavlja značajan nedostatak binarnog zapisa brojnih veličina, pošto onemogućava u potpunosti tačnu binarnu reprezentaciju proizvoljnog dekadnog broja, odnosno njegov u potpunosti tačan binarni zapis u računaru.

� Primjer : Zapisati dekadni broj 0.425(10) u binarnom obliku.

� Rješenje: cijeli dio rezultata 0.425 × 2 = 0.85 0→ 1a−

0.85 × 2 = 1.7 1→ 2a−

0.7 × 2 = 1.4 1→ 3a−

0.4 × 2 = 0.8 0→ 4a−

0.8 × 2 = 1.6 1→ 5a−

0.6 × 2 = 1.2 1→ 6a−

0.2 × 2 = 0.4 0→ 7a−

Page 18: Osnovi racunarstva - Brojni Sistemi

Osnovi računarstva I

Oktalni brojni sistem

Page 19: Osnovi racunarstva - Brojni Sistemi

� Broj zapisan u binarnom obliku zahtijeva značajno veći broj cifara u poreñenju sa zapisivanjem istog broja u nekom drugom brojnom sistemu.

� Reprezentacijom brojnih veličina u sistemima čije osnove brojanja predstavljaju stepen osnove brojanja binarnog brojnog sistema nastoji se ublažiti ovaj problem.

� Kod oktalnog brojnog sistema osnova brojanja je

� Broj abc.de, zapisan u oktalnom brojnom sistemu ima vrijednost:

� Cifra može uzeti neku od vrijednosti iz skupa

� Primjer : Zapisati oktalni broj 107.1(8) u dekadnom obliku.

� Rješenje:

(10)

38 2B = =

2 1 0 1 28 8 8 8 8 .a b c d e− −× + × + × + × + ×{0,1,2,3,4,5,6,7}

2 0 11 8 7 8 1 8 71.125−× + × + × =

Page 20: Osnovi racunarstva - Brojni Sistemi

Pretvaranje broja iz dekadnog brojnog sistema u okta lni

� Izvršava se na analogan način kao iz dekadnog u binarni brojni sistem –dijeljenjem cjelobrojnog, odnosno množenjem decimalnog dijela dekadnog broja sa osnovom brojanja oktalnog brojnog sistema (B=8)

� zapisivanje ostataka dobijenih dijeljenjem suprotnim redom od onog kojim su ostaci dobijeni

� zapisivanje cjelobrojnih djelova proizvoda onim redom kojim su izračunati

� Dokaz je analogan dokazu za prelaz iz dekadnog u binarni brojni sistem: uradite sami za vježbu (rješenje ima i u literaturi)

� Može se izvesti opšti zaključak: Prelaz iz dekadnog u proizvoljni brojni sistem (osnove brojanja B) se vrši dijeljenjem cjelobrojnog dijela, odnosno množenjem decimalnog dijela dekadnog broja osnovom brojanja B brojnog sistema u koji se vrši konverzija, te zapisivanjem ostataka dobijenih dijeljenjem suprotnim redom od onog kojim su ostaci dobijeni, kao i zapisivanjem cjelobrojnih djelova proizvoda onim redom kojim su izračunati.

Page 21: Osnovi racunarstva - Brojni Sistemi

� Primjer : Zapisati dekadni broj 354(10) u oktalnom obliku.

� Rješenje:

Prema tome,

Ostatak 354/8 = 44 2→ 0a

44/8 = 5 4→ 1a

5/8 = 0 5→ 2a

(10) (8)354 542=

Page 22: Osnovi racunarstva - Brojni Sistemi

Pretvaranje broja iz binarnog brojnog sistema u okta lni i obrnuto

� Za prelazak iz binarnog u oktalni brojni sistem dovoljno je izvršiti grupisanje po tri binarne cifre (tzv. triade) i njih zapisati u dekadnom obliku.

� Dokaz: Posmatrajmo cijeli binarni broj

� Brojna vrijednost posmatranog broja u dekadnom brojnom sistemu iznosi:

� Pretpostavimo da je , gdje je m prirodan broj, kako bi se posmatrana dekadna brojna vrijednost S mogla predstaviti sumom skupina, sastavljenih od po tri sabirka. Ova pretpostavka uvijek može biti zadovoljena – dodavanjem nula sa lijeve strane!

1 2 5 4 3 2 1 0...n n na a a a a a a a a− −

1 21 2

5 4 3 25 4 3 2 1 0

2 2 2 ...

2 2 2 2 2 .

n n nn n nS a a a

a a a a a a

− −− −= × + × + × +

+ × + × + × + × + × +3 1n m= −

Page 23: Osnovi racunarstva - Brojni Sistemi

� Grupisanjem po tri sabirka, suma S poprima oblik:

� Zamjenom u prethodnom izrazu, dobija se:

� Posljednji izraz predstavlja reprezentaciju dekadne sume S u oktalnom obliku, gdje su koeficijenti bi, i=0,1,...,m–1, cifre oktalnog brojnog sistema:

. . .

2 21 2

2 3 25 4 3 2 1 0

( 2 2 ) 2 ...

( 2 2 ) 2 ( 2 2 ).

nn n nS a a a

a a a a a a

−− −= × + × + × +

+ × + × + × + × + × +3 1n m= −

3 3 3 3( 1) 31 1 0 1 1 0

11 1 0

2 ... 2 2 ... 2

8 ... 8 .

m mm m

mm

S b b b b b b

b b b

− −− −

−−

= × + + × + = × + + × +

= × + + × +

21 3 1 3 2 3 32 2m m m mb a a a− − − −= × + × +

21 5 4 32 2 .b a a a= × + × +

20 2 1 02 2 ,b a a a= × + × +

Analogno se dokazuje za decimalni dio

Page 24: Osnovi racunarstva - Brojni Sistemi

� Primjer : Zapisati binarni broj 1011010111.10(2) u oktalnom obliku.

� Rješenje:

� Dodati dvije nule sa lijeve strane cijelog dijela posmatranog broja

� Dodati jednu nulu sa desne strane decimalnog dijela istog broja

� Grupisati po tri binarne cifre

� Tumačiti pojedinačno grupisane skupine od po 3 binarne cifre (dekadno):

Dakle:

001 011 010 111 . 100

1 3 2 7 . 4

(2) (8)1011010111.10 1327.4=

Page 25: Osnovi racunarstva - Brojni Sistemi

� Primjer : Pronaći binarni ekvivalent oktalnom broju 7012.3(8).

� Rješenje:

Traženi binarni broj je 111000001010.011(2).

� Iz svega navedenog se može zaključiti da se konverzija iz binarnog u oktalni brojni sistem i obrnuto može izvršiti na 2 načina:

1. Konverzijom najprije u dekadni brojni sistem, a potom iz dekadnog u zahtijevani brojni sistem. Ovaj način je univerzalan i važi za konverziju brojeva iz proizvoljnog brojnog sistema osnove brojanja (a) u proizvoljni brojni sistem osnove brojanja (b) (simbolički zapisano: (a)→ (10) →(b)).

2. Grupisanjem po tri binarne cifre u tzv. triade i zapisivanjem svake triade njenom oktalnom vrijednošću; i obrnuto: predstavljanjem svake cifre posmatranog oktalnog broja njenim trocifrenim binarnim ekvivalentom.

7 0 1 2 . 3

111 000 001 010 . 011

Page 26: Osnovi racunarstva - Brojni Sistemi

Osnovi računarstva I

Heksadekadni brojni sistem

Page 27: Osnovi racunarstva - Brojni Sistemi

� Kod heksadekadnog brojnog sistema osnova brojanja je

� Za zapis nekog broja potrebno je imati na raspolaganju 16 različitih cifara u ovom brojnom sistemu.

� Skup cifara heksadekadnog brojnog sistema je

� Primjer : Zapisati heksadekadni broj 8A31F.2(16) u dekadnom obliku.

� Rješenje:

� Binarni broj se pretvara u heksadekadni oblik grupisanjem po 4 binarne cifre (tzv. tetrade), te njihovim kasnijim pojedinačnim tumačenjem u heksadekadnom obliku.

� Dokaz ovog stava je u potpunosti analogan dokazu sprovedenom u slučaju oktalnog brojnog sistema (uraditi za vježbu)

416 2B = =

{0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}

4 3 2 1 0 1(10)8 16 A 16 3 16 1 16 F 16 2 16 566047.125−× + × + × + × + × + × =

Page 28: Osnovi racunarstva - Brojni Sistemi

� Primjer : Zapisati binarni broj 100100111101010(2) u heksadekadnom obliku.

� Rješenje:

Heksadekadni ekvivalent posmatranog binarnog broja je

� Primjer : Prikazati heksadekadni broj A95(16) u binarnom brojnom sistemu.

� Rješenje:

Znači,

0100 1001 1110 1010

4 9 E A

(16)49EA

A 9 5

1010 1001 0101

(16) (2)A95 101010010101=

Page 29: Osnovi racunarstva - Brojni Sistemi

Osnovi računarstva I

Binarna aritmetika

Page 30: Osnovi racunarstva - Brojni Sistemi

� Zbog posebne važnosti binarnog brojnog sistema (savremeni računari koriste upravo taj zapis) detaljno ćemo obraditi osnovne aritmetičke operacije sa brojevima u tom sistemu.

� Aritmetika u binarnom brojnom sistemu je sasvim slična onoj sa dekadnim brojevima, a u mnogim elementima i znatno prostija.

Page 31: Osnovi racunarstva - Brojni Sistemi

Osnovi računarstva I

Binarna aritmetikaSabiranje u binarnom brojnom sistemu

Page 32: Osnovi racunarstva - Brojni Sistemi

� Prilikom sabiranja binarnih cifara mogu nastupiti četiri slučaja i to:

� 0 + 0 = 0 sa prenosom 0 na naredno težinsko mjesto

� 0 + 1 = 1 sa prenosom 0 na naredno težinsko mjesto

(isto što i 1 + 0 = 1 sa prenosom 0 na naredno težinsko mjesto)

� 1 + 1 = 10, odnosno 0 sa prenosom 1 na naredno težinsko mjesto

� 1 + 1 + 1 = 11, odnosno 1 sa prenosom 1 na naredno težinsko mjesto.

� Gornji slučajevi se odnose na binarne cifre tekućeg (posmatranog) težinskog mjesta binarnog broja.

� Prenos se odnosi na prenos koji se dešava sa tekućeg na naredno (više) težinsko mjesto posmatranog binarnog broja.

Page 33: Osnovi racunarstva - Brojni Sistemi

� Primjer : Sabrati brojeve 1011.1 i 101.11

� Rješenje:

� Posmatrane binarne brojeve treba najprije zapisati tako da decimalni zarezi budu jedan ispod drugog.

� Primjenjujući navedena pravila sabiranja binarnih cifara na svim pojedinačnim težinskim mjestima sabiraka, počev od krajnjeg desnog težinskog mjesta prema višim (lijevim) težinskim mjestima, dobijamo:

1011.10

101.11

10001.01

+