brojni sistemi

Upload: edin-enndy-muratovic

Post on 16-Jul-2015

82 views

Category:

Documents


0 download

TRANSCRIPT

NASTAVA RAQUNARSTVA

Jasminka Miha inac BROJNI SISTEMI,, . . . Re i u vam udsku neda u. Kao deca bili su glupi. Ja sam im udelio misli i sazna a . . . i zbog ih sam smislio nauku brojeva, kao najva niju od svih nauka . . . \

Eshil: ,,Okovani Prometej\

Brojni sistemi su jezici nad skupom cifara. Imaju svoju azbuku (neprazan skup cifara) i gramatiku (pravila) kojima se konstruixu slo ene kategorije (brojevi). Svi poznati brojni sistemi mogu se podeliti u dve osnovne grupe: pozicioni i nepozicioni.

1. Nepozicioni brojni sistemiCifre ovakvih sistema iskazuju uvek istu vrednost, bez obzira na kom mestu se nalaze u broju. Tipiqan primer ovakvog sistema je nama svima poznati rimski brojni sistem. ;egove cifre su slede e:I, V, X, L, C, D

i

M

i imaju dekadne vrednosti: 1, 5, 10, 50, 100, 500 i 1000. Pravila za pisa e i qita e brojeva, sastav enih od rimskih cifara, mogu se iskazati na slede i naqin: niz istih cifara u broju predstav a vrednost jednaku ihovom zbiru, na primer: III ima vrednost 3 XX ima vrednost 20. dve cifre od kojih se ma a nalazi levo od ve e, predstav aju vrednost jednaku razlici ve e i ma e, na primer: IV ima vrednost 4 CM ima vrednost 900. dve cifre od kojih se ma a nalazi desno od ve e, predstav aju vrednost jednaku zbiru ve e i ma e, na primer: VIII ima vrednost 8 XVI ima vrednost 16 MD ima vrednost 1500. Istorijski gledano prvo su se pojavili ovaki brojni sistemi. Rimski brojni sistem koristi se za obele ava e (spratova, poglav a u k igama, . . . ) ali ne i u matematici. Jasno je da bi bilo naporno izvo e e aritmetiqkih operacija sa rimskim brojevima kao i zapisiva e velikih brojeva, zbog toga se ovaj sistem nije ni razvio u tom smeru ve je tu ulogu preuzeo pozicioni brojni sistem.

44

J. Miha inac

2. Pozicioni brojni sistemiOvi brojni sistemi imaju neprazan skup cifara koji qini ihovu azbuku fa1 a2 . . . aN g. Broj N cifara azbuke zovemo osnovom sistema. Cifre pozicionih brojnih sistema u broju daju vrednost u zavisnosti od mesta (pozicije) na kome se nalaze (levo od decimalnog zareza pozicije su 0, 1, 2, . . . a desno su ;1, ;2, . . . ). Vrednost svake cifre zavisi od ene vrednosti i ene pozicije u broju. Vrednost pojedine pozicije (mesta) u broju naziva se poziciona vrednost. Sve pozicione vrednosti u jednom broju jednake su uzastopnim vrednostima stepena osnove brojnog sistema. Brojevi se pixu kao niz cifara, a vrednost broja se dobija kao zbir proizvoda cifre i pozicione vrednosti (osnove stepenovane pozicijom). Vrednost broja X u pozicionom brojnom sistemu osnove N , koji ima p + 1 celo mesto i m razlom enih, mo emo napisati na slede i naqin u obliku polinoma:

A

=

ili u skra enom obliku:

XN xp N p xp;1 N p;1= +

+

+

x1 N 1 x0 N 0 x;1 N ;1+ + =

+

+

XN

