binarna aritmetika

61
Binarna aritmetika

Upload: chillhijo

Post on 27-Nov-2015

203 views

Category:

Documents


10 download

DESCRIPTION

Primjeri zadataka iz binarke aritmetike

TRANSCRIPT

Page 1: Binarna aritmetika

Binarna aritmetika

Binarne znamenke 01

Binarno ZBRAJANJE

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 2

1 + 1 = 10

2 (10) =10 (2)

10011(2) + 1011(2)

0 1 1 1 1

1 1 0 1 +

1 1 0 0 1

1 1

Koliko je

10011(2) + 1011(2) =11110(2)

1 + 1 + 1 = 11

Binarno

Binarne znamenke 01

0 0 = 0

0 1 = 0

1 0 = 0

1 1 = 1

Binarno MNOŽENJE

1001(2)middot101(2)

Koliko je

1001(2)middot101(2) =101101(2)

1 0 1 1 0 1

1

0 1

middot

1

0

0 1

+ 0

1

0

0 1

1110111

Binarno ODUZIMANJE

Oduzimanje svodimo na zbrajanje a-b = a+(-b)

U binarnom brojevnom sustavu negativni brojevi predočavaju se

dvojnim komplementom

1110101

+ 1110111

11101100

Dvojni komplement pribrojimo umanjeniku te

odbacimo krajnju lijevu jedinicu

- dobili smo dvojni komplement

+ 1 Komplementu pribrojimo 1

1110110 Odredimo komplement umanjitelja

(umjesto 0 pišemo 1 i obrnuto)

0001001 1110101 Umanjitelju s lijeve strane dopišemo nule (ako je

potrebno) tako da umanjenik i umanjitelj imaju

jednak broj znamenki

1110101(2) -1001(2) =1101100(2)

Postupak Koliko je 1110101(2) -1001(2)

Binarno DIJELJENJE

Uzastopno oduzimanje

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 2: Binarna aritmetika

Binarne znamenke 01

Binarno ZBRAJANJE

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 2

1 + 1 = 10

2 (10) =10 (2)

10011(2) + 1011(2)

0 1 1 1 1

1 1 0 1 +

1 1 0 0 1

1 1

Koliko je

10011(2) + 1011(2) =11110(2)

1 + 1 + 1 = 11

Binarno

Binarne znamenke 01

0 0 = 0

0 1 = 0

1 0 = 0

1 1 = 1

Binarno MNOŽENJE

1001(2)middot101(2)

Koliko je

1001(2)middot101(2) =101101(2)

1 0 1 1 0 1

1

0 1

middot

1

0

0 1

+ 0

1

0

0 1

1110111

Binarno ODUZIMANJE

Oduzimanje svodimo na zbrajanje a-b = a+(-b)

U binarnom brojevnom sustavu negativni brojevi predočavaju se

dvojnim komplementom

1110101

+ 1110111

11101100

Dvojni komplement pribrojimo umanjeniku te

odbacimo krajnju lijevu jedinicu

- dobili smo dvojni komplement

+ 1 Komplementu pribrojimo 1

1110110 Odredimo komplement umanjitelja

(umjesto 0 pišemo 1 i obrnuto)

0001001 1110101 Umanjitelju s lijeve strane dopišemo nule (ako je

potrebno) tako da umanjenik i umanjitelj imaju

jednak broj znamenki

1110101(2) -1001(2) =1101100(2)

Postupak Koliko je 1110101(2) -1001(2)

Binarno DIJELJENJE

Uzastopno oduzimanje

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 3: Binarna aritmetika

10011(2) + 1011(2)

0 1 1 1 1

1 1 0 1 +

1 1 0 0 1

1 1

Koliko je

10011(2) + 1011(2) =11110(2)

1 + 1 + 1 = 11

Binarno

Binarne znamenke 01

0 0 = 0

0 1 = 0

1 0 = 0

1 1 = 1

Binarno MNOŽENJE

1001(2)middot101(2)

Koliko je

1001(2)middot101(2) =101101(2)

1 0 1 1 0 1

1

0 1

middot

1

0

0 1

+ 0

1

