54
1 Zapis podataka

Zapis podataka

Embed Size (px)

DESCRIPTION

podaci

Citation preview

Page 1: Zapis podataka

1

Zapis podataka

Page 2: Zapis podataka

Teme

• Brojevni sustav

• Dekadski brojevni sustav

• Binarni brojevni sustav

• Oktalni brojevni sustav

• Heksadekadski brojevni sustav

• Pretvorba dekadskog u binarni

• Pretvorba dekadskog u oktalni

© L. Blagojević i D. Grundler, 2009 2

Page 3: Zapis podataka

Teme

• Pretvorba dekadskog u hekadekadski

• Pretvorba binarnog u oktalni

• Pretvorba binarnog u dekadski

• Pretvorba binarnog u hekadekadski

• Pretvorba oktalnog u binarni

• Pretvorba oktalnog u dekadski

• Pretvorba heksadekadskog u binarni

© L. Blagojević i D. Grundler, 2009 3

Page 4: Zapis podataka

Teme

• Pretvorba heksadekadskog u dekadski

• Zbrajanje binarnih brojeva

• Oduzimanje binarnih brojeva

• Dvojni komplement

• Množenje binarnih brojeva

• Riječ

• Prikaz brojeva u računalu

© L. Blagojević i D. Grundler, 2009 4

Page 5: Zapis podataka

Teme

• Prikaz brojeva s pomičnim zarezom

• IEEE Standard 754

• Kôd i kodiranje

• ASCII kôd

• Unicode

© L. Blagojević i D. Grundler, 2009 5

Page 6: Zapis podataka

Brojevni sustav

• Način zapisivanja brojeva i njihovo tumačenje zove se brojevni sustav.

• Položajni brojevni sustav je sustav kod kojeg položaj znamenke u zapisu određuje njezinu vrijednost.

© L. Blagojević i D. Grundler, 2009 6

Page 7: Zapis podataka

Brojevni sustav u općem obliku

• Broj N se u brojevnom sustavu s bazom B može napisati ovako:

• N = z ∙ Bn + z ∙ Bn-1 + z ∙ Bn-2 + … + z ∙ B2 + z ∙ B1 + z ∙ B0, z ∙ B-1 + z ∙ B-2 + … + z ∙ B-(n-2) + z ∙ B-(n-1) + z ∙ B-n

• N je broj prikazan u brojevnom sustavu s bazom (osnovom) B s pomoću znamenki z (z može biti bilo koja znamenka brojevnog sustava B).

• Znamenke z su cijeli brojevi u rasponu od 0 do B-1.

• Broj n je cijeli broj.

© L. Blagojević i D. Grundler, 2009 7

Page 8: Zapis podataka

Dekadski brojevni sustav

• Baza (osnova) dekadskog brojevnog sustava je 10, a za zapis brojeva se rabe znamenke z = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

• N = z∙10n + z∙10n-1 + z∙10n-2 + … + z∙102 + z∙101 + z∙100 , z∙10-1 + z∙10-2 + … + z∙10-(n-2) + z∙10-(n-1) + z∙10-n

• Npr. 12,5 = 1∙101 + 2∙100 + 5∙10-1

© L. Blagojević i D. Grundler, 2009 8

Page 9: Zapis podataka

Binarni brojevni sustav

• Baza (osnova) binarnog brojevnog sustava je 2, a za zapis se brojeva rabe znamenke z = 0 i 1.

• N = z∙2n + z∙2n-1 + z∙2n-2 + … + z∙22 + z∙21 + z∙20 , z∙2-1 + z∙2-

2 + … + z∙2-(n-2) + z∙2-(n-1) + z∙2-n

• Npr. 101 = 1∙22 + 0∙21 + 1∙20

© L. Blagojević i D. Grundler, 2009 9

Page 10: Zapis podataka

Oktalni brojevni sustav

• Baza (osnova) oktalnog brojevnog sustava je 8, a za zapis brojeva se rabe znamenke 0, 1, 2, 3, 4, 5, 6, 7.

• N = z∙8n + z∙8n-1 + z∙8n-2 + … + z∙82 + z∙81 + z∙80 , z∙8-1 + z∙8-

2 + … + z∙8-(n-2) + z∙8-(n-1) + z∙8-n

• Npr. 217 = 2∙82 + 1∙81 + 7∙80