gde su xi cifre azbuke datog brojnog sistema. Nama najpoznatiji pozicioni brojni sistem je dekadni, dok se u raqunarstvu koriste: binarni, oktalni i heksadekadni. 1. Dekadni brojni sistem. Dekadni brojni sistem je sistem qija je azbuka f0 1 . . . 9g, pa je osnova sistema N = 10. Broji se: 0, 1, . . . , 9, 10, 11, . . . , 99, 100, . . . Kada se na najve u cifru 9 doda 1 dobija se 10 kao najma i dvocifreni broj kada se na najve i dvocifreni broj 99 doda 1 dobija se najma i trocifreni broj. Dekadni broj pixemo kao niz cifara, a vrednost izraqunavamo kao zbir proizvoda cifre i osnove 10 stepenovane pozicijom. Na primer, kod broja (gde su pozicione vrednosti: 103 , 102 , 101 , 100 , 10;1 , 10;2 ) cifra 4 se dva puta pojav uje u broju sa dva razliqita doprinosa: prvi put na mestu hi ada pa je en doprinos 4000 (= 4 1000), a drugi put na mestu jedinica pa je en doprinos 4 (= 4 100 ). 2. Binarni brojni sistem. Binarni brojni sistem je sistem qija je osnova N = 2, azbuka A = f0 1g i broji se po istom principu (kada se na najve u cifru 1 doda 1 dobija se 10 kao najma i dvocifreni broj kada se na najve i dvocifreni broj 11 doda 1 dobija se najma i trocifreni broj 100, . . . ):0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 . . . 4564 52 = 4 10

i=;m

p P

x;m N ;m

xi N i

:

3

+ 5 10

2

+ 6 10

1

+ 4 10

0

+ 5 10

;1 + 2

10

;2

Binarni broj zapisujemo kao

(gde su pozicione vrednosti: 2p , 2p;1 , . . . ).

X2 xp p xp;1 p;1= 2 + 2

+

+

x1

2

1

+

x0

2

0

+

x;1 ;12

+

+

x;m ;m2

Brojni sistemi

45

Primer 1. Binarni broj (101101(101101 011)2 = 1 2

011)2

napisan u obliku polinoma izgleda:1+1 2

5

+0 2

4

+1 2

3

+1 2

2

+0 2

0

+0 2

;1 + 1 2;2 + 1 2;3 :

Kada izraqunamo vrednost ovog izraza, po pravilima raquna a koja vladaju u dekadnom brojnom sistemu, dobi emo dekadnu vrednost binarnog broja, tj (101101 011)2 = (45 375)10 . Na ovaj naqin mo emo izraqunati dekadnu vrednost bilo kog binarnog broja. Ovo je u isto vreme i postupak za prevo e e (konverziju) binarnog broja u dekadni. S obzirom da ima samo dve cifre, kojima sa mo e oznaqiti sta e mnogobrojnih fiziqkih elemenata, binarni brojni sistem se dosta koristi prilikom konstrukcija, izrade i korix e a raqunara i drugih digitalnih postroje a. Primer 2. Prevedimo neke binarne brojeve:(10)2 = 1 2 (11)2 = 1

1

+0 2 +1

0

1 2 2

0 2 1

= (2)10 = 2 + 1 = (3)10 + 0 2

(101)2 = 1 2 (110)2 = 1

2

+ 0 2 + 1

1

+1 2 +0

0

2 2 2

1 2 1

0 2 0

= 4 + 1 = (5)10 = 4 + 2 = (6)10 = 4 + 2 + 1 = (7)10

(100)2 = 1 2

+0 2

0

= 4 = (4)10

(111)2 = 1 2

+ 1 2

+1 2

3. Oktalni brojni sistem. Oktalni brojni sistem je sistem qija je osnova N = 8, azbuka A = f0 1 2 3 4 5 6 7g i broji se po istom principu (kada se na najve u cifru 7 doda 1 dobija se 10 kao najma i dvocifreni broj kada se na najve i dvocifreni broj 77 doda 1 dobija se najma i trocifreni broj 100, . . . ): 0,1,2,3,4,5,6,7,10,11, . . . ,17,20,21, . . . ,27,30,31, . . . ,77,100,101, . . . , 107,110, . . . ,777,1000, . . . Oktalni broj pixemo:(gde su pozicione vrednosti: 8p , 8p;1 , . . . ). Primer 3. Oktalni broj (71301 2)8 napisan u obliku polinoma izgleda:(71301 2)8 = 7 8