0

0 1

1110111

Binarno ODUZIMANJE

Oduzimanje svodimo na zbrajanje a-b = a+(-b)

U binarnom brojevnom sustavu negativni brojevi predočavaju se

dvojnim komplementom

1110101

+ 1110111

11101100

Dvojni komplement pribrojimo umanjeniku te

odbacimo krajnju lijevu jedinicu

- dobili smo dvojni komplement

+ 1 Komplementu pribrojimo 1

1110110 Odredimo komplement umanjitelja

(umjesto 0 pišemo 1 i obrnuto)

0001001 1110101 Umanjitelju s lijeve strane dopišemo nule (ako je

potrebno) tako da umanjenik i umanjitelj imaju

jednak broj znamenki

1110101(2) -1001(2) =1101100(2)

Postupak Koliko je 1110101(2) -1001(2)

Binarno DIJELJENJE

Uzastopno oduzimanje

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 4: Binarna aritmetika

Binarne znamenke 01

0 0 = 0

0 1 = 0

1 0 = 0

1 1 = 1

Binarno MNOŽENJE

1001(2)middot101(2)

Koliko je

1001(2)middot101(2) =101101(2)

1 0 1 1 0 1

1

0 1

middot

1

0

0 1

+ 0

1

0

0 1

1110111

Binarno ODUZIMANJE

Oduzimanje svodimo na zbrajanje a-b = a+(-b)

U binarnom brojevnom sustavu negativni brojevi predočavaju se

dvojnim komplementom

1110101

+ 1110111

11101100

Dvojni komplement pribrojimo umanjeniku te

odbacimo krajnju lijevu jedinicu

- dobili smo dvojni komplement

+ 1 Komplementu pribrojimo 1

1110110 Odredimo komplement umanjitelja

(umjesto 0 pišemo 1 i obrnuto)

0001001 1110101 Umanjitelju s lijeve strane dopišemo nule (ako je

potrebno) tako da umanjenik i umanjitelj imaju

jednak broj znamenki

1110101(2) -1001(2) =1101100(2)

Postupak Koliko je 1110101(2) -1001(2)

Binarno DIJELJENJE

Uzastopno oduzimanje

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 5: Binarna aritmetika

1001(2)middot101(2)

Koliko je

1001(2)middot101(2) =101101(2)

1 0 1 1 0 1

1

0 1

middot

1

0

0 1

+ 0

1

0

0 1

1110111

Binarno ODUZIMANJE

Oduzimanje svodimo na zbrajanje a-b = a+(-b)

U binarnom brojevnom sustavu negativni brojevi predočavaju se

dvojnim komplementom

1110101

+ 1110111

11101100

Dvojni komplement pribrojimo umanjeniku te

odbacimo krajnju lijevu jedinicu

- dobili smo dvojni komplement

+ 1 Komplementu pribrojimo 1

1110110 Odredimo komplement umanjitelja

(umjesto 0 pišemo 1 i obrnuto)

0001001 1110101 Umanjitelju s lijeve strane dopišemo nule (ako je

potrebno) tako da umanjenik i umanjitelj imaju

jednak broj znamenki

1110101(2) -1001(2) =1101100(2)

Postupak Koliko je 1110101(2) -1001(2)

Binarno DIJELJENJE

Uzastopno oduzimanje

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 6: Binarna aritmetika

1110111

Binarno ODUZIMANJE

Oduzimanje svodimo na zbrajanje a-b = a+(-b)

U binarnom brojevnom sustavu negativni brojevi predočavaju se

dvojnim komplementom

1110101

+ 1110111

11101100

Dvojni komplement pribrojimo umanjeniku te

odbacimo krajnju lijevu jedinicu

- dobili smo dvojni komplement

+ 1 Komplementu pribrojimo 1

1110110 Odredimo komplement umanjitelja

(umjesto 0 pišemo 1 i obrnuto)

0001001 1110101 Umanjitelju s lijeve strane dopišemo nule (ako je

potrebno) tako da umanjenik i umanjitelj imaju

jednak broj znamenki

1110101(2) -1001(2) =1101100(2)