© L. Blagojević i D. Grundler, 2009 10

Page 11: Zapis podataka

Heksadekadski brojevni sustav

• Baza (osnova) heksadekadskog brojevnog sustava je 16, pa je za zapis brojeva potrebno 16 znamenaka.

• U tu je svrhu uz 10 znamenaka dekadskog brojevnog sustava uvedeno i prvih 6 slova engleske abecede.

• Tako se rabe znamenke 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

© L. Blagojević i D. Grundler, 2009 11

Page 12: Zapis podataka

Heksadekadski brojevni sustav

• N = z∙16n + z∙16n-1 + z∙16n-2 + … + z∙162 + z∙161 + z∙160 , z∙16-1 + z∙16-2 + … + z∙16-(n-2) + z∙16-(n-1) + z∙16-n

• Npr. 1AF = 1∙162 + 10∙161 + 15∙160

© L. Blagojević i D. Grundler, 2009 12

Page 13: Zapis podataka

Heksadekadski brojevni sustav

© L. Blagojević i D. Grundler, 2009 13

Page 14: Zapis podataka

Pretvorba dekadskog u binarni

• Dekadski se broj u binarni pretvara uzastopnim cjelobrojnim dijeljenjem broja u dekadskom prikazu s bazom brojevnog sustava u kojem se broj želi prikazati (u ovome slučaju s 2) uz bilježenje ostatka svakog pojedinačnog dijeljenja.

• Dijeljenje završava kad je rezultat dijeljenja nula.

• Ostaci čitani odozdo, predstavljaju traženi binarni broj.

© L. Blagojević i D. Grundler, 2009 14

Page 15: Zapis podataka

Pretvorba dekadskog u binarni

© L. Blagojević i D. Grundler, 2009 15

Page 16: Zapis podataka

Pretvorba dekadskog u oktalni

• Dekadski broj pretvara se u oktalni uzastopnim cjelobrojnim dijeljenjem broja u dekadskom prikazu s bazom brojevnog sustava, u ovome slučaju s 8, uz bilježenje ostatka svakog pojedinačnog dijeljenja.

• Dijeljenje završava kad je rezultat dijeljenja nula.

• Ostaci čitani odozdo, predstavljaju traženi oktalni broj.

© L. Blagojević i D. Grundler, 2009 16

Page 17: Zapis podataka

Pretvorba dekadskog u oktalni

© L. Blagojević i D. Grundler, 2009 17

Page 18: Zapis podataka

Pretvorba dekadskog u heksadekadski

© L. Blagojević i D. Grundler, 2009 18

• Dekadski broj se pretvara u heksadekadski uzastopnim cjelobrojnim dijeljenjem broja u dekadskom prikazu s bazom brojevnog sustava, u ovome slučaju sa 16, uz bilježenje ostatka svakog pojedinačnog dijeljenja.

• Dijeljenje završava kad je rezultat dijeljenja nula.

• Ostaci čitani odozdo, predstavljaju traženi heksadekadski broj.

Page 19: Zapis podataka

Pretvorba dekadskog u heksadekadski

© L. Blagojević i D. Grundler, 2009 19

Page 20: Zapis podataka

Pretvorba binarnog u oktalni

• Binarni broj u oktalni pretvara se tako da se, krenuvši s desna na lijevo, znamenke binarnog broja grupiraju u skupine po tri znamenke.

• Ako u posljednjoj (gledajući s desna na lijevo) skupini nedostaje znamenaka (da bi ih bilo tri), nadopunimo tu skupinu s nulama.

• Nakon toga za svaku skupinu iz gornje tablice pročitamo oktalnu znamenku koju predstavlja.

© L. Blagojević i D. Grundler, 2009 20

Page 21: Zapis podataka

Pretvorba binarnog u oktalni

• 1100001011

– Grupiranje:

• 1 100 001 011

– Dodavanje nula:

• 001 100 001 011

– Pridjeljivanje oktalne vrijednosti skupinama:

• 1 4 1 3

– Rezultat:

• (1100001011)2 = (1413)8

© L. Blagojević i D. Grundler, 2009 21

Page 22: Zapis podataka

Pretvorba binarnog u dekadski

• Binarni broj u dekadski pretvara se rastavljanjem broja na težinske vrijednosti.

• Npr.:

• (1010)2 =