X8 xp p xp;1 p;1= 8 + 8

+

+

x13

8

1

+

x02

8

0

+

x;1 ;18

+

+

x;m ;m8

4

+1 8

+3 8

+0 8

1

+1 8

0

+2 8

;1

kada izraqunamo vrednost ovog izraza, po pravilima raquna a koja vladaju u dekadnom brojnom sistemu, dobi emo dekadnu vrednost binarnog broja, tj.(71301 2)8 = 7 4096 + 1 512 + 3 64 + 0 8 + 1 1 + 1 8

;1 = (29377

25)10

:

Ovo je u isto vreme i postupak za prevo e e oktalnog broja u dekadni. Primer 4. Prevedimo neke oktalne brojeve:(10)8 = 1 8

1 1 1

+ 0 8

0 0 0

= 8 + 0 = (8)10 = 8 + 1 = (9)10 = 8 + 2 = (10)10 = 8 + 7 = (15)10 = 16 + 0 = (16)10

(27)8 = 2 8 (30)8 = 3 8 (77)8 = 7

1 1 2

+7 8 +0 8 +7

0 0 1

= 16 + 7 = (23)10 = 24 + 0 = (24)10 = 56 + 7 = (63)10 +0 8 +7 8

(11)8 = 1 8 (12)8 = 1

+ 1 8 + 2

1 8 1 8

0 8 0 8

1 8 2 8

0 8 1 8

(17)8 = 1 8 (20)8 = 2

+ 7 8 + 0

(100)8 = 1 8 (777)8 = 7

+0 8 +7

0

0

= 64 + 0 + 0 = (64)10 = 448 + 56 + 7 = (511)10

4. Heksadekadni brojni sistem. Heksadekadni brojni sistem je sistem qija je osnova N = 16, azbuka A = f0 1 2 3 4 5 6 7 8 9 A B C D E F g i broji se po istom principu (kada se na najve u cifru F doda 1 dobija se 10 kao

46

J. Miha inac

najma i dvocifreni broj kada se na najve i dvocifreni broj FF doda 1 dobija se najma i trocifreni broj 100, . . . ): 0 1 2 . . . 9 A B . . . F 10 11 . . . 1F 20 21 . . . 2F 30 31 . . . FF 100 101 . . . 10F 110 . . . FFF 1000 . . . Heksadekadni broj pixemo: (gde su pozicione vrednosti: 16p , 16p;1 , . . . ). Da bi se heksadekadne cifre ve e od 9 izrazile jednim znakom dogovoreno je da se za heksadekadne cifre od 10 do 15 uzmu slova abecede od A do F tj.( (

X16 xp p xp;1 p;1= 16 + 16

+

+

x1

16

1

+

x0

16

0

+

x;1 ;116

+

+

x;m ;m16

A 16 D 16) )

= (10)10 = (13)10

(

(

B 16 E 16) )

= (11)10 = (14)10

( (

C F

)16 = (12)10 )16 = (15)10

:;2:

Primer 5. Heksadekadni broj ima slede i izgled:(91

(91

FC F5

2)16

napisan u obliku polinoma0+

FC F5

2)16 = 9 16

4

+ 1 16

3

+

F

16

2

+

C

16

1

+ 5 16

F ;18

+ 2 16

Kada izraqunamo vrednost ovog izraza, po pravilima raquna a koja vladaju u dekadnom brojnom sistemu, dobi emo dekadnu vrednost binarnog broja, tj.(91

FC F5

2)16 = 9 65535 + 5096 + 15 256 + 12 16 + 5 1 + 15 1 16 + 2 1 16

=

=

2

= (597957 95)10

:

Ovo je u isto vreme i postupak za prevo e e (konverziju) heksadekadnog broja u dekadni. Primer 6. Prevedimo neke heksadekadne brojeve:(10)16 = 1 16 (11)16 = 1 (1 (1

1 1

+ 0 16 +1 + +

0 0 0

A 16 F 16) )