Postupak Koliko je 1110101(2) -1001(2)

Binarno DIJELJENJE

Uzastopno oduzimanje

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 7: Binarna aritmetika

Binarno DIJELJENJE

Uzastopno oduzimanje

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 8: Binarna aritmetika

ZADACI

Zbroji oduzmi i pomnoži brojeve

1000111(2) i 1011(2)

PROVJERI DOBIVENE REZULTATE DEKADSKI

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 9: Binarna aritmetika

Binarno sabiranje Kao primjer treba

sabrati brojeve

110112 i 10112

9

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 10: Binarna aritmetika

Binarno oduzimanje

Oduzimanje brojeva može se svesti na

sabiranje

Da bi to bilo moguće umanjitelj treba pretvoriti u

negativan broj

Na primjer 5 ndash 3 = 5 + (ndash3)

Negativni se brojevi u binarnom brojnom

sistemu predočavaju pomoću dvojnog

komplementa

10

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 11: Binarna aritmetika

Dvojni komplement a) umanjenik i umanjitelj svesti na jednak broj

cifara (umanjitelju dodati s lijeve strane

potreban broj nula)

b) svaku ldquo0rdquo umanjitelja pretvoriti u ldquo1rdquo i svaku ldquo1rdquo

pretvoriti u ldquo0rdquo tako dobiveni broj zove se

komplement broja

c) komplementu

pribrojiti ldquo1rdquo

nastaje dvojni

komplement

11

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 12: Binarna aritmetika

Binarno oduzimanje

Nakon što se umanjeniku pribroji dvojni

komplement umanjitelja treba odbaciti krajnje

lijevu jedinicu da bi rezultat bio ispravan

12

rezultat 100002

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 13: Binarna aritmetika

Binarno oduzimanje

Oduzimanje možemo vršiti i korištenjem

tabele oduzimanja binarnih brojeva

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 i 1 dalje (taj 1 oduzimamo u

sljedećoj koloni nalijevo)

13

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 14: Binarna aritmetika

Binarno oduzimanje

Primjer Oduzmimo dva binarna broja

14

1 1 0 1 0 0 1

- 1 0 0 1 1

Prijenos 1 1 1

1 0 1 0 1 1 0

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 15: Binarna aritmetika

Binarno množenje

I množenje binarnih brojeva se svodi na

sabiranje

Treba paziti na potpisivanje cifara

15

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 16: Binarna aritmetika

Binarno dijeljenje

Naročito se efikasno u binarnom brojnom

sistemu izvodi operacija dijeljenja

Najveći problem pri dijeljenju decimalnih brojeva

je određivanje koliko puta djelilac ide u neki od

dijelova djeljenika

U binarnom sistemu vrijedi ista logika računanja

ali kako svaka cifra količnika može biti samo 0 ili

1 nije potrebno određivati koliko puta djelilac

ide u traženi dio (ili ide kada je cifra 1 ili ne

ide kada je cifra 0)

16

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 17: Binarna aritmetika

Binarno dijeljenje

PRIMJER Binarno podijeliti brojeve date

u decimalnom sistemu 12 i 4

17

1 1 0 0 1 0 0 = 1 1

1 0 0

1 0 0

1 0 0

0 0 0

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 18: Binarna aritmetika

Predstavljanje označenih

brojeva u binarnom sistemu

U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom ldquo-rdquo (pozitivni znakom ldquo+rdquo ili se znak izostavlja) napisanim ispred cifara koje definišu apsolutnu vrednost broja

U binarnom brojnom sistemu je ovakav način predstavljanja označenih brojeva nemoguć jer računari mogu da prepoznaju samo dva znaka a to su ldquo0rdquo i ldquo1rdquo Samim tim je znakove ldquo-rdquo i ldquo+rdquo potrebno na neki način predstaviti pomoću ldquo0rdquo i rdquo1rdquo

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 19: Binarna aritmetika

Načini za predstavljanje

označenih binarnih brojeva

Postoje tri načina za zapis označenih

binarnih brojeva

- Pomoću znaka i apsolutne vrednosti

- U komplementu dvojke