• (1 ∙ 23 + 0 ∙ 22 + 1 ∙ 21 + 0 ∙ 20)10 =

• (8 + 0 + 2 + 0)10 =

• (10)10

© L. Blagojević i D. Grundler, 2009 22

Page 23: Zapis podataka

Pretvorba binarnog u heksadekadski

• Binarni broj u heksadekadski pretvara se tako da se, krenuvši s desna na lijevo, znamenke binarnog broja grupiraju u skupine po četiri znamenke.

• Ako u posljednjoj (gledajući s desna na lijevo) skupini nedostaje znamenaka (da bi ih bilo četiri), nadopunimo tu skupinu s nulama.

• Nakon toga za svaku skupinu iz gornje tablice pročitamo heksadekadsku znamenku koju predstavlja.

© L. Blagojević i D. Grundler, 2009 23

Page 24: Zapis podataka

Pretvorba binarnog u heksadekadski

© L. Blagojević i D. Grundler, 2009 24

• (1100001011)2

– Grupiranje:

• (11 0000 1011)2

– Dodavanje nula:

• (0011 0000 1011)2

– Pridjeljivanje heksadekadske vrijednosti supinama:

• (3 0 B)16

• (1100001011)2 = (30B)16

Page 25: Zapis podataka

Pretvorba oktalnog u binarni

• Oktalni broj u binarni pretvara se tako da se svaka oktalna znamenka prikaže binarnom trojkom (trijadom) koja se pročita iz tablice.

• (1 5 2)8

• 001 101 010

• (152)8 = (001101010)2

© L. Blagojević i D. Grundler, 2009 25

Page 26: Zapis podataka

Pretvorba oktalnog u dekadski

• Oktalni broj u dekadski pretvara se rastavljanjem broja na težinske vrijednosti.

• Npr.:

• (322)8 =

• (3 ∙ 82 + 2 ∙ 81 + 2 ∙ 80)10 =

• (192 + 16 + 2)10 =

• (210)10

© L. Blagojević i D. Grundler, 2009 26

Page 27: Zapis podataka

Pretvorba heksadekadskog u binarni

© L. Blagojević i D. Grundler, 2009 27

• Heksadekadski broj u binarni pretvara se tako da se svaka heksadekadska znamenka prikaže binarnom četvorkom (tetradom) koje se pročita iz tablice.

Page 28: Zapis podataka

Pretvorba heksadekadskog u binarni

© L. Blagojević i D. Grundler, 2009 28

• (1A7)16 = – Pretvaranje znamenke heksadekadskog broja u

binarnu vrijednost prema tablici:

• (0001 1010 0111)2 =

– Odbacivanje početnih nula:

• (110100111)2

• (1A7)16 = (110100111)2

Page 29: Zapis podataka

Pretvorba heksadekadskog u dekadski

© L. Blagojević i D. Grundler, 2009 29

• Heksadekadski broj u dekadski pretvara se rastavljanjem na težinske vrijednosti.

• Npr.:

• (D2)16 = (13 ∙ 161 + 2 ∙ 160)10 =

• (208 + 2)10 = (210)10

• (D2)16 = (210)10

Page 30: Zapis podataka

Zbrajanje binarnih brojeva

© L. Blagojević i D. Grundler, 2009 30

• Binarnih brojevi se zbrajaju po pravilima za zbrajanje dvaju bitova

Page 31: Zapis podataka

Zbrajanje binarnih brojeva

© L. Blagojević i D. Grundler, 2009 31

Page 32: Zapis podataka

Zbrajanje binarnih brojeva

© L. Blagojević i D. Grundler, 2009 32

Page 33: Zapis podataka

Oduzimanje binarnih brojeva

© L. Blagojević i D. Grundler, 2009 33

• Oduzimanje brojeva može se svesti na zbrajanje.

• Da bi to bilo moguće, umanjitelj treba pretvoriti u negativan broj.

• Primjerice, 5 – 3 = 5 + (–3).

• Negativni se brojevi u binarnom brojevnom sustavu predočuju s pomoću dvojnoga komplementa.

Page 34: Zapis podataka

Dvojni komplement

© L. Blagojević i D. Grundler, 2009 34

• Dvojni komplement nekoga binarnog broja dobiva se ovako.

– Umanjenik i umanjitelj treba svesti na jednak broj znamenaka tako da se umanjitelju doda s lijeve strane potreban broj nula.