1 16 1

= 1 16 = 1 16

A F

0 1616

= 16 + 0 = (16)10 = 16 + 1 = (17)10 = 16 + 10 = (26)10 = 16 + 15 = (31)10

(20)16 = 2 16 (2

1 1 1

F

+ 0 16 +

0 0 0

)16 = 2

1 16

F

= 32 + 0 = (32)10 = 32 + 15 = (47)10 = 48 + 0 = (48)10 = 240 + 15 = (255)10

16

16

(

(100)16 = 1

2 16 2

+0

1 16 1

FF

(30)16 = 3 16 )16 =

+ 0

0 16 0

F

+ 0 16 +

16

F

16

0

= 256 + 0 + 0 = (256)10 = 256 + 0 + 1 = (257)10

(101)16 = 1 16

+ 0 16

+ 1 16

5. Prevo e e. Videli smo kako se pixu brojevi u binarnom, oktalnom i heksadekadnom brojnom sistemu i kako se prevode u dekadne brojeve. Sada emo se pozabaviti obrnutim postupkom, kako se dekadni broj prevodi u binarni, oktalni i heksadekadni. Postupak za prevo e e brojeva iz jedne osnove u drugu ima dva dela: 1) prevo e e celog dela broja, 2) prevo e e razlom enog dela broja.1) Prevo e e celog dela broja realizuje se uzastopnim de e em osnovom u koju prevodimo, vode i raquna o ostatku de e a. Neka ceo broj (X )N1 = xk xk;1 . . . x2 x1 x0 ima zapis(

X N2 yp yp;1) =

...

y2 y1 y0

Brojni sistemi

47

Podelimo li ovaj zapis sa N2 dobi e se ceo deo koliqnika i ostatak y0 . Ostatak je cifra broja u koji prevodimo na 0toj poziciji, a ceo deo koliqnika je broj nad kojim nastav amo deobu tako da u slede em koraku dobijamo cifru na 1-oj poziciji itd. dok koliqnik ne bude 0. u osnovi

yp yp;1

...

N2 . y2 y1