- Pomoću uvećanja

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 20: Binarna aritmetika

171 Označeni binarni brojevi

zapisani pomoću znaka i apsolutne

vrednosti

Jedan od načina za zapis označenih brojeva u binarnom brojnom sistemu je pomoću znaka i apsolutne vrednosti

U ovom zapisu apsolutnoj vrednosti broja se na mestu cifre najveće težine dodaje jedna cifra i to

- nula ako je broj pozitivan

- ili jedan ako je broj negativan

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 21: Binarna aritmetika

Primer 1

7(10) = 111(2) Neoznačen binarni broj

+7(10) = 0111(2) Označen pozitivan binarni broj

-7(10) = 1111(2) Označen negativan binarni broj

12(10) = 1100(2) Neoznačen binarni broj

+12(10) = 01100(2) Označen pozitivan binarni broj

-12(10) = 11100(2) Označen negativan binarni broj

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 22: Binarna aritmetika

Nad binarnim brojevima predstavljenim

znakom i apsolutnom vrednošću teško

se vrše aritmetičke operacije (sabiranje

oduzimanje množenje i deljenje)

Jedan od najčešće korišćenih načina

predstavljanja negativnih binarnih

brojeva kojim se rešava gore navedeni

problem jeste komplement dvojke

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 23: Binarna aritmetika

I kod brojeva zapisanih u komplementu dvojke negativni brojevi počinju cifrom jedan a pozitivni cifrom nula

Pozitivni označeni broj se dobija jednostavnim dodavanjem nule ispred neoznačenog binarnog broja

Negativni označeni broj se dobijaju tako što se neoznačenom binarnom broju doda nula na mesto najveće težine potom sve cifre invertuju (jedinice se zamene nulama a nule jedinicama) i tako dobijeni broj sabere sa 1

Pozitivnim brojevima možemo dodavati vodeće nule a negativnim vodeće jedinice a da se vrednost broja ne promeni

172 Označeni binarni brojevi

predstavljeni pomoću komplementa

dvojke

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 24: Binarna aritmetika

Primer 2 Izračunavanje

komplementa dvojke

Predstaviti broj -7(10) u komplementu

dvojke

)2()10(

)2()10(

)2()10(

10017

1001 se dobija1 sa sabere se broj dobijeni

1000 se dobija cifre sve seinvertuju

01117

1117

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 25: Binarna aritmetika

Primer 3 Brojevi

zapisani u komplementu dvojke

62816

2021202121110106

6282021202110106

6242021212001106

51282121202110115

5142120212001015

01234)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

