220 likes | 631 Views
Fakultet za informatiku i menadžment Predmet: Osnovi računarske tehnike Predavač: Violeta Tomašević Asistent: Marko Šarac. Matematičke osnove računarske tehnike I I deo Predstavljanje označenih brojeva u binarnom sistemu Znak i apsolutna vrednost Komplement dvojke Pokretni zarez
E N D
Fakultet za informatiku i menadžment Predmet: Osnovi računarske tehnike Predavač: Violeta Tomašević Asistent: Marko Šarac Matematičke osnove računarske tehnike II deo • Predstavljanje označenih brojeva u binarnom sistemu • Znak i apsolutna vrednost • Komplement dvojke • Pokretni zarez • Sabiranje i oduzimanje označenih brojeva u komplementu dvojke • Opsezi neoznačenih i označenih brojeva
Označavanje brojeva • U decimalnom brojnom sistemu negativni brojevi se predstavljaju znakom “-” (pozitivni znakom “+” 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 “0” i “1”. Samim tim je znakove “-” i “+” potrebno na neki način predstaviti pomoću “0” i ”1”.
Označavanje binarnih brojeva • Postoje tri načina za predstavljanje označenih binarnih brojeva: • Pomoću znaka i apsolutne vrednosti • U komplementu dvojke • U pokretnom zarezu
Komplement dvojke (1) Primer 1 Predstaviti u komplementu dvojke broj -26(10). Korak 1: Polazi se od neoznačenog broja 26 koji treba pretvoriti u binarni broj: 26(10)=11010(2) Korak 2: Dodavanjem nule ispred binarnog broja dobija se označen pozitivan broj: +26(10)=011010(2) Korak 3: Invertovanjem cifara pozitivnog broja i sabiranjem sa 1 dobija se vrednost za -26 u komplementu dvojke. -26(10)=100101+1=100110(2)
Komplement dvojke (2) 57:2=28 (1) 28:2=14 (0) 14:2=7 (0) 7:2=3 (1) 3:2=1 (1) 1:2=0 (1) 57(10)=111001(2) +57(10)=0111001(2) -57(10)=1000110+1=1000111(2) Primer 2 Predstaviti u komplementu dvojke broj -57(10).
Komplement dvojke (3) 368:2=184 (0) 184:2=92 (0) 92:2=46 (0) 46:2=23 (0) 23:2=11 (1) 11:2=5 (1) 5:2=2 (1) 2:2=1 (0) 1:2=0 (1) Primer 3 Predstaviti u komplementu dvojke broj -368(10). 368(10)= 101110000(2) +368(10)=0101110000(2) -368(10)=1010001111+1 -368(10)=1010010000(2)
Komplement dvojke (4) 546:2=273 (0) 273:2=136 (1) 136:2=68 (0) 68:2=34 (0) 34:2=17 (0) 17:2=8 (1) 8:2=4 (0) 4:2=2 (0) 2:2=1 (0) 1:2=0 (1) Primer 4 Predstaviti u komplementu dvojke broj -546(10). 546(10)= 1000100010(2) +546(10)=01000100010(2) -546(10)=10111011101+1 -546(10)=10111011110(2)
Komplement dvojke (5) a.10001010100(2) b.101110101(2) c.0100100(2) d.1111110100(2) Primer 5 Izračunati decimalnu vrednost označenih binarnih brojeva datih u komplementu dvojke.
Komplement dvojke (6) 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) d1.1111110100(2)=-512+256+128+64+32+16+4=12(10) d2.1111110100(2)=10100(2)=-16+4=-12(10)
Opsezi brojeva (1) a. 34 b. 68 c. 320 d. 127 Primer 6 Koliko je cifara potrebno da bi se zapisali navedeni neoznačeni brojevi u binarnom formatu?
Opsezi brojeva (2) 2n ≥ 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 ≥ 35 n=6 b. X=68 2n ≥ 69 n=7 c. X=320 2n ≥ 321 n=9 d. X=127 2n ≥ 128 n=7
Opsezi brojeva (3) a. 67 b. -34 c. 63 d. -88 Primer 7 Koliko je cifara potrebno da bi se zapisali navedeni označeni brojevi u binarnom formatu u komplementu dvojke?
Opsezi brojeva (4) 20=1, 21=2, 22=4, 23=8, 24=16, 25=32, 26=64, 27=128, 28=256 a.X=67 2n-1≥ 68 n-1=7 n=8 b.X=-34 2n-1 ≥ 34 n-1=6 n=7 c. X=63 2n-1 ≥ 64 n-1=6 n=7 d.X=-88 2n-1 ≥ 88 n-1=7 n=8
Sabiranje brojeva zapisanih u komplementu dvojke (1) a. 103, -98 b. 87, -27 c.24, -72 Primer 8 Navedene decimalne brojeve konvertovati u binarne brojeve u komplementu dvojke, a zatim ih sabrati.
Sabiranje brojeva zapisanih u komplementu dvojke (2) 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 a.
Sabiranje brojeva zapisanih u komplementu dvojke (3) 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 b.
Sabiranje brojeva zapisanih u komplementu dvojke (4) 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 c.
Pokretni zarez (1) a. 1100000011010000000000000000000(2) b. 00111100100000000000000000000000(2) c. BF1A0000(16) Primer 9 Izračunati decimalnu vrednost navedenih brojeva zapisanih u pokretnom zarezu.
Pokretni zarez (2) a.1 10000001 11010000000000000000000 Znak: cifra znaka je 1 → broj je negativan Eksponent: 128+1-127 = 2 Mantisa: 20+2-1+2-2+2-4 = 1+1/2+1/4+1/16 = 29/16 Vrednost broja: -29/16·22 = -29/16·4 = -29/4 = -7.25
Pokretni zarez (3) b.0 0111100100000000000000000000000 Znak: cifra znaka je 0→broj je pozitivan Eksponent: 64+32+16+8+1-127 = -6 Mantisa: 20 = 1 Vrednost broja: +1·2-6 = 1/64 = 0.015625
Pokretni zarez (4) c.BF1A0000(16)= 1011 1111 0001 1010 0000 0000 0000 0000(2)= 1 01111110 00110100000000000000000= Znak: cifra znaka je 1→broj je negativan Eksponent: 64+32+16+8+4+2-127 = -1 Mantisa: 20+2-3+2-4+2-6 = 1+1/8+1/16+1/64 = 77/64 Vrednost broja: -77/64·2-1 = -77/128 = -0.6015625