– Svaku “0” umanjitelja treba pretvoriti u “1” i svaku “1” pretvoriti u “0”. Tako dobiveni broj zove se komplement broja.

– Komplementu pribrojiti “1”. Rezultat se zove dvojni komplement.

Page 35: Zapis podataka

Oduzimanje binarnih brojeva

© L. Blagojević i D. Grundler, 2009 35

• Nakon što se umanjeniku pribroji dvojni komplement umanjitelja, treba odbaciti krajnje lijevu jedinicu da bi rezultat bio ispravan.

Page 36: Zapis podataka

Oduzimanje binarnih brojeva

© L. Blagojević i D. Grundler, 2009 36

Page 37: Zapis podataka

Množenje binarnih brojeva

© L. Blagojević i D. Grundler, 2009 37

• Množenje binarnih brojeva svodi se na zbrajanje. Pazite na potpisivanje znamenaka!

Page 38: Zapis podataka

Riječ

© L. Blagojević i D. Grundler, 2009 38

• Binarni broj koji odjednom može obrađivati središnja jedinica za obradu računala naziva se riječ.

• Kod suvremenih računala riječ je binarni broj s 32 ili 64 bitova (ovisno o ugrađenoj središnjoj jedinici za obradu).

Page 39: Zapis podataka

Poluriječ

© L. Blagojević i D. Grundler, 2009 39

• Binarni broj s pola manje bitova od riječi naziva se poluriječ.

• Kod 32 bitovnog računala poluriječ ima 16 bitova, a kod 64 bitovnog računala poluriječ ima 32 bitova.

Page 40: Zapis podataka

Dvostruka riječ

© L. Blagojević i D. Grundler, 2009 40

• Binarni broj s dvostruko više bitova od riječi naziva se dvostruka riječ.

• Kod 32 bitovnog računala dvostruka riječ ima 64 bitova, a kod 64 bitovnog računala dvostruka riječ ima 128 bitova.

Page 41: Zapis podataka

Prikaz brojeva u računalu

© L. Blagojević i D. Grundler, 2009 41

• Svaki podatak unutar računala treba predočiti binarnim brojevima, odnosno određenim rasporedom "0" i "1".

• Prirodni se brojevi mogu predočiti jednostavno nizom "0" i "1" koji predočuju binarni broj.

• Na taj je način moguće prikazati brojeve od 0 do (2n-1), gdje je n broj bitova na raspolaganju za prikaz prirodnog broja.

Page 42: Zapis podataka

Prikaz brojeva u računalu

© L. Blagojević i D. Grundler, 2009 42

• Cijeli se brojevi (engl. integer) u računalu obično predočuju pomoću dvojnog komplementa.

• Brojevi u rasponu od 1 do (2n -1 -1) su namijenjeni za prikaz pozitivnih brojeva i oni predočuju pozitivne brojeve u binarnom brojevnom sustavu.

• Brojevi u rasponu od 2n -1 do (2n – 1) su namijenjeni za prikaz negativnih brojeva.

Page 43: Zapis podataka

Prikaz brojeva u računalu

© L. Blagojević i D. Grundler, 2009 43

• Binarni broj koji ima sve znamenke jednake jedan predočuje negativni broj (2n – 1) - 2n -1 +1 = 2n - 2n -1 = 2n -1.

• U slučaju predodžbe broja s osam bitova broj (11111111)2 predočuje broj -28 -1 = -27 = -(128)10.

• Nula se prikazuje binarnim brojem čije su sve znamenke jednake nuli (00000000)2 .

Page 44: Zapis podataka

Prikaz brojeva u računalu

© L. Blagojević i D. Grundler, 2009 44

Page 45: Zapis podataka

Prikaz brojeva s pomičnim zarezom

© L. Blagojević i D. Grundler, 2009 45

• Zapis realnog broja s pomičnim zarezom sastoji se od tri dijela:

– mantise ili argumenta (u primjeru 1,2); mantisa se uobičajeno uvijek tvori tako da ima lijevo od odjelne točke samo jednu znamenku, i to različitu od ništice

– osnove (u primjeru 10)

– eksponenta (u primjeru 34); eksponent je uvijek cijeli broj.

1,2 ∙ 1034

Page 46: Zapis podataka

IEEE Standard 754

© L. Blagojević i D. Grundler, 2009 46