0123)2()10(

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 26: Binarna aritmetika

18 Oduzimanje i

sabiranje označenih brojeva

Brojevi koji učestvuju u računskim

operacijama moraju imati unapred odeređen

broj cifara kako bi se znalo koja cifra

predstavlja znak a koje formiraju vrednost

broja

Treba voditi računa da prilikom obavljanja

aritmetičkih operacija ne dodje do

prekoračenja vrednosti broja koja se može

predstaviti usvojenim brojem cifara inače bi

došlo do greške prilikom izračunavanja

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 27: Binarna aritmetika

Sabiranje i oduzimanje se obavlja po

pravilima binarnog sabiranja i

oduzimanja ne vodeći računa o znaku

pod uslovom da se rezultat nalazi

unutar opsega brojeva koji se mogu

predstaviti usvojenim brojem cifara

Na primer sa 4 binarne cifre moguće je

predstaviti brojeve u opsegu od -8 do

+7

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 28: Binarna aritmetika

Primer 4 Sabiranje brojeva

zapisanih u komplementu dvojke

3101113010116

1110711111

0110611015

0011410105

0101611003

0100201002

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 29: Binarna aritmetika

Primer 5 Oduzimanje brojeva

zapisanih u komplementu dvojke

00114

110010113

100110017

0100)1(2

011101002

001000104

)(BABA

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 30: Binarna aritmetika

19 Opseg brojeva koji se može

zapisati sa odredjenim brojem

cifara

Opseg neoznačenih brojeva zapisanih

sa n cifara

2551025508

15101504

1210120 n

xxn

xxn

xx n

gde je n broj cifara upotrebljenih za zapis binarnog broja

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 31: Binarna aritmetika

Opseg označenih brojeva zapisanih u

komplementu dvojke sa n cifara

1271011281271288

71018784

121012 0 za 2

0 za 12

111-n

1-n

xxn

xxn

xxx

xx

nn

gde je n broj cifara upotrebljenih za zapis binarnog broja

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 32: Binarna aritmetika

110 Informacije predstavljene

binarnim brojnim sistemom

Količina informacije od jedne binarne cifre

naziva se bit (1b)

Količina informacija od 8 bita naziva se bajt

(1B)

1024 bajta čine 1 kilobajt (1KB)

1024 kilobajta čini 1 megabajt (1MB)

odnosno 1024 x 1024 = 1048576 bajta

1024 megabajta čini 1 gigabajt (1GB)

odnosno 1024 x 1024 x 1024 =

1073741824 bajta

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 33: Binarna aritmetika

Neki od tipova podataka koji se

koriste u višim programskim

jezicima

1210-38 le |X| le

3410+38

4 Floating Point FLOAT

Brojevima 0 do 255 se

koduju karakteri ASCII

tabele

1 Character CHAR

-2147483648 do

2147483647

4 Long Integer LONG

0 do 65535 2 Unsigned Integer UNSIGNED INT

-32768 do 32767 2 Integer INT

Opseg koji se

može

predstaviti

Broj

bajtova

Pun naziv Oznaka

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 34: Binarna aritmetika

ASCII (American Standard Code

for Information Interchange)

tabela

ASCII tabela daje jednoznačnu vezu

između 8-bitnog binarnog broja i

karaktera koji je kodovan tim brojem

Kada je potrebno zapamtiti neki

karakter u memoriji računara tada se u

stvari pamti 8-bitni binarni broj koji

odgovara tom karakteru

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 35: Binarna aritmetika

ASCII tabela za prvih 128

vrednosti

DEL 7F o 6F _ 5F O 4F 3F 2F US 1F SI F

~ 7E n 6E ^ 5E N 4E gt 3E 2E RS 1E SO E

7D m 6D ] 5D M 4D = 3D - 2D GS 1D CR D

| 7C l 6C 5C L 4C lt 3C 2C FS 1C FF C

7B k 6B [ 5B K 4B 3B + 2B ESC 1B VT B

z 7A j 6A Z 5A J 4A 3A 2A SUB 1A LF A

y 79 i 69 Y 59 I 49 9 39 ) 29 EM 19 TAB 9