i ostatak 1 (1 { cifra na 0-toj poziciji) i ostatak 1 (1 { cifra na 1-voj poziciji) 81 : 2 = 40 i ostatak 1 (1 { cifra na 2-goj poziciji) 40 : 2 = 20 i ostatak 0 (0 { cifra na 3- oj poziciji) 20 : 2 = 10 i ostatak 0 (0 { cifra na 4-toj poziciji) 10 : 2 = 5 i ostatak 0 (0 { cifra na 5-toj poziciji) 5 : 2 = 2 i ostatak 1 (1 { cifra na 6-toj poziciji) 2 : 2 = 1 i ostatak 0 (0 { cifra na 7-moj poziciji) 1 : 2 = 0 i ostatak 1 (1 { cifra na 8-moj poziciji), pa je (327)10 = (101000111)2. Ovaj postupak se mo e predstaviti tablicom:327 : 2 = 163 163 : 2 = 81 327 1 163 1 81 1 40 0 20 0 10 0 5 1 2 0 1 1

Primer 7. Prevesti broj (327)10 u broj sistema sa osnovom 2.

pri qemu se rezultat qita u smeru zdesna ulevo. 2) Prevo e e razlom enog dela broja realizuje se sukcesivnim mno e em osnovom u koju prevodimo vode i raquna o celom delu proizvoda. Neka razlom eni broj (X )N1 = 0 x;1 x;2 . . . x;m ima zapis(

y;1 y;2 y;p u osnovi N2 . Mno e em ovog zapisa sa N2 dobija se ceo deo proizvoda y;1 (koji predstav a prevedenu cifru na ; -voj poziciji) i razlom eni deo y;2 y;p) = 0 ... 1 0 ...

X N2

nad kojim nastav amo postupak (dobijaju i cifre na ;2-goj, ;3- oj . . . poziciji). Prevo e em konaqnih razlom enih brojeva nekada se ne mo e dobiti konaqan prevod pa se ovaj postupak prekida kada se dostigne zahtevana taqnost.

Primer 8. Prevesti broj (00 84375 8 = 6 75 = 0 75 + 6 0 75 8 = 6 00 = 0 00 + 6

pa je

4)10 u broj u sistemu sa osnovom 16. (6 { cifra na ;1-voj poziciji) 0 4 16 = 6 4 = 0 4 + 6 (6 { cifra na ;2-goj poziciji), i tako da e do e ene taqnosti, pa je (0 4)10 = (0 66 . . . )16 . 0 4 16 = 6 4 = 0 4 + 6

Primer 9. Prevesti broj (0

(0 84375)10 = (0 66)8

.

84375)10 u broj u sistemu sa osnovom 8. (6 { cifra na ;1-voj poziciji) (6 { cifra na ;2-goj poziciji),

Za prevo e e mexovitog broja potrebno je posebno prevesti ceo deo i razlom eni deo, pa prevode sabrati.

Primer 10. Prevesti broj (67 875)10 u: a) binarni b) oktalni v) heksadekadni brojni sistem. Uradi emo primer pod a) i v), dok sluqaj b) prepuxtamo qitaocu.

48

J. Miha inac

a) Prevod za celobrojni deo 67 : 2 = 33, ostatak 1 33 : 2 = 16, ostatak 1 16 : 2 = 8, ostatak 0 8 : 2 = 4, ostatak 0 4 : 2 = 2, ostatak 0 2 : 2 = 1, ostatak 0 1 : 2 = 0, ostatak 1(67)10 = (1000011)2

v) Prevod za celobrojni deo 67 : 16 = 4, ostatak 3 4 : 16 = 0, ostatak 4

Prevod za razlom eni deo0 875 2 = 1 75 = 0 75 + 1 0 0

(67)10 = (43)16

{ ceo deo 1 75 2 = 1 5 = 0 5 + 1 { ceo deo 1 5 2 = 1 0 = 0 0 + 1 { ceo deo 1

Prevod za razlom eni deo0 875 16 = 14 0 = 0 0 + 14

{ ceo deo

E

(0 875)10 = (0 111)2

Rezultat je:(67

(0 875)10 = (0

Rezultat je:(67

E

)16

)10 = (1000011 000)2 0 111)2

)10 = (43 0)16

( 0 875)10 = (

( 0 875)10 = ( 0 (67 875)10 = (43

(67 875)10 = (1000011 111)2

E E

)16 )16

6. Kodira e. Raqunari koji rade u binarnom brojnom sistemu izvrxavaju operacije nad brojnim podacima koji su sa odre enom taqnox u prevedeni. Ovo ne predstav a poseban problem za nauqno-tehniqku primenu raqunara (raquna se sa unapred zadatom taqnox u) ali je krupan nedostatak za poslovnu primenu raqunara. Zato se uvodi binarno-kodirani sistem. Neka je X , u brojnom sistemu sa osnovom N1 , zapisan u obliku (X )N1 = xn xn;1 . . . x1 x0 x;1 x;2 . . . x;m , gde su xi , i = ;m, ;m + 1, . . . , n cifre brojnog sistema sa osnovom N1 . Za pozicioni sistem sa osnovom N1 ka e se da je kodiran pozicionim sistemom sa osnovom N2 ako sve cifre broja X izrazimo pomo u cifara brojnog sistema sa osnovom N2 , tako da je xk = yk p yk p;1 . . . yk 1 yk 0 (broj p odre uje se iz uslova da najve a cifra u brojnom sistemu sa osnovom N1 bude zapisana u ovom obliku), gde su yk i , i = 0 1 . . . p cifre brojnog sistema sa osnovom N2 , pa imamo

X N1 yn p yn 0 yn;1 p yn;1 0 y;m p y;m 0 N2 =N1 gde oznaka N2 =N1 ukazuje da je broj X zapisan u sistemu sa osnovom N1 , kodiranim sistemom sa osnovom N2 .( ) = ( ... ... ... ... ... )

Kod raqunara je od posebnog znaqaja tzv. binarno-kodirani dekadni sistem, tj. sluqaj kad dekadne cifre (N1 = 10) kodiramo binarnim brojevima (N2 = 2) du ine 4 (p = 3). Interesantni su i binarno-kodirani oktalni (N1 = 8, N2 = 2, p = 2) i binarno-kodirani heksadekadni sistem (N1 = 16, N2 = 2, p = 3). Tablica kodova je data na slede oj strani. sistemu glasi

Primer 11. Dekadni broj

128 34

(128 34)10 = (0001 0010 1000 0011 0100)2

N2s , gde je s ceo broj ve

U raqunskoj tehnici posebno interesantan je sluqaj kodira a kada je i od 1. U ovom sluqaju va i slede a teorema:

napisan u binarno-kodiranom dekadnom =10.

N1

=

Brojni sistemi Dekadna cifra 0 1 2 3 4 5 6 7 8 9 Binarni kod 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Oktalna cifra 0 1 2 3 4 5 6 7 Binarni kod 000 001 010 011 100 101 110 111 Heksadekadna cifra 0 1 2 3 4 5 6 7 8 9 Binarni kod 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

49

A B C D E F Broj X zapisan u sistemu sa osnovom N2 ima isti zapis u sistemu N1 = N2s , gde je s ceo broj ve i od 1, kodiranim sistemom sa osnovom N2 , tj. (X )N2 = (X )N2=N1 :

Za ilustraciju navedene osobine prevo e a mo e se uzeti primer oktalnog i binarnog brojnog sistema (N1 = 8 = 23 , N2 = 2, s = 3) i heksadekadnog i binarnog brojnog sistema (N1 = 16 = 24 , N2 = 2, s = 4). Primer 12. Oktalni broj 36 25: a) napisati u binarno-kodiranom oktalnom sistemu b) prevesti u broj binarnog brojnog sistema, pa zapise uporediti. a) (36 25)8 = (011 110 010 101)2=8. b) Na osnovu qi enice da je 8 = 23 mo emo pisati(36 25)8 = 3 8

1

+ 6

8

0

+ 2

8

;1 + 5 8;2(2 )

= (11)2 = (1 = 1

3 1 (2 )+1

1 2

0 2 ) 3 2

+ (110)2

3 0 2 2

3 2

+ (10)2 +1 +1

+ (1

1 2 )

4 2

+ 1

+ 1

sistema iznosi

Primer 13. Heksadekadni broj 4F 1(4

= (11110 010101)2

:

2 2

+1

1 2

;1 + (101)2 (23 );2 1 ;3 + (1 22 + 1 + (1 2 ) 2 ;2 + 1 2;4 + 1 2;6 2(2 )

3

0 2

2 )

0

2

;6

7. Dekodira e. Dekodira e je proces suprotan kodira u, u kome za poznate kodove prepoznajemo izvorne cifre. Dekodira se od decimalnog zareza na levo i desno. Primer 14. Prevesti oktalni broj 352 14 u broj heksadekadnog brojnog sistema. Prvo emo oktalni broj prevesti u binarni (kodovima du ine 3) pa ga dekodira em (kodovima du ine 4) prebaciti u heksadekadni broj.(352 14)8 = (011 101 010 001100)2

F

23

preveden u broj binarnog brojnog

1 23)16 = (0100 1111 0001 0010 0011)2

:

a) (11010111010010 b) (11010111010010

Primer 15. Prevesti binarni broj 11010111010010 talnog b) heksadekadnog brojnog sistema.

=8 = (0 1110 1010

0011 00)2 = (

EA

3)16

1001011

u broj: a) ok. .

:

1001011)2 = (011 010 111 010 010 100 101 100)2 = (32722 454)8 1001011)2 = (0011 0101 1101 0010 1001 0110)2 = (35

D

2 96)16