• Prema toj normi za prikaz brojeva jednostruke točnosti (engl. single precision) na raspolaganju su 32 bita

• Predznak broja zauzima jedan bit (trideset i prvi bit, krajnje lijevi). Ako je taj bit "0", broj je pozitivan, a ako je "1", broj je negativan.

• Eksponent zauzima sljedećih osam bitova (od bita 23 do 30). Od eksponenta se dogovorno oduzima uvijek broj (127)10 kako bi eksponent mogao biti pozitivan i negativan.

• Mantisa ima na raspolaganju 23 bita (od bita 0 do 22), a zapisuje se tako da je lijevo od decimalnog zareza samo jedna znamenka i da ta znamenka

mora biti različita od ništice (mantisa se sastoji od 24 bita - prvi bit je

uvijek jedan i podrazumijeva se).

Page 47: Zapis podataka

IEEE Standard 754

© L. Blagojević i D. Grundler, 2009 47

• 01000010001011000000000000000000

• Gledajući slijeva nadesno, prvi je bit "0" pa je riječ o pozitivnom broju.

• Sljedećih osam bitova su eksponent: (10000100)2 = (132)10

• Kako je prethodno navedeno, eksponent se dobije tako da se od tog broja oduzme broj (127)10, pa je eksponent jednak (132)10 – (127)10 = (5)10.

• Sljedeća 23 bita (01011000000000000000000) su mantisa. Kako je dogovoreno da se kao prvi broj mantise podrazumijeva "1", to je mantisa: 1,01011000000000000000000.

• Pretvori li se broj +1,01011000000000000000000 ∙ 2+5 u dekadski broj pravilima koja su prije navedena, dobije se broj (43)10.

Page 48: Zapis podataka

Kôd i kodiranje

© L. Blagojević i D. Grundler, 2009 48

• Postupak u kome se skupu znakova pridjeljuje neko značenje naziva se kodiranje.

• Normiranje koda je točno definiran način na koji se slova, brojevi i posebni znakovi pretvaraju u binarni oblik prihvatljiv računalu.

Page 49: Zapis podataka

ASCII kôd

© L. Blagojević i D. Grundler, 2009 49

• ASCII kôd (engl. American Standard Code For Information Interchange) jest kôd za prikaz znakova u računalu propisan američkom normom.

• Prema tom se kodu za prikaz svakog znaka rabi 7 bitova (sedmeroznamenkasti binarni broj).

• Binarnim se brojem sa 7 znamenaka može prikazati 128 (27 = 128) različitih stanja (znakova u računalu).

Page 50: Zapis podataka

ASCII kôd

© L. Blagojević i D. Grundler, 2009 50

Page 51: Zapis podataka

ASCII kôd

© L. Blagojević i D. Grundler, 2009 51

Page 52: Zapis podataka

Unicode

© L. Blagojević i D. Grundler, 2009 52

• Unicode je međunarodna norma čiji je krajnji cilj kodirati svaki znak svakog postojećeg ljudskog jezika (uključujući i one jezike koji se više ne rabe) jedinstvenim binarnim brojem.

• Unicode za kodiranje svakog znaka rabi 16-bitni binarni broj.

• Na taj je način moguće kodirati ukupno 216 = 65.536 znakova.

• Početnih 128 kodova Unicode koda je sukladno postojećem ASCII kodu.

Page 53: Zapis podataka

Pitanja za provjeru znanja

1. Što je položajni brojevni sustav?

2. O čemu ovisi težinska vrijednost pojedine znamenke u nizu?

3. Što je baza (osnova) brojevnog sustava?

4. Koje se načelo rabi da bi se broj iz bilo kojeg brojevnog sustava pretvorio u dekadsku protuvrijednost?

5. Koji se brojevni sustavi rabe za skraćeno zapisivanje binarnih brojeva?

© L. Blagojević i D. Grundler, 2009 53

Page 54: Zapis podataka

Pitanja za provjeru znanja

6. Kako se tvori komplement binarnog broja, a kako dvojni komplement?

7. S koliko se binarnih znamenaka može prikazati svaka heksadekadska znamenka, a s koliko oktalna?

8. Što je i čemu služi ASCII?

9. Što je i čemu služi Unicode?

10.Kolika je vrijednost prefiksa “K” u binarnom brojevnom sustavu?

© L. Blagojević i D. Grundler, 2009 54