x 78 h 68 X 58 H 48 8 38 ( 28 CAN 18 BS 8

w 77 g 67 W 57 G 47 7 37 rsquo 27 ETB 17 BEL 7

v 76 f 66 V 56 F 46 6 36 amp 26 SYN 16 ACK 6

u 75 e 65 U 55 E 45 5 35 25 NAK 15 ENQ 5

t 74 d 64 T 54 D 44 4 34 $ 24 DC4 14 EOT 4

s 73 c 63 S 53 C 43 3 33 23 DC3 13 ETX 3

r 72 b 62 R 52 B 42 2 32 rdquo 22 DC2 12 STX 2

q 71 a 61 Q 51 A 41 1 31 21 DC1 11 SOH 1

p 70 ` 60 P 50 40 0 30 20 DLE 10 NUL 0

ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex ASCII Hex

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 36: Binarna aritmetika

111 Zapis brojeva sa pokretnim

zarezom (floating point )

Tipovi INT UNSIGNED INT i LONG se koriste za zapisivanje označenih i neoznačenih celih brojeva Za razliku od njih tip FLOAT se koristi za zapis označenih realnih brojeva (brojeva koji imaju decimalnu tačku)

Zapis realnog broja u pokretnom zarezu se sastoji od sledeće 3 komponente

- znaka

- eksponenta i

- mantise (frakcije)

Znak Eksponent Mantisa

31 0

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 37: Binarna aritmetika

Vrednost broja je u opštem slučaju jednaka

(ZNAK)MANTISA2EKSPONENT

Vremenom su se razvili brojni standardi koji definišu koliko se bita koristi za koju komponentu i u kom formatu i kom obliku su komponente zapisane Poslednji i opšte prihvaćeni standard za zapis brojeva u pokretnom zarezu je standard IEEE 754

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 38: Binarna aritmetika

Standard IEEE 754 za zapis

brojeva sa pokretnim zarezom

Po standardu IEEE 754 za zapis broja u pokretnom zarezu koristi se

- 1 bit za znak

- 8 bita za eksponent

- 23 bita za mantisu

Broj je pozitivan ako binarna cifra koja predstavlja znak ima vrednost 0 odnosno negativan ako cifra znaka ima vrednost 1

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 39: Binarna aritmetika

Eksponent

Eksponent se po IEEE 754 predstavlja sa 8 bita i to kao takozvani uvećani eksponent Uvećani eksponent se ovde koristi da bi vrednost eksponenta mogla da bude i negativna Po standardu IEEE 754 eksponent se uvećava za 127 Da bi se dobila prava vrednost eksponenta potrebno je oduzeti vrednost za koju je on uvećan

Kako se sa 8 bita mogu zapisati decimalni brojevi od 0 do 255 umanjenjem za 127 vrednost eksponenta može da bude u opsegu od -127 do +128

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 40: Binarna aritmetika

Mantisa

Mantisa se po IEEE 754 predstavlja sa 23 bita

Neka su cifre mantise obeležene sa m1 do m23

počevši sa leva na desno Tada se decimalna

vrednost mantise dobija na sledeći način

MANTISA(10)=20+m12-1+m22-2+m32-3++m232-23

Mantisa može imati vrednost samo između 1 i

2

Usvojeno je da se decimalni broj nula po

standardu IEEE 754 zapisuje kao sve nule (32

nule) ili kao 1 i sve nule (1 jedinica i 31 nula)

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 41: Binarna aritmetika

Primer 6 odrediti decimalnu

vrednost broja zapisanog u

pokretnom zarezu

01000001011100000000000000000000

Rešenje

0 10000010 11100000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 10000010(2) = 128+2-127 = 3

Mantisa 20+2-1+2-2+2-3 = 1+12+14+18 = 158

Vrednost broja +158 23 = +158 8 = +15

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 42: Binarna aritmetika

Vežbe

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 43: Binarna aritmetika

Označeni binarni brojevi

Predstaviti u komplementu dvojke

sledeće brojeve

a -26

b -57

c -368

d -546

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 44: Binarna aritmetika

a -26

Polazi se od neoznačenog broja 26 koji treba pretvoriti u

binarni broj

26(10)=11010(2)

Dodavanjem nule ispred broja dobija se oznečen pozitivan

broj

+26(10)=011010(2)

Invertovanjem cifara pozitivnog broja i sabiranjem sa 1

dobija se vrednost za -26 u komplementu dvojke

-26(10)=100101+1=100110(2)

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 45: Binarna aritmetika

b -57

572=28 (1)

282=14 (0)

142=7 (0)

72=3 (1)

32=1 (1)

12=0 (1)

57(10)= 111001(2)

+57(10)=0111001(2)

-57(10)=1000110+1=1000111(2)

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 46: Binarna aritmetika

c -368

3682=184 (0)

1842=92 (0)

922=46 (0)

462=23 (0)

232=11 (1)

112=5 (1)

52=2 (1)

22=1 (0)

12=0 (1)

368(10)= 101110000(2)

+368(10)=0101110000(2)

-368(10)=1010001111+1=1010010000(2)

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 47: Binarna aritmetika

d -546

5462=273 (0)

2732=136 (1)

1362=68 (0)

682=34 (0)

342=17 (0)

172=8 (1)

82=4 (0)

42=2 (0)

22=1 (0)

12=0 (1)

546(10)= 1000100010(2)

+546(10)=01000100010(2)

-546(10)=10111011101+1=10111011110(2)

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 48: Binarna aritmetika

Izračunati decimalnu vrednost

označenih binarnih brojeva

predstavljenih u komlementu dvojke

a 10001010100(2)

b 101110101(2)

c 0100100(2)

d 1111110100(2)

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 49: Binarna aritmetika

a 10001010100(2)=

=-1024+64+16+4=-940(10)

b 101110101(2)=

=-256+64+32+16+4+1=-139(10)

c 0100100(2)=32+4=+36(10)

d 1111110100(2)=

=-512+256+128+64+32+16+4=-12(10)

d2 1111110100(2)=10100(2)=

=-16+4=-12(10)

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 50: Binarna aritmetika

Koliko cifara je potrebno da bi se

zapisali sledeći neoznačeni brojevi u

binarnom formatu

a 34

b 68

c 320

d 127

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 51: Binarna aritmetika

2n ge x + 1

20=1 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256 29=512

a X=34 2n ge 35 n=6

b X=68 2n ge 69 n=7

c X=320 2n ge 321 n=9

d X=127 2n ge 128 n=7

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 52: Binarna aritmetika

Koliko cifara je potrebno da bi se

zapisali sledeći označeni brojevi u

binarnom formatu u komplementu

dvojke

a 67

b -34

c 63

d -88

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 53: Binarna aritmetika

0 2

0 12

1-n

1-n

xx

xx

a X=67 2n-1 ge 68 n-1=7 n=8

b X=-34 2n-1 ge 34 n-1=6

n=7

c X=63 2n-1 ge 64 n-1=6 n=7

d X=-88 2n-1 ge 88 n-1=7

n=8

20=1 21=2 22=4 23=8 24=16 25=32 26=64

27=128 28=256

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 54: Binarna aritmetika

Sledeće decimalne brojeve pretvoriti u

binarne brojeve u komplementu dvojke

a potom ih sabrati

a 103 -98

b 87 -27

c 24 -72

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 55: Binarna aritmetika

a

103(10) = 1100111(2) +103(10) = 01100111(2) (n=8)

98(10) = 1100010(2) +98(10) = 01100010(2)

-98(10) = 10011101 + 1 = 10011110(2) (n=8)

103 + (-98) = +5 (n=4) usvaja se n=8

+103 01100111

+ -98 +10011110

+5 (1)00000101

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 56: Binarna aritmetika

b

87(10) = 1010111(2) +87(10) = 01010111(2) (n=8)

27(10) = 11011 (2) +27(10) = 011011(2)

-27(10) = 100100 + 1 = 100101(2) (n=6)

87 + (-27) = +60 (n=7) usvaja se n=8

+87 01010111

+-27 +11100101

+60 (1)00111100

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 57: Binarna aritmetika

c

24(10) = 11000(2) +24(10) = 011000(2) (n=6)

72(10) = 1001000 (2) +72(10) = 01001000(2)

-72(10) = 10110111 + 1 = 10111000(2) (n=8)

24 + (-72) = -48 (n=7) usvaja se n=8

+24 00011000

+-72 +10111000

-48 11010000

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 58: Binarna aritmetika

Kolika je decimalna vrednost sledećih brojeva

zapisanih u pokretnom zarezu

a 1100000011010000000000000000000(2)

b 00111100100000000000000000000000(2)

c BF1A0000(16)

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 59: Binarna aritmetika

a 1 10000001 11010000000000000000000

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 128+1-127 = 2

Mantisa 20+2-1+2-2+2-4 = 1+12+14+116 = 2916

Vrednost broja -291622 = -29164 = -294 = -725

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 60: Binarna aritmetika

b 0 01111001

00000000000000000000000

Znak cifra znaka je 0 rarr broj je pozitivan

Eksponent 64+32+16+8+1-127 = -6

Mantisa 20 = 1

Vrednost broja +12-6 = 164 = 0015625

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625

Page 61: Binarna aritmetika

c BF1A0000(16)=

1011 1111 0001 1010 0000 0000 0000 0000(2)=

1 01111110 00110100000000000000000=

Znak cifra znaka je 1 rarr broj je negativan

Eksponent 64+32+16+8+4+2-127 = -1

Mantisa 20+2-3+2-4+2-6 = 1+18+116+164 = 7764

Vrednost broja -77642-1 = -77128 = -06015625