Osnove Racunarske Tehnike

Download as pdf or txt
Download as pdf or txt
You are on page 1of 151

Dragana Prokin

Vera V. Petrovi
Milan Mijalkovi

ZBIRKA ZADATAKA IZ
OSNOVA RAUNARSKE TEHNIKE

Visoka kola elektrotehnike i raunarstva strukovnih studija


Beograd, 2013.

Autori:

dr Dragana Prokin
dr Vera V. Petrovi
dr Milan Mijalkovi

Recezenti:

dr Slobodan Obradovi
dr Zoran Banjac

Izdava:

Visoka kola elektrotehnike i raunarstva strukovnih studija, Beograd


Vojvode Stepe 283

Tehnika obrada:

Gabrijela Dimi
Divna Mii

Korice:

Kristijan Kuk
Gabrijela Dimi

Tira:

50

tampa:

kolski servis Gaji

CIP 

  


 

 
,  
004 (075.8)(076)
, 


, 1963Zbirka zadataka iz osnova raunarske
tehnike / Dragana Prokin, Vera V.Petrovi,
Milan Mijalkovi. 2. neizmenjeno izd.
Beograd: Visoka kola elektrotehnike i
raunarstva strukovnih studija, 2013 (Beograd
: kolski servis Gaji). 148 str.: graf.
prikazi; 24 cm
Tira 50. Bibliografija: str.148.
ISBN 978-86-7982-096-9
1.
,  ., 1965 [] 2.


, 
, 1957-[]
) ! "

COBISS.SR ID 201821964

1. BROJNI SISTEMI I KONVERZIJA BROJEVA IZ JEDNOG


BROJNOG SISTEMA U DRUGI

Brojni sistemi:
x predstavljaju nain prikazivanja bilo kog broja pomou niza simbola koji se nazivaju
cifre brojnog sistema.
x skup pravila po kojima se realizuju osnovne operacije nad brojevima.
U pozicionom (teinskom) brojnom sistemu vrednost cifre zavisi od pozicije koju cifra ima u
zapisu brojne vrednosti.
Za bilo koji broj x u teinskom brojnom sistemu vai zapis:
R
R-1
1
0
-1
-P
x = aRS + aR-1S + ... + a1S + a0S + a-1S + ...+ a -PS
S = osnova (baza) brojnog sistema
Si = teina cifre u brojnom sistemu
i = pozicija cifre ( R, R-1, , 1, 0, -1,, -P )
aR , aR-1 , ..., a1 , a0 , a-1 , ..., a-P su cifre broja koje pripadaju skupu { 0, 1, , S-1}
Saeti oblik prikazivanja broja x:
x = aR aR-1 ... a1 a0, a-1 ... a-P.
Decimalni brojni sistem (DEC) je teinski.
Svaki broj x iz DEC brojnog sistema moe da se predstavi kao:
R
R-1
1
0
-1
-P
x = aR10 + aR-110 + ... + a110 + a010 + a-110 + ... + a-P10
S = 10 osnova (baza) brojnog sistema
aR , aR-1 , ..., a1 , a0 , a-1 , ..., a-P su cifre broja koje pripadaju skupu { 0, 1, , 9 }
Konverzija brojeva iz drugih brojnih sistema u decimalan brojni sistem (DEC) obavlja se
sumiranjem elementarnih proizvoda cifara u zapisu broja i njihovih teinskih koeficijenata:
x Konverzija iz HEX u DEC brojni sistem
R
R-1
1
0
-1
-P
x(10) = aR16 + aR-116 + ... + a116 + a016 + a-116 + ... + a-P16
S = 16 osnova (baza) brojnog sistema
aR , aR-1 , ..., a1 , a0 , a-1 , ..., a-P su cifre broja koje pripadaju skupu {0,..., 9, A, B, C, D, E, F }
x Konverzija iz OCT u DEC brojni sistem
R
R-1
1
0
-1
-P
x(10) = aR8 + aR-18 + ... + a18 + a08 + a-18 + ... + a-P8
S = 8 osnova (baza) brojnog sistema
aR , aR-1 , ..., a1 , a0 , a-1 , ..., a-P su cifre broja koje pripadaju skupu { 0, 1, , 7 }
x Konverzija iz BIN u DEC brojni sistem
R
R-1
1
0
-1
-P
x(10) = aR2 + aR-12 + ... + a12 + a02 + a-12 + ... + a-P2
S = 2 osnova (baza) brojnog sistema
aR , aR-1 , ..., a1 , a0 , a-1 , ..., a-P su cifre broja koje pripadaju skupu { 0, 1 }

Primer 1.

Izvriti konverziju heksadecimalnog broja x(16) = 2E3A(16) u decimalni brojni sistem,


x(16)  x(10).

Reenje:
x(16) = 2E3A(16)
x(10) = 2*163 + 14*162 + 3*161 + 10*160 = 11834(10)
2E3A(16) 11834(10)
Primer 2.

Izvriti konverziju oktalnog broja x(8) = 3217(8) u decimalni brojni sistem, x(8)  x(10).

Reenje:
x(8) = 321(8)
x(10) = 3*83 + 2*82 + 1*81 = 1672(10)
321(8) 1672(10)
Primer 3.

Izvriti konverziju 8-bitnog binarnog broja x(2) = 10111011(2) u decimalni brojni


sistem, x(2)  x(10).

Reenje:
x(2) = 10111011(2)
x(10) = 1*27 + 0*26 +1*25+ 1*24 + 1*23 + 0*22 + 1*21 + 1*20 = 187(10)
10111011(2) 187(10)

Konverzija brojeva iz DEC brojnog sistema u brojni sistem sa osnovom S obavlja se:
x metodom sukcesivnih deljenja celobrojnog dela sa osnovom brojnog sistema
x metodom sukcesivnih mnoenja decimalnog (razlomljenog) dela sa osnovom brojnog
sistema S
Primer 4.

Decimalni broj x(10) = 240,375(10) pretvoriti u binarni, sa 3 decimale tanosti


x(10)  x(2).

Reenje:
240 : 2 = 120
120 : 2 = 60
60 : 2 = 30
30 : 2 = 15
15 : 2 = 7
7:2=3
3:2=1
1:2=0

0
0
0
0
1
1
1
1

0.375 * 2 = 0.75
0.75 * 2 = 1.5
0.5 * 2 = 1.0

0
1
1

240,375 (10)  11110000,011(2)

Primer 5.

Decimalni broj x(10) = 4859,237(10) pretvoriti u binarni, sa 5 decimala tanosti


x(10)  x(2).

Reenje:
4859 : 2 = 2429
2429 : 2 = 1214
1214 : 2 = 607
607 : 2 = 303
303 : 2 = 151
151 : 2 = 75
75 : 2 = 37
37 : 2 = 18
18 : 2 = 9
9:2=4
4:2=2
2:2=1
1:2=0

1
1
0
1
1
1
1
1
0
1
0
0
1

0.237 * 2 = 0.474
0.474 * 2 = 0.948
0.948 * 2 = 1.896
0.896 * 2 = 1.792
0.792 * 2 = 1.584
0.584 * 2 = 1.168

0
0
1
1
1
1

4859,237 (10)  1001011111011,00111(2)


Primer 6.

Decimalni broj x(10) = 4365,136(10) pretvoriti u oktalni, sa 4 decimale tanosti


x(10 ) x(8).

Reenje:
4365 : 8 = 545
545 : 8 = 68
68 : 8 = 8
8:8=1
1:8=0

5
1
4
0
1

0.136 * 8 = 1.088
0.088 * 8 = 0.704
0.704 * 8 = 5.632
0.632 * 8 = 5.056

1
0
5
5

4365,136 (10)  10415,1055(8)


Primer 7.

Decimalni broj x(10) = 695,218(10) pretvoriti u oktalni, sa 4 decimale tanosti


x(10)  x(8).

Reenje:
695 : 8 =
86 : 8 =
10 : 8 =
1:8=

86 7
10 6
1 2
0 1

0.218 * 8 = 1.744
0.744 * 8 = 5.952
0.952 * 8 = 7.616
0.616 * 8 = 4.928

1
5
7
4

695,218 (10)  1267,1574(8)


Primer 8.

Decimalni broj x(10) = 845,631(10) pretvoriti u heksadecimalni, sa 3 decimale tanosti


x(10)  x(16).

Reenje:
845 : 16 = 52
52 : 16 = 3
3 : 16 = 0

13 = D
4
3

0.631 * 16 = 10.096
0.096 * 16 = 1.536
0.536 * 16 = 8.576

A
1
8

845,631 (10)  34D,A18(16)


Primer 9.

Decimalni broj x(10) = 674,574(10) pretvoriti u heksadecimalni, sa 4 decimale tanosti


x(10)  x(16).

Reenje:
674 : 16 = 42 2
42 : 16 = 2 10=A
2 : 16 = 0 2

0.574 * 16 = 9.184
0.184 * 16 = 2.944
0.944 * 16 = 15.104
0.104 * 16 = 1.664

9
2
15=F
1

674,574 (10)  2A2,92F1(16)


Primer 10.

Decimalni broj x(10) = 3428,435(10) pretvoriti u heksadecimalni, sa 4 decimale tanosti


x(10)  x(16).

Reenje:
3428 : 16 = 214 4
214 : 16 = 13 6
13 : 16 = 0 13=D

0.435 * 16 = 6.95
0.95 * 16 = 15.2
0.2 * 16 = 3.2
0.2 * 16 = 3.2

6
15=F
3
3

3428,435 (10)  D64,6F33(16)


x

Konverzija brojeva iz BIN u OCT brojni sistem obavlja se tako to se grupiu po tri
binarne cifre levo i desno poev od decimalne take.

Konverzija brojeva iz BIN u HEX brojni sistem obavlja se tako to se grupiu po etiri
binarne cifre levo i desno poev od decimalne take.

Primer 11.

Binarni broj x(2) = 11001110,01011(2) pretvoriti u oktalni, x(2)  x(8).

Reenje:
011 ~001~110 , 010~110 (2) 316,26(8)
11001110,01011(2)  316,26(8)
Primer 12.

Binarni broj x(2) = 11110010110,0101011111(2) pretvoriti u heksadecimalni,


x(2)x(16).

Reenje:
0111 ~1001~0110 , 0101~0111~1100 (2) 796,57C(16)
11110010110,0101011111 (2)  796,57C (16)
x

Konverzija brojeva iz OCT u BINbrojni sistem obavlja se tako to se svaka oktalna cifra
zamenjuje svojim trocifrenim binarnim zapisom.

Konverzija brojeva iz HEX u BIN brojni sistem obavlja se tako to se svaka


heksadecimalna cifra zamenjuje svojim etvorocifrenim binarnim zapisom.

Primer 13.

Konvertovati oktalni broj x(8) = 34752,423601(8) u binarni, x(8)  x(2).

Reenje:
34752,423601(8)  011~100~111 ~101~010 , 100~010~011~110~000~001 (2)
34752,423601(8)  011100111101010 , 100010011110000001 (2)
Primer 14.

Konvertovati heksadecimalni broj x(16) = E1B3C6,D4F8(16) u binarni, x(16)  x(2).

Reenje:
E1B3C6,D4F8(16) 1110~0001~1011~0011~1100~0110 , 1101~0100~1111~1000 (2)
E1B3C6,D4F8(16)  11100001101100111100 0110 , 1101010011111000 (2)
x

Konverzija brojeva iz OCT u HEX brojni sistem vri se preko binarnog brojnog sistema:

OCT

BIN

HEX

1. Svaka oktalna cifra se zamenjuje sa tri binarne cifre


2. Grupiu se po etiri binarne cifre ulevo i udesno od decimalne take.
x

Konverzija brojeva iz HEX u OCT brojni sistem vri se preko binarnog brojnog sistema:

HEX

BIN

OCT

1. Svaka heksadecimalna cifra se zamenjuje sa etiri binarne cifre


2. Grupiu se po tri binarne cifre ulevo i udesno od decimalne take.

Primer 15.

Oktalni broj x(8) = 5716,043(8) pretvoriti u heksadecimalni, x(8)  x(16).

Reenje:
5716,043(8)  101 111 001 110,000 100 011(2)
5716,043(8)  1011~1100~1110,0001~0001~1000(2)  BCE,118(16)
5716,043(8)  BCE,118(16)
5

Primer 16.

Konvertovati oktalni broj x(8) = 4127,153(8) u heksadecimalni, x(8)  x(16).

Reenje:
4127,153(8)  100 001 010 111 , 001 101 011(2)
4127,153(8)  1000~0101~0111, 0011~0101~1000(2)  857,358(16)
4127,153(8)  857,358(16)
Primer 17.

Heksadecimalni broj x(16) = D5C,13F(16) pretvoriti u oktalni, x(16)  x(8).

Reenje:
D5C,13F(16)  1101 0101 1100 , 0001 0011 1111(2)
D5C,13F(16)  110~101~011~100,000~100~111~111(2)  6534,0477(8)
D5C,13AF(16)  6534,0477(8)
Primer 18.

Heksadecimalni broj x(16) = 1CB,81A(16) pretvoriti u oktalni, x(16)  x(8).

Reenje:
1CB,81A(16)  0001 1100 1011,1000 0001 1010(2)
1CB,81A(16)  000~111~001~011,100~000~011~010(2)  713,4032(8)
1CB,81A(16)  713,4032(8)
Primer 19.

Koji su dekadni brojevi predstavljeni datim brojevima:


a) 10110101(2)
d) 1235(8)
g) 31B(16)
b) 0,111(2)
e) 0,14(8)
h) 0,A4(16)
c) 11,11011(2)
f) 24,13(8)
i) 1DF,C(16)

Reenje:
a)

10110101(2) = 1*27+0*26+1*25+1*24+0*23+1*22+0*21+1*20 =
= 128+32+16+4+1 = 181(10)

b)

0,111(2) = 1*2-1+1*2-2+1*2-3 = 0,875(10)

c)

11,11011(2) = 1*21+1*20+1*2-1+1*2-2+0*2-3+1*2-4+1*2-5 = 3,84375(10)

d)

1235(8) = 1*83+2*82+3*81+5*80= 512+128+24+5 = 669(10)

e)

0,14(8) = 1*8-1+4*8-2 = 0,1875(10)

f)

24,13(8) = 2*81+4*80+1*8-1+3*8-2 = 16+4+0,125+0,046875 = 20,171875(10)

Primer 20.

g)

31B(16) = 3*162+1*161+11*160 = 768+16+11 = 795(10)

h)

0,A4(16) = 10*16-1+4*16-2 = 0,640625(10)

i)

1DF,C(16) = 1*162+13*161+15*160+12*16-1 = 479,75(10)

Memorija nekog raunara podeljena je na sledee segmente koji su izraeni


heksadecimalno u bajtovima:
a) 0000 - BFFF
b) C000 - CFFF
c) D000 - FFFF
Koje e decimalne vrednosti u bajtovima imati veliine ovih segmenata?

Reenje:
a)
b)
c)

Primer 21.

(0000 - BFFF)(16) = (0 49151)(10) veliina segmenta je 49151


(C000 CFFF)(16)= (49152 53247)(10) veliina segmenta je 4095
(D000 FFFF)(16)= (53248 65535)(10) veliina segmenta je 12287

U decimalnom brojnom sistemu izraunati zbir:


22120 (3)+1531 (6)+677 (9)+358 (14)+10B (26)+9E (35).

Reenje:
22120 (3)+1531 (6)+677 (9)+358 (14)+10B (26)+9E (35) ) =
= 231(10) +415(10)+556(10)+666(10)+687(10)+329(10) = 2884(10)
Primer 22.

Izraziti dekadni broj 550(10) u svim brojnim sistemima sa osnovom od 2 do 9.

Reenje:
550(10) = 1000100110(2) = 202101(3) = 20212(4) = 4200(5) = 2314(6) = 1414(7) = 1046(8) = 671(9)
Primer 23.

Razlomak 4/5 prevesti u binarni i heksadecimalni zapis.

Reenje:
4/5 = 0,110011001100(2) = 0,CCC(16)
Primer 24.

Razlomak 1/7 napisati kao oktalni, binarni i heksadecimalni broj.

Reenje:
1/7 = 0,1111(8) = 0,001001001001(2) = 0,249249(16)

Primer 25.

Pretvoriti 3344(10) u brojnom sistemu sa osnovom q.


a) q = 4
b) q = 5

c)
d)

q=7
q = 9.

a)
b)
c)
d)

310100(4)
101334(5)
12515(7)
4525(9).

Reenje:

Primer 26.

Mapa operativne memorije nekog raunara prikazana je u dekadnoj notaciji: 0 191;


192 199; 200- 207; 208 -255. Odrediti ekvivalentnu heksadecimalnu notaciju.

Reenje:
00 BF;

Primer 27.

C0 C7;

Predstaviti sledee brojeve


osnovom q:
a) 11110011,1101(2)
b) 110001110,001111(2)
c) 614,7101(8)
d) B25,A21(16)
e) 3AB,43(16)

C8 CF;

D0 FF.

iz brojnog sistema sa osnovom s u brojnom sistemu sa


s=2
s=2
s=8
s = 16
s = 16

q=8
q =16
q=2
q=2
q = 8.

Reenje:
a)
b)
c)
d)
e)

363,64(8)
18E,3C(16)
110001100,111001000001(2)
101100100101,101000100001(2)
1653,206(8).

Primer 28.

Sledee decimalne brojeve x(10):


a) 124,567
d) 246,357
g) 258,401
b) 456,764
e) 0,286
h) 0,025
c) 645,780
f) 876
i) 1250,67
pretvoriti sa tri decimale tanosti u odgovarajue brojeve:
1) binarnog brojnog sistema, x(10)  x(2).
2) oktalnog brojnog sistema, x(10)  x(8).
3) heksadecimalnog brojnog sistema, x(10)  x(16).

Primer 29.

Sledee decimalne brojeve x(10):


a) 56,471
e) 116,229
i) 89,125
b) 3,773
f) 72,025
j) 51,17
c) 112,34
g) 108,433
k) 125,12
d) 64,82
h) 44,771
l) 6,175
pretvoriti sa tri decimale tanosti u odgovarajue brojeve:
1) binarnog brojnog sistema, x(10)  x(2).
2) oktalnog brojnog sistema, x(10)  x(8).
3) heksadecimalnog brojnog sistema, x(10)  x(16).

m) 113
n) 0,376
o) 91
p) 0,455

Primer 30.

Sledee brojeve konvertovati iz oktalnog u heksadecimalni brojni sistem, x(8)  x(16):


a)
b)
c)
d)
e)
f)

Primer 31.

g)
h)
i)
j)
k)
l)

3456,566
0,34567
760,054
1643,22
4672,502
756,1

m)
n)
o)
p)
r)
s)

135,447
50,505
707,706
0,125
5150
324,77

t)
u)
v)
x)
y)
z)

3112,3
0,6376
51765
40,55
12,16433
4774,16

Sledee brojeve konvertovati iz heksadecimalnog u oktalni brojni sistem x(16)  x(8):


a)
b)
c)
d)
e)
f)

2345,56
12,3333
333,444
47,156
6,233
33101

A6B,5C4
F3ED3
99,ABCD
2,ABB
CC5
CFA

g)
h)
i)
j)
k)
l)

B,4CDE
2ABC,D
0,FEBC
891,435
672,21C
70448

m)
n)
o)
p)
r)
s)

9888,65
34A34B
ABC,DEF
3F2E,BAD
578,226
9177CF

t) 1230,ABC
u) 0,5DF
v) ED34,57
x) 5A6B,DF
y) 1AB,AB3
z) 16276,1.

2. POJAM KOMPLEMENTA, BINARNI BROJNI SISTEM I


BINARNI BROJEVI SA ZNAKOM
Komplement je dopuna datog broja do neke unapred definisane vrednosti. Koristi se:
x
x

za prikazivanje negativnih oznaenih brojeva.


za realizaciju oduzimanja pomou sabiranja.

U binarnom brojnom sistemu (S = 2) mogu da se definiu samo dva komplementa:


x Komplement jedinice (prvi komplement)-invertovanjem svako bita polaznog
binarnog broja ( 0 o 1 i 1 o 0 ).
x Komplement dvojke (drugi komplement)-dodavanjem jedinice na prvi
komplement.

Primer 1.

Izraziti brojeve 0,4567(10) i 34,639(10) u komplementu do 10.

Reenje:
100 - 0,4567(10) = 1 - 0,4567(10) = 0,5433(10)
102 - 34,639(10) = 100 - 34,639(10) = 65,361(10)
Primer 2.

Izraziti brojeve iz zadatka 1. u komplementu do 9.

Reenje:
100 - 10-4 - 0,4567(10) = (1 - 0,0001) - 0,4567(10)
= 0,9999(10) - 0,4567(10)
= 0,5432(10)
102 - 10-3 - 34,639(10) = (100 - 0,001) - 34,639(10)
= 99,999(10) - 34,639(10)
= 65,360(10)
Primer 3.

Odrediti komplement devetke brojeva:


a) 38,25(10)
b) 876,345(10)
c) 4285,12(10).

Reenje:
a) 102 10-2 38,25(10) = (100 0,01) 38,25(10) = 99,99(10) - 38,25(10) =61,74(10)
b) 103 10-3 876,345(10) = (1000 0,001) 876,345(10) = 999,999(10) 876,345(10) = 123,654(10)
c) 104 10-2 4285,12(10) = (10000 0,01) 4285,12(10) = 9999,99(10) 4285,12(10) = 5714,87(10)

10

Primer 4.

Odrediti prvi i drugi komplement sledeih binarnih brojeva x(2) bez znaka:
a) 101(2) b) 11001(2) c) 1011011(2) d) 11001011(2) e) 11001010(2).

Reenje:
a) Prvi komplement binarnog broja x(2) dobija se invertovanjem svakog bita polaznog binarnog
broja:
x(2) = 010(2)
Drugi komplement binarnog broja x(2) dobija se dodavanjem jedinice na prvi komplement:
x(2) = x(2) + 1 = 011(2)
b)

x(2) = 00110(2)
x(2) = x(2) + 1 = 00111(2)

c)

x(2) = 0100100(2)
x(2) = x(2) + 1 = 0100101(2)

d)

x(2) = 00110100(2)
x(2) = x(2) + 1 = 00110101(2)

e)

x(2) = 00110101(2)
x(2) = x(2) + 1 = 00110110(2).

Primer 5.

Odrediti prvi i drugi komplement sledeih binarnih brojeva bez znaka:


a) 01110111(2)
b) 11111000(2)

c) 10101100(2)
d) 01010101(2)

Reenje:
a) Prvi komplement binarnog broja x(2) dobija se invertovanjem svakog bita polaznog binarnog
broja:
x(2) = 10001000(2)
Drugi komplement binarnog broja x(2) dobija se dodavanjem jedinice na prvi komplement:
x(2) = x(2) + 1 = 10001001(2)
b), c) i d) se rade na isti nain kao primer a).

Pravilo za konverziju 8-bitnih binarnih vrednosti u decimalan broj


x Neoznaena (unsigned) 8-bitna binarna vrednost konvertuje se u ekvivalentnu decimalnu
vrednost primenom formule:
0(10) d x(10) d 255(10)
x(10) = 27 b7 + 26 b6 + ... + 21 b1 + 20 b0
x Oznaena (signed) 8-bitna binarna vrednost konvertuje se u ekvivalentnu decimalnu
vrednost, pod pretpostavkom korienja tehnike drugog komplementa za zapis
oznaenih brojeva, primenom formule:
x(10) = -27 b7 + 26 b6 + ... + 21 b1 + 20 b0
-127(10) d x(10) d +128(10)

11

Primer 6.

Izvriti konverziju 8-bitnog binarnog broja x(2) = 11001011(2) u decimalni brojni


sistem, x(2)  x(10), ukoliko je zapis binarnog broja:
a) bez znaka,
b) sa znakom i predstavljen u prvom komplementu,
c) sa znakom i predstavljen u drugom komplementu.

Reenje:
a) Poto je format zapisa celobrojan i bez znaka, u optem sluaju binarni broj moe da se
prikae kao:
x = bR bR-1 b1 b0, gde su bR , bR-1 , ..., b1 , b0 {0, 1} cifre u binarnom zapisu
Za konverziju u decimalni brojni sistem x(2)  x(10), koristi se opta formula
x(10) = bR2R + bR-12R-1 +... + b121 + b020
Primenom formule za konverziju x(2)  x(10) na zadati binarni broj x(2) = 01001011(2), dobija
se:
x(10) = 1*27 + 1*26 + 0*25 + 0*24 + 1*23 + 0*22 + 1*21 + 1*20 = 203(10)
b) Znak binarnog broja se nalazi na poziciji bita najvee teine (MSB). Poto je u datom zapisu
x(2) = 11001011(2), na mestu bita najvee teine 1, to znai da je broj negativan. U postupku
konverzije u decimalni brojni sistem, treba prvo odrediti osnovnu vrednost binarnog broja, s
tim to se ne konvertuje bit najvee teine:
x(2) = 10110100(2)
Primenom formule za konverziju x(2)  x(10) na binarni broj x(2) ,dobija se:
x(10) = - (0*26 + 1*25 + 1*24 + 0*23 + 1*22 + 0*21 + 0*20) = -52(10)
c) Znak binarnog broja se nalazi na poziciji bita najvee teine (MSB). Poto je u datom zapisu
x(2) = 11001011(2), na mestu bita najvee teine 1, to znai da je broj negativan. U postupku
konverzije u decimalan brojni sistem, treba prvo odrediti osnovnu vrednost binarnog broja, s
tim to se ne konvertuje bit najvee teine. Na osnovu reenja iz take b) sledi:
x(2) = x(2) + 1 = 10110101(2)
Primenom formule za konverziju x(2)  x(10) na binarni broj x(2) ,dobija se:
x(10) = - (0*26 + 1*25 + 1*24 + 0*23 + 1*22 + 0*21 + 1*20) = -53(10)
Primer 7.

Ako se u memoriji osmobitnog raunara nalazi podatak 10000001(2), koji decimalni


broj je predstavljen ovim podatkom ako je:
a) podatak neoznaen
b) podatak oznaen.

Reenje:
a) Za neoznaeni podatak:
1 * 27 + 0 * 26 + 0 * 25 + 0*24 + 0*23 + 0*22 + 0*21 + 1*20 =128 +1 = 129(10) .
b) Za oznaeni podatak:
-1 * 27 + 0 * 26 + 0 * 25 + 0*24 + 0*23 + 0*22 + 0*21 + 1*20 =-128 +1 = 127(10) .
12

Primer 8.

Koji oznaeni broj je predstavljen 8-bitnim binarnim zapisom 10101001(2)?

Reenje:
I nain:
-1 * 27 + 0 * 26 + 1 * 25 + 0*24 + 1*23 + 0*22 + 0*21 + 1*20 =-128 +32 +8+1=-87(10)
II nain:
Kako je broj negativan, izrauna se drugi komplement broja.
x(2)  10101001
x(2)  01010110
+1
x(2)  01010111(2)  1*26+1*24 +1*22 +1*21+1*20 =87, pa je to oznaeni broj -87(10).
Primer 9.

U memoriji se nalaze brojevi:


a) 14B0(16)
b) 8011(16)
c) 83(16)
O kojim decimalnim brojevima se radi ako su zapisani kao esnaestobitni oznaeni,
a o kojim ako su zapisani kao esnaestobitni neoznaeni brojevi?

Reenje:
a) 14B0(16) = 0 0 0 1 0 1 0 0 1 0 1 1 0 0 0 0 (2)
2 7 25 2 4
212 210
Ispod binarnog kda, prikazane su pozicione vrednosti (teinski koeficijenti) za svaku poziciju
na kojoj se nalazi jedinica. Decimalni broj se dobija kao rezultat sabiranja ovih pozicionih
vrednosti:
14B0(16) = 0001 0100 1011 0000 (2) = 212 + 210 + 27 + 25 + 24 = 5296(10)
Rezultat je isti i ako se broj tretira kao oznaen i neoznaen. Oznaeni brojevi se razlikuju od
neoznaenih jedino po koeficijentu uz bit najvee pozicione vrednosti koji je u sluaju oznaenih
brojeva negativan (-215) a sluaju neoznaenih pozitivan (+215), svi ostali teinski koeficijenti su
jednaki. Kako je bit najvee pozicione vrednosti nula, to ovaj zapis odgovara broju 5296 i kao
oznaen i kao neoznaen broj.
b) 8011(16) = 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1(2)
215
24
20 Teinski koeficijenti za neoznaene brojeve
15
4
2
2
20 Teinski koeficijenti za oznaene brojeve
Ispod binarnog kda, prikazane su pozicione vrednosti (teinski koeficijenti) za svaku poziciju
na kojoj se nalazi jedinica. U prvom redu su koeficijenti za neoznaene, a u drugom za oznaene
brojeve. Decimalni broj se dobija kao rezultat sabiranja ovih pozicionih vrednosti:
8011(16) = 1000 0000 0001 0001 (2) = 215 + 24 + 20 = 32785(10) kao neoznaeni broj
8011(16) = 1000 0000 0001 0001 (2) = 215 + 24 + 20 = 32751(10) kao oznaeni broj
Da se podsetimo:
Oznaeni brojevi se razlikuju od neoznaenih jedino po teinskom koeficijentu bita najvee
pozicione vrednosti koji je u sluaju oznaenih brojeva negativan (-215), a u sluaju
neoznaenih, pozitivan (+215). Svi ostali teinski koeficijenti su jednaki.
13

c) 83(16) = 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 (2)
27
2 1 20
Ispod binarnog kda, prikazane su pozicione vrednosti (teinski koeficijenti) za svaku poziciju
na kojoj se nalazi jedinica. Decimalni broj se dobija kao rezultat sabiranja ovih pozicionih
vrednosti:
83(16) = 0000 0000 1000 0011 (2) = 27 + 21 + 20 = 131(10)
Rezultat je isti i ako se broj tretira kao oznaen i neoznaen, jer je bit najvee pozicione
vrednosti (za esnaestobitne zapise to je bit broj 15) nula.

Primer 10.

U esnaestobitnom zapisu predstaviti decimalni broj 41(10). Odgovor dati kao


esnaestobitni (etvorocifreni) heksadecimalni broj.

Reenje:
Broj 41(10) oigledno treba predstaviti kao oznaen broj, jer neoznaeni brojevi mogu biti samo
pozitivni.
Da se podsetimo:
x Oznaeni brojevi mogu biti i pozitivni i negativni.
x Kod oznaenih brojeva bitna je duina zapisa, jer je samo teinski koeficijent
najznaajnije binarne cifre negativan pa nije svejedno koliko taj, jedini
negativan teinski koeficijent iznosi. Iz tog razloga, za predstavljanje ovog broja
treba koristiti iskljuivo esnaestobitni zapis.
x Promena znaka oznaenog broja je raunanje drugog komplementa.
x U osmobitnom zapisu oznaenog broja mogu se predstaviti brojevi od -128 do
+127 i kad god u bilo kom obliku ukljuujemo negativne brojeve, bilo da je u
pitanju promena znaka ili aritmetike operacije sa drugim brojevima koji mogu
biti negativni, moramo koristiti zapis oznaenih brojeva.

! Obratite panju: broj +129 se ne moe predstaviti kao osmobitni oznaen broj iako
prilikom pretvaranja u binarni kd dobijamo osam binarnih cifara. Vrlo je vano da
pokuate sami da odgovorite i istinski razumete zato je to tako.
Krenimo od apsolutne vrednosti ovog broja (dakle, od broja +41). Pretvaranjem u binarni zapis
dobija se 41(10) = 101001(2) (pretvaranje se moe obaviti, na primer uzastopnim deljenjem sa 2
kao u ranije datim primerima). Meutim, zbog teksta zadatka, nas zanima iskljuivo
esnaestobitni zapis ovog broja. Proirenje duine zapisa pozitivnog broja se obavlja
jednostavnim dopisivanjem potrebnog broja nula nalevo. Da ponovimo, ovo vai samo za
POZITIVNE BROJEVE. Zato je +41(10), kao esnaestobitni oznaeni broj:
+ 41(10) = 0000 0000 0010 1001(2)
Da bi dobili zapis broja 41(10) treba samo izraunati drugi komplement binarnog zapisa broja
+41(10)

14

Da se podsetimo:
Operacija drugog komplementa menja znak oznaenog broja. Operacija drugog
komplementa nad neoznaenim brojevima nema aritmetikog smisla.
Prvi komplement je 1111 1111 1101 0110(2) (invertovanjem, to jest promenom svakog bita
pojedinano sa nule na jedan i obrnuto), pa je drugi komplement (dodavanjem jedinice na prvi
komplement):
1111 1111 1101 0110 (2)
+ 0000 0000 0000 0001 (2)
1111 1111 1101 0111 (2)
41(10) =
Zapisano kao heksadecimalni etvorocifreni broj (direktno iz tablice heksadecimalnih cifara):
41(10) = 1111 1111 1101 0111 (2) = FFD7 (16)

esta greka: Pogreno bi bilo poi od kda broja +41 kakav se dobija direktno
pretvaranjem u binarni sistem i nad binarnim zapisom te duine uraditi drugi komplement.
Direktno pretvoren u binarni kd, 41 = 101001(2) to je estobitni binarni zapis ovog broja.
Drugi komplement ovog binarnog zapisa je 010111(2) to svakako nije binarni kd broja - 41
(uporedite sa reenjem). Bit najvee pozicione vrednosti je nula, pa to svakako ne moe biti
zapis broja koji je negativan. Problem je u tome to se mora poi od zapisa broja +41 kao
oznaenog broja , a za to nije dovoljna duina zapisa od est bita. Ako pogledamo ovaj
estobitni zapis, primetiemo da je bit najvee pozicione vrednosti jedinica to bi u svetu
oznaenih brojeva bilo tumaeno kao negativan broj. I zaista sa est bita se mogu predstaviti
oznaeni brojevi od -25 do +25-1 (-32 do +31), a +41 ne spada u taj opseg. Minimalna duina
zapisa broja +41 kao oznaenog je sedam bita, tako da sa zapisom duine sedam ili vie bita
nema tih problema. Zapisi duina razliitih od 8, 16 ili 32 bita nemaju praktini znaaj pa je
vrlo korisno raditi samo sa zapisima date duine. Pri tome se mora voditi rauna o opsegu
brojeva.

Za one koji vole "drugaije": Koristei injenicu da su i oznaeni i neoznaeni brojevi u


binarnom brojnom sistemu poreani "u krug" (knjiga, poglavlje 2.5.1) binarni kd
negativnih brojeva se moe dobiti i na drugi nain. Ukupan broj brojeva na krugu za
esnaestobitni brojni sistem je 65536 pa se kd broja -41 (normalno, oznaenog) poklapa sa
kdom broja 65536-41=65495 kao neoznaenog broja (ponovo vidi primer na trobitnom
sistemu u udbeniku iz njega se moe jasno izvesti ovaj zakljuak). Klasinim
konvertovanjem u binarni sistem broja 65495 dobija se taan kd broja -41.

Primer 11.

U esnaestobitnom zapisu predstaviti decimalni broj 3(10). Odgovor dati kao


esnaestobitni (etvorocifreni) heksadecimalni broj.

Reenje:
Kao i u prethodnom primeru, kada se trai binarni zapis broja 3 to svakako mora biti oznaeni
broj, moramo poi od esnaestobitnog binarnog zapisa broja +3 kao oznaenog broja. Binarni
kod broja +3 je 011(2) ili, predstavljeno kao esnaestobitni oznaeni broj:
+3(10) = 0000 0000 0000 0011(2)

15

Broj 3 se dobija kao drugi komplement ovog binarnog zapisa. Da podsetimo, drugi komplement
se dobija kao prvi komplement (svaki bit invertovan) i uvean za jedan.
-3(10) = 1111 1111 1111 1101(2) = FFFD (16)

! esta greka: Kao esto reenje ovog i slinih zadataka pojavljuje se odgovor:
3(10) = 1000 0000 0000 0011(2)
Sa idejom da jedinica kao najznaajniji bit pretvara broj u negativan, to je potpuno pogreno
kada se za predstavljanje negativnih brojeva koristi tehnika drugog komplementa, a u
savremenim raunarima se jedino ona koristi u tu svrhu.

Da se podsetimo:
Jedinica na mestu bita najvee pozicione vrednosti (MSB) zaista znai da je broj negativan, ali
ostali biti nisu apsolutna vrednost tog broja niti se prostim menjanjem MSB menja znak
broju!

Primer 12.

U esnaestobitnom zapisu predstaviti decimalni broj 1025(10). Odgovor dati kao


esnaestobitni (etvorocifreni) heksadecimalni broj.

Reenje:
1025(10) = 1024+1 = 210 + 20 = 0000 0100 0000 0001(2) = 0401(16).
Zapis je isti bez obzira da li se broj tretira kao oznaen ili neoznaen.
Ako se znaju stepeni broja 2, potpuno je neracionalno troiti vreme na uzastopno deljenje sa 2
(klasino pretvaranje).
Da se podsetimo:
u sistemu esnaestobitnih brojeva razlike nastaju tek za brojeve vee od +32767 koji se mogu
predsataviti kao neoznaeni ali kao oznaeni ne mogu. Normalno, negativni brojevi do 32768
se mogu predstaviti jedino kao oznaeni. Brojevi 32769 i manji (negativniji) se ne mogu nikako
predstaviti pomou esnaestobitnog zapisa.

Primer 13.

U esnaestobitnom zapisu predstaviti decimalni broj 512(10). Odgovor dati kao


esnaestobitni (etvorocifreni) heksadecimalni broj.

Reenje:
Broj se mora tretirati kao oznaen. Polazimo od esnaestobitnog zapisa +512(10) kao oznaenog
broja (u ovom sluaju, isti je i zapis oznaenog i neoznaenog broja):
+512(10) = 2 9 = 0000 0010 0000 0000 (2)
Prvi komplement ovog zapisa je 1111 1101 1111 1111 (2) pa se konano reenje dobija
dodavanjem jedinice na ovaj zapis:
-512(10) = 1111 1110 0000 0000 (2) = FE00 (16)

16

Primer 14.

U esnaestobitnom zapisu predstavi sledee decimalne brojeve:


a) -6
b) -33
c) 2049.

Reenje:
a) 6(10) 0000000000000110(2)
1111111111111001(2)
+1
1111111111111010
b) 33(10) 0000000000100001(2)
1111111111011110(2)
+1
1111111111011111

(1. komplement)
(2. komplement)

(1. komplement)
(2. komplement)

c) 2049(10)0000100000000001(2)

Pravila binarnog sabiranja


0+0=0
1+0=1
0+1=1
1 + 1 = 10

Primer 15.

1 = prenos (carry)

Binarno sabrati brojeve 10100011 (2) i 00111010 (2) ako su ulazni podaci:
a) Dva neoznaena binarna broja.
b) Dva oznaena binarna broja.
Oba rezultata predstaviti i kao decimalni broj.

Reenje:
a)

10100011(2)
+ 00111010(2)
11011101(2)

zbir je 221(10)

b) Postupak isti kao pod a). Uvek je isti. Zbir je 35(10)


Primer 16.

Binarno sabrati brojeve 01101001(2) i 10001010(2) ako su ulazni podaci:


a) Dva neoznaena binarna broja.
b) Dva oznaena binarna broja.
Oba rezultata predstaviti i kao decimalni broj.

Reenje:
a)

01101001(2)
+ 10001010(2)
11110011(2)

zbir je 243(10)

b) Postupak isti kao pod a). Uvek je isti. Zbir je 13(10).


17

Posle svake aritmetike operacije u ALU, procesor postavlja ili brie kontrolne bite u registru
stanja (zastavice, flag-ovi) ija vrednost moe da bude 1 ili 0.
x
C (Carry) = 1 oznaava da postoji prenos iz bita najvee teine.
x
N (Negative) = 1 oznaava negativan rezultat kada su podaci oznaeni brojevi.
x
V (oVerflow) = 1 signalizira da je rezultat oznaeni broj van opsega (-128 do +127).
x
Z (Zero) = 1 signalizira da je rezultat aritmetike operacije 0.
Primer 17.

U osmobitnoj aritmetici binarno sabrati brojeve 129 i 131. Koji decimalni broj je
rezultat sabiranja? Komentarisati odgovor. Kakvo e biti stanje zastavica V, N, C
posle sabiranja?

Reenje:
10000001
+ 10000011
00000100 zbir je 4
U ovom sluaju, stanje flegova e biti sledee: C=1, N=0 (najznaajniji bit rezultata je nula, pa je
broj tretiran kao pozitivan), V=1 (fleg V se postavlja pod pretpostavkom da su ulazni podaci
oznaeni brojevi. Prvi broj (10000001), posmatran kao oznaen je -127, a drugi (10000011) je 125. Sabiranjem ova dva broja dobija se broj van opsega oznaenog osmobitnog broja (-128 do
127) pa se V fleg postavlja.
Zbog pojave prekoraenja rezultat nije aritmetiki taan.

Primer 18.

U osmobitnoj aritmetici binarno sabrati brojeve 126 i 44. Koji decimalni broj je
rezultat sabiranja? Komentarisati odgovor. Kakvo e biti stanje zastavica V, N, C
posle sabiranja ?

Reenje:
01111110
+ 11010100
01010010 zbir je 82
U ovom sluaju, stanje flegova e biti sledee: C=1, N=0 (najznaajniji bit rezultata je nula, pa
je broj tretiran kao pozitivan), V=0 (fleg V se postavlja pod pretpostavkom da su ulazni podaci
oznaeni brojevi. Prvi broj je 124 i kada se tretira kao oznaen i kao neoznaen, a drugi je -44
kada se tretira kao oznaen. Sabiranjem ova dva broja dobija se broj u opsegu oznaenog
osmobitnog broja (-128 do 127) pa se V fleg brie.
Prilikom sabiranja postoji prenos, meutim, poto se sabiraju oznaeni brojevi, to to je dolo do
prenosa nema uticaja na aritmetiku tanost rezultata. Rezultat je aritmetiki taan, jer nema
prekoraenja (V=0).

Primer 19.

18

Ilustrovati kako bi se u binarnom sistemu sabrali brojevi 143 i 114:


a) U mikroraunaru sa 8-bitnom ALU.
b) U mikroraunaru sa 16-bitnom ALU.
Koji decimalni broj je rezultat sabiranja pod a) i b) ako se ulazni podaci tretiraju
kao oznaeni brojevi?
Koji decimalni broj je rezultat sabiranja pod a) i b) ako se ulazni podaci tretiraju
kao neoznaeni brojevi?

Kakvo e biti stanje zastavica V, N i C posle sabiranja pod a) i b)?


Reenje:
a)

143 = 10001111 (2)


+ 114 = 01110010 (2)
1 00000001 (2)

8-bitni rezultat

Rezultal sabiranja u mikroraunaru sa 8-bitnom ALU je 1. Deveti bit najvee pozicione


vrednosti (predstavljen kao blei) biva odseen i pojavljuje se kao jedinica u zastavici prenosa C.
Rezultat sabiranja je isti nezavisno da li se brojevi posmatraju kao oznaeni ili neoznaeni. ALU
sabira binarne brojeve, a to da li je broj oznaen ili ne stvar je tumaenja programera, postupak
sabiranja u ALU uopte ne zavisi od tumaenja programera. Ako se brojevi tretiraju kao
oznaeni, prvi sabirak nije 143 ve -113 (binarni kod 10001111 (2) je 143 ako se tretira kao
neoznaeni a -113 kada se tretira kao oznaeni). Za oznaene brojeve ovo sabiranje daje
aritmetiki taan rezultat, bez obzira to postoji prenos u deveti bit koji se gubi (biva odseen).
Da se podsetimo:
Prenos u deveti bit ne mora da znai prekoraenje kada se brojevi tretiraju kao oznaeni,
zastavica V ukazuje na prekoraenje (i da rezultat nije aritmetiki taan). Kada se brojevi
tretiraju kao neoznaeni, C zastavica nosi informaciju da rezultat nije taan, a ne fleg V.
Zastavice su sledee: C=1; N=0 (stanje bita najvee pozicione vrednosti u rezultatu) i V=0 jer
kada se podaci tretiraju kao oznaeni nema prekoraenja: sabiraju se brojevi 114 i -113 i dobija
se rezultat 1 koji je u opsegu oznaenih osmobitnih brojeva (od -128 do +127).
b)

143 = 0000 0000 1000 1111 (2)


+ 114 = 0000 0000 0111 0010 (2)
0000 0001 0000 0001 (2)

Rezultat sabiranja u mikroraunaru sa 16-bitnom ALU je 257.


Rezultat sabiranja je isti nezavisno da li se brojevi posmatraju kao oznaeni ili neoznaeni. ALU
sabira binarne brojeve, a to da li je broj oznaen ili ne stvar je tumaenja programera, postupak
sabiranja u ALU uopte ne zavisi od tumaenja programera. Oba sabirka su isti i ako se tretiraju i
kao oznaeni i kao neoznaeni.
Sve zastavice, i C i V i N su u ovom sluaju nule. Nema prekoraenja, nema prenosa u
sedamnaesti bit i najznaajniji bit je nula pa je broj pozitivan.

Primer 20.

Reenje:
a)

Ilustrovati kako bi osmobitni raunar binarno sabrao decimalne brojeve 66 i 254


ako su u pitanju:
a) Dva neoznaena broja
b) Dva oznaena broja
Koji decimalni broj je rezultat sabiranja pod a) i b) ?
U kom e stanju biti zastavice C, V i N posle sabiranja pod a) i b)?

01000010 = 66
+ 11111110 = 254
1 01000000

19

b) Postupak isti kao pod a). Uvek je isti. Rezultat je 64 (deveti, najznaajniji bit je odseen) i
pod a) i pod b)
Rezultat je taan za oznaene jer je 11111110 (2) = 2, kao oznaen broj

C=1, V=0, N=0 i pod a) i pod b).

Primer 21.

Reenje:
a)

Ilustrovati kako bi osmobitni raunar binarno sabrao brojeve 34 i 253 kao:


a) Dva neoznaena binarna broja
b) Dva oznaena binarna broja
Koji decimalni broj je rezultat sabiranja pod a) i b)
U kom e stanju biti zastavice C, V i N posle sabiranja pod a) i b)

00100010 = 34
+ 11111101 = 253
1 00011111

b) Postupak isti kao pod a). Uvek je isti . Rezultat je 31 (deveti bit je odseen) i pod a) i pod b)
Rezultat je taan za oznaene jer je 11111101(2) = -3 kao oznaen broj

C=1, V=0, N=0 i pod a) i pod b).

Oduzimanje moe da se svede na sabiranje:


XY=X+(-Y)
(- Y) je negativna vrednost kodovana primenom prvog ili drugog komplementa.
Pravilo za oduzimanje primenom sabiranja i prvog komplementa
x
Negativan broj se predstavlja kao prvi komplement binarnog zapisa.
x
Kada se na MSB mestu pojavi prenos (C, carry) rezultat se koriguje dodavanjem
prenosa na LSB.
x
Razlikuju se pozitivna i negativna nula:
+0(10) = 00000000(2) i -0(10) = 11111111(2)
Pravilo za oduzimanje primenom drugog komplementa
x
Negativan broj se predstavlja kao drugi komplement binarnog zapisa.
x
Praktino jedini nain predstavljanja negativnog broja u raunarskom sistemu.
x
Kada se na MSB mestu pojavi prenos ignorie se (odseca se), ali ostaje zapisan
u C flegu (carry flag).
x
U drugom komplementu pozitivna i negativna nula su iste: r0(10) = 00000000(2).
Primer 22.

20

Koristei 8 bitne binarne brojeve sa znakom izraunati primenom prvog


komplementa razliku brojeva: 100(10) 56(10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.

Reenje:

100 : 2 = 50 0
50 : 2 = 25 0
25 : 2 = 12 1
12 : 2 = 6 0
6:2= 3 0
3:2= 1 1
1:2= 0 1
100(10)  01100100(2)

56 : 2 = 28
28 : 2 = 14
14 : 2 = 7
7:2= 3
3:2= 1
1:2= 0

0
0
0
1
1
1

56(10)  00111000(2)
- 56(10)  11000111(2) 1.komplement

100(10) - 56(10) = 100(10) + (- 56(10) )


01100100
+ 11000111
1 00101011
+1
00101100 = 25 + 23 + 22 = 44(10).
Primer 23.

Koristei 8 bitne binarne brojeve sa znakom izraunati primenom prvog


komplementa razliku brojeva: 111(10) 87(10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.

Reenje:
111 : 2 = 55
55 : 2 = 27
27 : 2 = 13
13 : 2 = 6
6:2= 3
3:2= 1
1:2= 0

1
1
1
1
0
1
1

87 : 2 = 43
43 : 2 = 21
21 : 2 = 10
10 : 2 = 5
5:2= 2
2: 2 = 1
1: 2 = 0

111(10)  01101111(2)

1
1
1
0
1
0
1

87(10)  01010111(2)
- 87(10)  10101000(2) 1.komplement

111(10) - 87(10) = 111(10) + (- 87(10) )


01101111
+10101000
1 00010111
+1
00011000 (2)  24 + 23 = 24(10).
Primer 24.

Koristei 8 bitne binarne brojeve sa znakom izraunati primenom prvog


komplementa razliku brojeva: 113(10) 66(10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.

21

Reenje:

113 : 2 = 56
56 : 2 = 28
28 : 2 = 14
14 : 2 = 7
7:2= 3
3:2= 1
1:2= 0

1
0
0
0
1
1
1

113(10)  01110001(2)

66 : 2 = 33
33 : 2 = 16
16 : 2 = 8
8:2= 4
4:2= 2
2:2= 1
1:2= 0

0
1
0
0
0
0
1

66(10)  01000010 (2)


- 66(10)  10111101 (2) 1.komplement

113(10) - 66(10) = 113(10) + (- 66(10) )


01110001
+ 10111101
1 00101110
+1
00101111(2)  25 + 23 + 22 +21 +20 = 47(10).
Primer 25.

Reenje:

Koristei 8 bitne binarne brojeve sa znakom izraunati primenom prvog


komplementa razliku brojeva: 91 (10) 124 (10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.
124 : 2 = 62 0
91 : 2 = 45 1
62 : 2 = 31 0
45 : 2 = 22 1
31 : 2 = 15 1
22 : 2 = 11 0
15 : 2 = 7 1
11 : 2 = 5 1
7:2= 3 1
5:2= 2 1
3:2= 1 1
2:2= 1 0
1:2= 0 1
1:2= 0 1
124(10)  01111100(2)
91(10)  01011011(2)
- 124(10)  10000011(2) 1.komplement
91(10) 124(10) = 91(10) + (- 124(10) )
01011011
+ 10000011
11011110  10100001 (1. komplement) = - ( 25 + 20 ) = - 33(10).

Primer 26.

Koristei 8 bitne oznaene binarne brojeve izraunati primenom drugog


komplementa razliku brojeva: 45(10) 73(10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.

Reenje:
45 : 2 = 22
22 : 2 = 11
11 : 2 = 5
5:2= 2
2:2= 1
1:2= 0

22

1
0
1
1
0
1

73 : 2 = 36
36 : 2 = 18
18 : 2 = 9
9:2= 4
4:2= 2
2:2= 1
1:2= 0

1
0
0
1
0
0
1

45(10)  00101101(2)

73(10)  01001001(2)
- 73(10)  10110110(2) 1.komplement
+1
10110111(2) 2.komplement
45(10) - 73(10) = 45(10) + (- 73(10) )

00101101(2)
+ 10110111(2)
11100100(2)  - 1*27 + 1*26 + 1*25 + 1*22 = - 28(10)
ili
11100100
10011011 (negativan br. 1.komplement)
+1 (korekcija)

10011100(2)  - (1*24 + 1*23 + 1*22) = - 28(10).


Primer 27.

Koristei 8 bitne oznaene binarne brojeve izraunati primenom drugog


komplementa razliku brojeva: 59 (10) 100 (10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.

Reenje:

59 : 2 = 29
29 : 2 = 14
14 : 2 = 7
7:2= 3
3:2= 1
1:2= 0

1
1
0
1
1
1

100 : 2 = 50
50 : 2 = 25
25 : 2 = 12
12 : 2 = 6
6:2= 3
3:2= 1
1: 2 = 0

0
0
1
0
0
1
1

59(10)  00111011(2)

100(10)  01100100(2)
-100(10) 10011011(2) 1. komplement
+1
10011100(2) 2. komplement
59 (10) - 100 (10) = 59 (10) + (-100 (10) )

00111011(2)
+ 10011100(2)
11010111(2)  - 1*27 + 1*26 + 1*24 + 1*22+1*21 +1*20 = - 41(10)
ili
11010111
10101000 (negativan br. 1.komplement)
+1 (korekcija)

10101001(2)  - (1*25 + 1*23 + 1*20) = - 41(10).

23

Primer 28.

Reenje:

Koristei 8 bitne binarne brojeve sa znakom izraunati primenom drugog


komplementa razliku brojeva: 94(10) 122(10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.
122 : 2 = 61
61 : 2 = 30
30 : 2 = 15
15 : 2 = 7
7:2= 3
3:2= 1
1:2= 0

0
1
0
1
1
1
1

94 : 2 = 47
47 : 2 = 23
23 : 2 = 11
11 : 2 = 5
5:2= 2
2:2= 1
1:2= 0

0
1
1
1
1
0
1

122(10)  01111010(2)
94(10)  01011110(2)
- 122(10)  10000101(2) 1. komplement
+1
10000110(2) 2. komplement
94(10) - 122(10) = 94(10) + (- 122(10) )
01011110(2)
+ 10000110(2)
11100100(2)  10011011(2) (1. komplement)
+1
10011100(2) (2. komplement) = - ( 24 + 23 + 22 ) = - 28(10).
Primer 29.

Reenje:

Koristei 8 bitne binarne brojeve sa znakom izraunati primenom drugog


komplementa razliku brojeva: 107 (10) 63 (10) = ?, a zatim prikazati rezultat u
decimalnom brojnom sistemu.
107 : 2 = 53 1
53 : 2 = 26 1
26 : 2 = 13 0
13 : 2 = 6 1
6:2= 3 0
3:2= 1 1
1:2= 0 1
107(10)  01101011(2)

63 : 2 = 31
31 : 2 = 15
15 : 2 = 7
7:2= 3
3:2= 1
1:2= 0

63(10)  00111111(2)
- 63(10) 11000000(2) 1. komplement
+1
11000001(2) 2. komplement

107 (10) - 63 (10) = 107 (10) + (-63 (10) )


01101011(2)
+ 11000001(2)
100101100(2) = 25 + 23 + 22= 44(10)

24

1
1
1
1
1
1

Primer 30.

Koristei 8-bitne oznaene binarne brojeve izraunati primenom:


a) prvog komplementa
b) drugog komplementa
Razliku brojeva i rezultat prikazati u decimalnom brojnom sistemu.

a) 112(10) 31(10)
b) 31(10) 112(10)
c) 84(10) 16(10)
d) 16(10) 84(10)

e) 105(10) 14 (10)
f) 14(10) 105(10)
g) 121(10) 45(10)
h) 45(10) 121(10)

i) 68(10) 29 (10)
j) 29(10) 68(10)
k) 125(10) 55 (10)
l) 55 (10) 125(10)

m) 73(10) 119(10)
n) 119(10) 73(10)
o) 88(10) 98(10)
p) 98(10) 88(10).

25

3. FORMATI ZAPISA BROJEVA U RAUNARSKOM SISTEMU


Formatom zapisa brojeva u raunarskom sistemu odreen je broj cifara za uvanje
celobrojnog i razlomljenog dela brojne vrednosti iz skupa racionalnih brojeva.
x
x
x
x

Broj cifara levo od decimalne take definie opseg brojeva koji mogu da se predstave tim
formatom.
Broj cifara desno od decimalne take definie tanost sa kojom se prikazuju brojevi.
Istom binarnom zapisu u zavisnosti od formata mogu da odgovaraju razliite brojne
vrednosti
Ista brojna vrednost moe da bude zapisana u razliitim formatima

Simbol za format neoznaenih brojeva sa nepokretnom decimalnom takom, ako je binarni


zapis duine N je:
QN-R,R
N - R = broj cifara ispred decimalne take
R = broj cifara iza decimalne take (radix)
x

Na osnovu poznatog formata Q8-R,R za uvanje neoznaenog broja u 8-bitnom registru,


dobija se ekvivalentna vrednost u decimalnom brojnom sistemu primenom formule:

x(10) = 2-R(b7 27 + b6 26 + ... + b1 21 + b0 20)


Simbol za format oznaenih brojeva sa nepokretnom decimalnom takom, ako je binarni zapis
duine N je:
QSN-R,R
N - R = broj cifara ispred decimalne take, ukljuujui 1 bit za znak (MSB)
R = broj cifara iza decimalne take (radix)
x

Na osnovu poznatog formata QSN-R,R za uvanje oznaenog broja u 8-bitnom registru,


dobija se ekvivalentna vrednost u decimalnom brojnom sistemu primenom formule:

x(10) = 2-R(-b7 27 + b6 26 + ... + b1 21 + b0 20)


Primer 1.

Izvriti konverziju 8-bitnog binarnog broja x(2) = 01001011(2) u decimalan brojni


sistem, x(2)  x(10), ukoliko je zapis broja:
a) neoznaen celi broj
b) u formatu QN-R,R pri emu je N = 8, a R {2, 3, 4 ,5}
c) u formatu QSN-R,R pri emu je N = 8, a R {2, 3, 4 ,5}.

Reenje:
a) Poto je format zapisa celobrojan i bez znaka, u optem sluaju binarni broj moe da se
prikae kao x = bR bR-1 b1 b0, gde su bR , bR-1 , ..., b1 , b0 {0, 1} cifre u binarnom zapisu .
Za konverziju u decimalni brojni sistem x(2)  x(10), koristi se opta formula
x(10) = bR2R + bR-12R-1 +... + b121 + b020
26

Primenom formule za konverziju x(2)  x(10) na zadati binarni broj x(2) = 01001011(2), dobija
se:
x(10) = 0*27 + 1*26 + 0*25 + 0*24 + 1*23 + 0*22 + 1*21 + 1*20 = 75(10).
b) Ako je zapis broja u formatu QN-R,R pri emu je:
1) N = 8, a R =2, to znai da 6 viih binarnih cifara datog broja x(2) = 01001011(2) predstavlja
celobrojni deo binarnog broja, dok dve najnie binarne cifre predstavljaju razlomljeni deo,
odnosno da binarni broj moe da se posmatra kao:
x(2) = 010010,11(2)
Za konverziju x(2)  x(10) moe da se primeni opta formula:
2-R * ( b7 * 27 + b6 * 26 + ... + b1 * 21 + b0 * 20 )
Poto je R = 2,
x(10) = 2-2 (0 * 27 + 1 * 26 + 0 * 25 .+. 0*24 + 1*23 + 0*22 + 1*21 + 1*20) = 75/4 = 18,75(10)
2) N = 8, a R =3, to znai da 5 viih binarnih cifara datog broja x(2) = 01001011(2)
predstavlja celobrojni deo binarnog broja, dok tri najnie binarne cifre predstavljaju
razlomljeni deo, odnosno da binarni broj moe da se posmatra kao:
x(2) = 01001,011(2)
Za konverziju x(2)  x(10) moe da se primeni opta formula:
2-R * ( b7 * 27 + b6 * 26 + ... + b1 * 21 + b0 * 20 )
Poto je R = 3,
x(10) = 2-3 (0 * 27 + 1 * 26 + 0 * 25 + 0*24 + 1*23 + 0*22 + 1*21 + 1*20) = 75/8= 9,375(10)
Primeri 3) i 4) kada je R = 4 i R = 5 rade se na analogan nain kao primeri 1) i 2).
c) Ako je zapis broja u formatu QSN-R,R pri emu je:
1) N = 8, a R =2, to znai da je na mestu bita najvie teine (MSB) u zapisu sauvan znak
broja ( 0 = +, 1 = - ), 5 viih binarnih cifara datog broja x(2) = 01001011(2)
predstavlja celobrojni deo binarnog broja, dok 2 najnie binarne cifre predstavljaju
razlomljeni deo, odnosno binarni broj moe da se posmatra kao:
x(2) = 010010,11(2) = +10010,11(2)
Za konverziju x(2)  x(10) moe da se primeni opta formula:
2-R * ( -b7 * 27 + b6 * 26 + ... + b1 * 21 + b0 * 20 )
Poto je R = 2,
x(10) = 2-2 (-0 * 27 + 1 * 26 + 0 * 25 + 0*24 + 1*23 + 0*22 + 1*21 + 1*20) = +75/4= +18,75(10)
2) N = 8, a R =3, to znai da je na mestu bita najvie teine (MSB) u zapisu sauvan znak
broja ( 0 = +, 1 = - ), 4 vie binarne cifre datog broja x(2) = 01001011(2)
predstavljaju celobrojni deo binarnog broja, dok 3 najnie binarne cifre predstavljaju
razlomljeni deo, odnosno da binarni broj moe da se posmatra kao:
x(2) = 01001,011(2) = +1001,011(2)
Za konverziju x(2)  x(10) moe da se primeni opta formula:
2-R * ( -b7 * 27 + b6 * 26 + ... + b1 * 21 + b0 * 20 )
Poto je R = 3,
x(10) = 2-3 (-0 * 27 + 1 * 26 + 0 * 25 + 0*24 + 1*23 + 0*22 + 1*21 + 1*20)= +75/8 = +9,375(10)
Primeri 3) i 4) kada je R = 4 i R = 5 rade se na analogan nain kao primeri 1) i 2).

27

Primer 2.

Pretvoriti 8-bitni binarni broj x(2) = 11001001(2) u decimalan ako je primenjen


format Q5,3.

Reenje:
U formatu Q5, 3 za celobrojni deo se koristi 5 binarnih cifara, a za decimalni deo 3 binarne cifre:
x(2) = 11001,001 = 24 + 23 +20 +2-3 = 25.125(10)
5 cifara 3 cifre

Primer 3.

Pretvoriti neoznaen 8-bitni binarni broj x(2) = 01101011(2) u decimalan ako je


primenjen format Q6, 2.

Reenje:
U formatu Q6, 2 za celobrojni deo se korist 6 binarnih cifara, a za decimalni deo 2 binarne cifre:
x(2) = 011010,11 = 24 + 23 +21 +2-1 +2-2 = 26.75(10)
6 cifara 2 cifre

Primer 4.

U memoriji se nalazi heksadecimalni broj 65(16). O kom neoznaenom decimalnom


broju se radi ako se zna da je zapisan u formatu Q6,2.

Reenje:
65(16)  0110 0101(2) ; ako je format Q6,2 011001,01(2)  25,25(10)
Primer 5.

U memoriji se nalazi heksadecimalan broj 97(16). O kom:


a) neoznaenom
b) oznaenom
decimalnom broju se radi ako se zna da je zapisan u formatu Q7,1.

Reenje:
a) 97(16)  1001 0111(2) ; ako je format Q7,1 1001011,1(2)  75,5(10) .
b) 97(16)  1001 0111(2) ; ako je format Q7,1 1001011,1(2)  -52,5(10) .
Primer 6.

28

Koje decimalne vrednosti odgovaraju binarnom zapisu 0000 1011(2), ako je format:
a) Q8,0
d) Q5,3
b) Q7,1
e) Q4,4
c) Q6,2
f) Q3,5

Reenje:
a) 0000 1011(2)  11(10)
b) 0000 1011(2)  5,5(10)
c) 0000 1011(2)  2,75(10)

d) 0000 1011(2)  1,375(10)


e) 0000 1011(2)  0,6875(10)
f) 0000 1011(2)  0,34375(10)

Pri odreivanju optimalnog formata treba obezbediti:


x Dovoljan broj bita levo od decimalne take za celobrojni deo
x Maksimalan broj bita desno decimalne take za razlomljeni deo
Promenom formata menjaju se tanost prikaza brojne vrednosti i opseg

Primer 7.

Odrediti optimalan format Q8-R, R za uvanje decimalnog broja 4,563.

Reenje:
U pitanju je format za zapis brojeva bez znaka, tako da u optimalnom formatu treba predvideti
minimalan neophodan broj binarnih cifara za zapis celobrojnog dela i maksimalan broj binarnih
cifara za zapis dela koji je desno od decimalne take:
4(10) = 100(2)

0.563 * 2 = 1.126
0.126 * 2 = 1.252
0.252 * 2 = 0.504
0.504 * 2 = 1.008
0.008 * 2 = 0.016

1
0
0
1
0

4,563(10) = 100,10010(2)
Iz prethodnog sledi da je optimalan format za uvanje 8-bitnog zapisa broja Q3, 5.
Primer 8.

Odrediti optimalan format Q8-R, R za uvanje decimalnog broja 2,872(10).

Reenje:
U pitanju je format za zapis brojeva bez znaka, tako da u optimalnom formatu treba predvideti
neophodan broj binarnih cifara za zapis celobrojnog dela i maksimalan broj cifara za zapis dela
koji je desno od decimalne take:
2(10) = 10(2)

0.872 * 2 = 1.744
0.744 * 2 = 1.488
0.488 * 2 = 0.976
0.976 * 2 = 1.952
0.952 * 2 = 1.904
0.904 * 2 = 1.808

1
1
0
1
1
1

2,872(10) = 10,110111(2)
Iz prethodnog sledi da je optimalan format za uvanje 8-bitnog zapisa broja Q2, 6.

29

Primer 9.

Kako zapisati neoznaen, a kako oznaen decimalan broj 3,6(10) u binarnom


brojnom sistemu, x(2), u 8-bitnom registru u formatu fiksnog zareza? U oba sluaja
napisati koji bi bio optimalni format? Da li postoji greka usled zaokruivanja i ako
postoji da li je vea kada se broj uva u optimalnom formatu oznaenog ili
neoznaenog broja?

Reenje:
Za ceo deo, odnosno za je 3 potrebno najmanje dva bita, pa za razlomljeni deo, 0,6 ostaje 6 bita.
3,6(10)  11,100110011001(2)
Optimalni format bi bio Q2,6. Ekvivalentan binarni zapis broja u ovom formatu je:
3,6(10)  11100110(2)
Ako je u pitanju oznaen broj, mora da se predvidi jedan bit za znak u celobrojnom delu zapisa,
tako da je optimalan format QS3,5. Ekvivalentan binarni zapis broja u ovom formatu je:
3,6(10)  01110011(2)
Odsecanje bita u razlomljenom delu binarnog zapisa dovodi do greke u zaokruivanju, koje se
ogleda u odstupanju ekvivalentne decimalne vrednosti binarnog zapisa u 8-bitnom registru za
izabrani optimalni format.
Ekvivalentna decimalna vrednost neoznaenog broja u optimalnom formatu je:
11100110(2) = 2-6 (1 * 27 + 1 * 26 + 1 * 25 + 0*24 + 0*23 + 1*22 + 1*21 + 0*20)= 3,59375(10).
Ekvivalentna decimalna vrednost oznaenog broja u optimalnom formatu je:
01110011 (2) = 2-5 (-0 * 27 + 1 * 26 + 1 * 25 + 1*24 + 0*23 + 0*22 + 1*21 + 1*20)= 3,59375(10).
Kada se uva u optimalnom formatu pozitivan oznaen broj, greka usled zaokruivanja je ista
kao kada se u optimalnom formatu uva neoznaen broj.

Primer 10.

Kako zapisati decimalni broj 127,7(10) u binarnom brojnom sistemu, x(2), u 8-bitnom
registru u optimalnom formatu fiksnog zareza? Da li postoji greka usled
zaokruivanja?

Reenje:
Za ceo deo, odnosno za 127 potrebno je 7 bita, pa za razlomljeni deo, 7 ostaje 1 bit.
127,7(10) 0 1111111,101...(2)
Optimalni format bi bio Q7,1. Ekvivalentan binarni zapis broja u ovom formatu je:
127,7(10)  11111111(2)
Ekvivalentna decimalna vrednost oznaenog broja u optimalnom formatu je:
11111111(2) = 2-1 (1*27+1*26+1*25+1*24+1*23+1*22+1*21+1*20)= 127,5(10).
Primer 11.

30

Kako broj  (3,1416(10)) predstaviti u binarnom brojnom sistemu u osmobitnom


zapisu, ako je:
a) broj neoznaen,
b) broj oznaen,
i koji je optimalni format?

Reenje:
a) 3,1416(10) (neoznaen)  11001001(2) u formatu Q2,6
b) 3,1416(10) (oznaen)  01100100(2) u formatu QS3,5.
Primer 12.

Kako bi u memoriji osmobitnog raunara izgledao optimalan zapis decimalnog


broja 66,6(10)?
a) u sistemu neoznaenih brojeva
b) u sistemu oznaenih brojeva
Za oba sluaja naznaiti formate u kojima je zapisan broj.

Reenje:
a) 66,6(10) (neoznaen)  10000101(2) u formatu Q7,1
b) 66,6(10) (oznaen)  01000010(2) u formatu Qs8,0
Primer 13.

Koji hekasadecimalan sadraj predstavlja optimalni zapis decimalnog broja 9,87(10)


u osmobitnom sistemu:
a) neoznaenih brojeva
b) oznaenih brojeva
Naznaiti format u kome je broj zapisan.

Reenje:
a) 9,87(10) (neoznaeni)  10011101(2) = 9D 16 u formatu Q4,4
b) 9,87(10) (oznaeni)  01001110(2) = 4E 16 u formatu Q5,3
Primer 14.

Kako bi u memoriji osmobitnog raunara izgledao optimalni zapis decimalnog


broja 34,6(10) u sisteemu:
a) neoznaenih brojeva
b) oznaenih brojeva
Naznaiti format u kome je broj zapisan.

Reenje:
a) 34,6(10) (neoznaeni)  10001010(2) u formatu Q6,2
b) 34,6(10) (oznaeni)  01000101(2) u formatu Qs7,1
Primer 15.

Koji hekasadecimalan sadraj predstavlja optimalni zapis decimalnog broja


6,283(10) u osmobitnom sistemu:
a) neoznaenih brojeva
b) oznaenih brojeva
Naznaiti format u kome je broj zapisan.

31

Reenje:
a) 6,283(10) (neoznaeni)  11001001(2) = C9 (16) u formatu Q3,5
b) 6,283(10) (oznaeni)  01100100(2) = 64 (16) u formatu Qs4,4
Primer 16.

U esnaestobitnom zapisu sa fiksnim zarezom, koristei format koji je optimalan sa


gledita tanosti zapisa, predstaviti decimalni broj 1025,608 kao (a) neoznaen i
kao (b) oznaen broj. Odgovore dati kao dva esnaestobitna (etvorocifrena)
heksadecimalna broja.

Reenje:
Pretvaranjem u binarni sistem celobrojnog dela dobijamo
1025 = 10000000001 (2)
(zapis duine 11 bita)
Pretvaranjem razlomljenog dela (uzastopnim mnoenjem razlomljenog dela sa 2) dobijamo
0,608 = 0,100110111010 (2)
(zapis beskonane duine)
Ispostavie se da nam toliki broj decimala nije bio neophodan ali je dat u reenju samo radi
kontrole.
Dakle,
1025,608(10) = 10000000001,100110111010 (2)
a) Za zapis celobrojnog dela ovog broja (kada se on tretira kao neoznaeni broj) treba uzeti
najmanje 11 bita. Tolika je, naime, duina binarnog zapisa celobrojnog dela i to je
neophodan i minimalan broj bita koji se mora "potroiti" da bi se ovaj broj prikazao, bez
obzira na eljenu tanost. Ako bi pokuali da zapiemo ovaj broj sa manje od 11 bita, dobili
bi broj koji ne odgovara originalu. Kako smo na zapis celobrojnog dela "potroili" 11 bita, a
radimo u esnaestobitnom formatu, ostatak do 16 (pet bita) treba upotrebiti za zapis binarnih
cifara levo od zareza. Sa gledita tanosti zapisa, potrebno je uzeti to vei broj binarnih
cifara levo od zareza, a u ovom sluaju je to 5 jer je toliko ostalo. Ako bi celobrojni deo
zapisali sa vie od 11 bita (to je mogue) ostalo bi nam manje bita za zapis razlomljenog
dela to bi umanjilo tanost zapisa. Na osnovu ovoga, esnaest bita koja treba uzeti za zapis
sa maksimalnom moguom tanou su biti koji su podebljani:
1025,608(10) = 0000010000000001,100110111010 (2)
Za bite koji nisu podebljani iza zareza, na alost, nema mesta u 16-bitnim formatima.
Tanost bi bila vea kada bi uzeli vie njih ali to ne smemo da uradimo na raun celobrojnog
dela. Nule koje su dopisane spreda ne utiu na vrednost pozitivnog broja, a dopisane radi
ilustracije izbora optimalnog formata.
Dakle, ovaj broj treba zapisati u formatu Q 11, 5 (jedanaest bita ispred i pet iza zareza):
1025,608(10) = 1000 0000 0011 0011 (2) = 8033 (16) u formatu Q 11, 5
Da se podsetimo:
U formatu fiksnog zareza, zarez se ne pojavljuje u zapisu broja, ve format nosi
informaciju o njegovom poloaju.
Ako bi broj bita u zapisu razlomljenog dela bio konaan i manji od 5, tanost zapisa bi bila
maksimalna (potpuna) i sa manjim brojem bita. Na primer, za decimalni broj 0,5 potrebna je
32

samo jedna binarna cifra za zapis razlomljenog dela (0,5(10) = 0,1(2)) i taj jedan bit iza zareza
obezbeuje potpunu tanost. Kada je broj bita u binarnom zapisu iza zareza vei od
raspoloivog broja, potrebno je celobrojni deo zapisati sa najmanjim moguim brojem bita.
b) Da bi se broj 1025,608 predstavio kao oznaen treba uzeti najmanje 12 bita ispred zareza.
Sada vie nije dovoljan jedanaestobitni zapis celobrojnog dela iako je upravo toliki broj bita
koji dobijamo prevoenjem 1025(10) u binarni sistem. Broj 1025(10) je pozitivan, a ako bi bio
zapisan u jedanaestobitnom formatu, bit najvee pozicione vrednost bi bio jedinica to bi
ukazivalo da je broj negativan. I zaista, sa 11 bita u sistemu oznaenih brojeva mogue je
prikazati brojeve od - 210 do 210-1, dakle od -1024(10) do +1023(10), a zadati broj 1025(10) ne
spada u taj opseg. Predstavljen sa 12 bita,
1025(10) = 0100 0000 0001 (2)
(zapis duine 12 bita)
sada od binarnog kda razlomljenog dela moemo uzeti samo 4 bita jer je toliko preostalo:
0,608(10) = 0,100110111010
etiri bita koja mogu da uu u zapis (12 je neophodno za zapis)
Ako ponovo posmatramo traeni broj pretvoren u binarni kd, videemo u emu se razlikuje
optimalni zapis oznaenog od optimalnog zapisa neoznaenog broja.
1025,608(10) = 0000010000000001,100110111010 (2)
Uporedite ovo reenje sa reenjem pod a) i podsetite se zato je nuna nula na mestu
najznaajnijeg bita kada se pozitivan broj prikazuje kao oznaen.
Prema tome, 1025,608(10) kao oznaen broj treba zapisati u formatu QS12, 4:
1025,608(10) = 0100 0000 0001 1001 (2) = 4019(16) u formatu QS12, 4.
Primer 17.

U esnaestobitnom zapisu sa fiksnim zarezom, koristei format koji je optimalan sa


gledita tanosti zapisa, predstaviti decimalni broj -71,75(10). Odgovor dati kao
esnaestobitni (etvorocifreni) heksadecimalan broj.

Reenje:
Broj je negativan pa se samim tim moe predstaviti jedino kao oznaen broj. Kao i kod celih
negativnih brojeva i ovde treba poi od broja +71,75 pa njegovom binarnom kdu odgovarajue
duine promeniti znak tako to se pronae drugi komplement tog zapisa. Binarni kd broja
+71,75 se dobija tako to se prvo pronae binarni kd broja 71 uzastopnim deljenjem sa 2, a
zatim binarni kd broja 0,75 uzastopnim mnoenjem. Broj bita iza zareza je konaan i
prevoenjem na binarni zapis se ne gubi tanost.
71(10) = 1000111 (2)
0,75(10) = 0,11 (2)
Dakle, broj +71,75 = 1000111,11 (2)
Kako je broj binarnih cifara iza zareza konaan (postoje samo dve binarne cifre), to postoji vie
esnaestobitnih formata pomou kojih se moe zapisati ovaj broj sa potpunom tanou. To
moe biti format QS14, 2 sa 14 bita za celobrojni deo (neophodno je bar 8) i 2 bita iza zareza
33

(tano toliko je i potrebno). Podjednako dobar je i format QS13, 3 kao i QS12, 4 i tako dalje sve do
formata QS8, 8.
Da se podsetimo:
I ovde je nuno broj predstaviti kao oznaen jer emo mu kasnije menjati znak, a operacija
promene znaka (drugi komplement) nema smisla nad neoznaenim brojevima. To je i razlog
to je potrebno najmanje osam bita za zapis broja +71. Obratite panju da ovaj broj kada se
pretvori u binarni ima sedam bita koliko je potrebno kada bi ga tretirali kao neoznaen, ali
za zapis oznaenog broja +71 nuna su osam bita.
Ako usvojimo format QS14, 2
+71,75(10) = 0000 0001 0001 1111 (2) u formatu QS14, 2
Negativan broj se dobija kao drugi komplement pozitivnog broja iste apsolutne vrednosti. Drugi
komplement se dobija pojedinanim invertovanjem svakog bita (to je prvi komplement) i
dodavanjem jedinice na bit najmanje pozicione vrednosti (bez obzira gde je poloaj zareza). Zato
je :
-71,75(10) = 1111 1110 1110 0001(2) = FEE1 (16) (QS14 , 2 )
Podjednako dobro reenje je i, na primer:
-71,75(10) = 1011 1000 0100 0000(2) = B840 (16) (QS8 , 8 )
kao i svi formati izmeu ova dva.

! esta greka: Pogreno je najpre pronai kd za broj -71

(10)

pa tom kdu dodati kd za

0,75(10).
+71(10)= 0000 0000 0100 0111 (2) pa je 71(10)=1111 1111 1011 1001 (2) (kao drugi
komplement zapisa za +71(10))
0,75(10) = 0,11 (2)
Kombinacijom ova dva dolazi se do pogrenog rezultata:
71,75(10)=11 1111 1011 1001,11 (2)
Rezultat oigledno nije taan. Uporedite rezultat i postupak sa reenjem. Najistije je
razlomljeni broj tretirati kao celinu. Ako se tako ne tretira, moramo paziti da delovi sa
kojima radimo nezavisno zaista daju polazni broj. Tako, broj -71,75 nije zbir brojeva -71 i
0,75. Ma kako oigledno delovala ova prosta aritmetika injenica, zbog iznenaujue
velikog procenta pojave ove greke, na nju treba obratiti posebnu panju. Greka je naroito
Primer 18.

Koji se heksadecimalan broj nalazi u memoriji esnaestobitnog raunara kao zapis


decimalnog broja:
a) 0,875(10)
b) -0,875(10),
ako se zna da je zapisan kao oznaeni broj u formatu QS1,15?

Reenje:
a) 0,875(10)  0,111(2)
34

0,875(10)  0111 0000 0000 0000(2) u formatu QS1,15  7000(16)


b)

-0,875(10) 0,875(10)  0111 0000 0000 0000(2)


1000 1111 1111 1111(2)
+1
1001 0000 0000 0000(2)

1. kom
2. kom

-0,875(10)  1001 0000 0000 0000(2) u formatu QS1,15  9000(16).


Primer 19.

U esnaestobitnom zapisu sa fiksnim zarezom, koristei format koji je optimalan sa


gledita tanosti zapisa, predstaviti decimalan broj -1,5. Odgovor dati kao
esnaestobitni (etvorocifreni) heksadecimalni broj.

Reenje:
+1,5(10) =01,1 (2) ili 0000 0000 0000 0011(2) u formatu QS15,1 primenom drugog komplementa:
1,5(10) = 1111 1111 1111 1101 (2) = FFFD (16) u formatu QS15 , 1
Podjednako dobra reenja se mogu dati i u drugim formatima: QS14, 2 , QS13, 3 i tako dalje, sve do
QS2, 14.
Primer 20.

Koji je najmanji, a koji najvei pozitivan broj koji se moe prikazati u formatu
QS6,2?

Reenje:
Najmanji pozitivan broj u formatu QS6 , 2 je 000000,01 (2) to iznosi 2-2 = 0,25(10).
Najvei pozitivan broj u formatu QS6 , 2 je 011111,11 (2) to iznosi 31,75(10).
Da se podsetimo:
Bit najvee pozicione vrednosti pozitivnog broja mora biti nula.

Primer 21.

Koji je najmanji po apsolutnoj vrednosti, a koji najvei po apsolutnoj vrednosti


(najnegativniji) negativan broj koji se moe prikazati u formatu QS6 , 2?

Reenje:
Najmanji negativan broj u formatu QS6 , 2 je 111111,11 (2) to iznosi 0,25(10)
Najvei negativan broj u formatu QS6 , 2 je 100000,00 (2) to iznosi 32(10)

Brojevi mogu da se sabiraju ili oduzimaju samo ako su u istom formatu.

Primer 22.

Opisati binarno sabiranje brojeva 64,87(10) i 3,14(10) u osmobitnoj aritmetici


fiksnog zareza. Koji decimalni broj je rezultat ovakvog sabiranja?

35

Reenje:
64,87(10) se mora predstaviti u oznaenom formatu (jer treba da se sabira sa negativnim brojem).
Stoga je nuno celobrojni deo predstaviti sa minimalno 8 bita (sa 7 bita, opseg oznaenih brojeva
je od -63(10) do +63(10), to nije dovoljno) dakle jedini osmobitni format koji dolazi u obzir je
Qs8,0. Predstavljajui 64,87(10) u ovom formatu gubimo informaciju o razlomljenom delu, ali u
osmobitnoj aritmetici to je najbolje to moe da se uradi.
64,87(10) je 01000000(2) u formatu Qs8,0. Da bi mogao da se sabira sa njim, i -3,14(10) se mora
predstaviti u istom formatu (Qs8,0).
+3,14(10) = 011,00100(2) to je 00000011(2) u formatu Qs8,0 .
-3,14(10) se dobija kao drugi komplement ovog zapisa:
-3,14(10) = 11111101(2) formatu Qs8,0
01000000 = 64,87(10) (Qs8,0)
+ 11111101 = 3,14(10) (Qs8,0)
1 00111101 = 61(10)
(Qs8,0)
Dakle, rezultat je 61(10)
Primer 23.

Opisati binarno sabiranje brojeva 32,17(10) i 9,81(10) u osmobitnoj aritmetici


fiksnog zareza. Koji decimalni broj je rezultat ovakvog sabiranja?

Reenje:
32,17 je 01000000(2) u formatu Qs7,1 zbog toga se i -9,81(10) mora predstaviti u istom formatu.
+9,81(10) = 1001,1101(2) to je 00010011(2) formatu Qs7,1 .
-9,81(10) se dobija kao 2. komplement ovog zapisa:
-9,81(10) = 11101101(2) formatu Qs7,1
01000000 = 32,17(10) (Qs7,1)
+ 11101101 = -9,81(10) (Qs7,1)
1 00101101 = 22,5(10) (Qs7,1)
Dakle, rezultat je 22,5(10)

Binarnim kodovanjem cifara decimalnog brojnog sistema (BCD) svaka cifra decimalnog
brojnog sistema se zamenjuje ekvivalentnom binarnom vrednou koja se sastoji od etiri
binarne cifre. Najee se primenjuju kodovi 8421, kod vie 3 i Gray-ov kod.
x Binarnim kodovanjem cifara decimalnog brojnog sistema, obezbeuje se tano prikazivanje
racionalnih decimalnih brojeva, bez greke usled zokruivanja koja nastaje pri klasinoj
konverziji brojnih vrednosti iz decimalnog u binarni brojni sistem.

36

Kod 8421 je teinski kod koji se dobija direktnom konverzijom vrednosti svake cifre iz
decimalnog brojnog sistema ekvivalentnom vrednou u binarnom brojnom sistemu.
Kod vie 3 nije teinski kod. Ovaj kod ima osobinu autokomplementiranja koju ne poseduje
kod 8421. Na primer, prvi komplement koda vie 3 za cifru 0 je 1100, to predstavlja
istovremeno kod vie 3 za cifru 9, dok prvi komplement koda vie 3 za cifru 9 ima istu
vrednost kao kod vie 3 za cifru 0, odnosno 0011.
Gray-ov kod nije teinski kod. Dva susedna binarna koda u Gray-ovom kodu razlikuju se u
vrednosti samo jednog bita koda.
Decimalna
cifra
0
1
2
3
4
5
6
7
8
9
Primer 24.

8421
BCD kod
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001

vie 3
BCD kod
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100

Gray-ov
BCD kod
0000
0001
0011
0010
0110
0111
0101
0100
1100
1000

U memoriji esnaestobitnog raunara nalazi se podatak 8C38


decimalnom broju je re ako se zna da je zapisan kao:
a) Neoznaen ceo broj
b) Oznaen ceo broj
c) etvorocifreni broj u kodu vie 3 (vii bajt je prvi)
d) Neoznaeni broj u formatu Q 12,4
e) Dva oznaena osmobitna broja u formatu Q 4,4
f) Dva neoznaena osmobitna broja u formatu Q 2,6

(16).

O kom

Reenje:
a) 215 + 211 + 210 + 25 + 24 + 23 = 35896(10)
b) 215 + 211 + 210 + 25 + 24 + 23 = 29640(10)
c) 5905(10)
d) Prvi nain:
U neoznaenom formatu Q12,4 dvanaest bita se nalazi ispred, a etiri bita iza zareza. Teinski
koeficijenti za svaki bit rastu ulevo od zareza od 20 do 211, a desno od zareza rastu u
negativnu stranu od 2 - 1 do 2 - 4.
8C38(16) (Q12,4) = 1 0 0 0 1 1 0 0 0 0 1 1, 1 0 0 0 (2)
27 26
2 1 20 2 1
211
Traeni decimalni broj se dobija sabiranjem ovih teinskih koeficijenata:
8C38(16) = 211 + 27 + 26 + 21 + 20 + 2 1 = 2243,5(10)

37

Drugi nain:
8C38(16) se direktno pretvara u decimalni kd, a dobijeni rezultat treba da se podeli sa 24
(odnosno da se pomnoi sa 1/24):
8C3816) = 2-4 (215+211+210+25+24+23) = 35896/16 = 2243,5(10)
Da se podsetimo:
Celobrojna vrednost u drugom nainu konverzije se u optem sluaju deli sa 2R , gde je R
broj bita iza zareza, odnosno broj bita u razlomljenom delu (u prethodnom primeru R=4).
e) Prvi nain:
8C(16) (QS4,4) = 1000, 1100 (2) = 23 + 2 1 + 2 2 = 7,25(10)
38(16) (QS4,4) = 0011, 1100 (2) = 2 1 + 20 + 2 1 + 2 2 = 3,5(10)
Drugi nain:
8C(16) = 2-4 (-27+23+22) = 116/16 = 7,25(10)
38(16) = 2-4 (25+24+23) = 56/16 = 3,5(10)
f) Prvi nain:
8C(16) (Q 2,6) = 10, 001100 (2) = 21 + 2 3 + 2 4 = 2,1875(10)
38(16) (Q 2,6) = 00, 111100 (2) = 2 1 + 2 2 + 2 3 + 2 4 = 0,875(10)
Drugi nain:
8C(16) = 2-6 (27+23+22) = 140/64 = 2,1875(10)
38(16) = 2-6 (25+24+23) = 56/64 = 0,875(10)
Primer 25.

U memoriji esnaestobitnog raunara nalazi se podatak 9840(16). O kom


decimalnom broju je re ako se zna da je zapisan kao:
a) Neoznaen ceo broj
b) Oznaen ceo broj
c) etvorocifreni broj u kodu 8421 (vii bajt je prvi)
d) Neoznaeni broj u formatu Q 12,4
e) Dva oznaena osmobitna broja u formatu Q 4,4
f) Dva neoznaena osmobitna broja u formatu Q 3,5

Reenje:
a)
b)
c)
d)
e)
f)

38976(10)
26560(10)
9840(10)
2436,0(10)
6,5(10) i 4,0(10)
4,75(10) i 2,0(10)

Primer 26.

38

U dve uzastopne lokacije osmobitnog raunara nalaze se podaci 01101001(2) i


10001010(2), pri emu je prvi podatak na nioj adresi. O kojim decimalnim
brojevima je re ako se zna da su zapisani kao:

a) Dva neoznaena binarna broja


b) Dva oznaena binarna broja
c) Dvocifreni broj u kodu 8421 (u podatku na nioj adresi) i dvocifreni broj u
kodu vie 3 (u podatku na vioj adresi)
d) Neoznaeni brojevi u formatu Q 3,5
e) Neoznaeni brojevi u formatu Q 7,1
Reenje:
a)
b)
c)
d)
e)

105(10) i 138(10)
105(10) i 118(10)
69(10) i 57(10)
3,28125(10) i 4,3125(10)
52,5(10) i 69,0(10)

Primer 27.

U dve uzastopne lokacije osmobitnog raunara nalaze se podaci 10100011(2) i


00111010(2), pri emu je prvi podatak na nioj adresi. O kojim decimalnim
brojevima je re ako se zna da su zapisani kao:
a) Dva neoznaena binarna broja
b) Dva oznaena binarna broja
c) Jedan etvorocifreni broj u kodu vie 3 (vii bajt je na nioj adresi)
d) Neoznaeni brojevi u formatu Q 4,4
e) Neoznaeni brojevi u formatu Q 7,1

Reenje:
a)
b)
c)
d)
e)

163(10) i 58(10)
93(10) i 58(10)
7007(10)
10,1875(10) i 3,625(10)
81,5(10) i 29,0(10)

Primer 28.

Koje decimalne vrednosti odgovaraju binarnim zapisima:


a) 1100 1010 d) 0100 0110
b) 1010 1010 e) 0011 1010
c) 1001 0101 f) 0111 1001
ako je format Q S8,0; Q5,3 ; Q7,1; Q4,4; Q S6,2 ; Q3,5 ; Q2,6 i Q S1,7.

Primer 29.

Konvertovati 8-bitne brojeve x(2) iz binarnog u decimalan brojni sistem x(2)  x(10):
a) Ako su brojevi neoznaeni;
b) Ako je zapis u formatu QN-R,R pri emu je N = 8, a R {2, 3, 4 ,5};
c) Ako je zapis u formatu QSN-R,R pri emu je N = 8, a R {2, 3, 4 ,5}.
1) 11100011
2) 10001010
3) 01000111
4) 11110110

5) 00011011
6) 11101111
7) 11001100
8) 01001101

9) 00111110
10) 01010101
11) 01011100
12) 00110100.
39

4. SABIRANJE PRIMENOM KODOVA 8421 I VIE 3


Sabiranje brojeva koji su predstavljeni kodovima 8421 i vie 3 ne moe da se izvri
direktnom primenom pravila binarne aritmetike
x Neophodna je hardverska ili softverska korekcija.
x Sporija je obrada od binarne aritmetike.
x Programer vodi rauna o pravilnoj interpretaciji kodiranih brojeva.
Koraci sabiranja u kodu 8421:
Prvi korak:
x BCD brojevi se sabiraju bit po bit prema pravilima binarne aritmetike.
Drugi korak:
x Ako nema prenosa u sledeu tetradu i ako je broj < 1010(2) nema korekcije.
x Ako je broj t 1010(2) i nema prenosa u sledeu tetradu, dodaje se 6(10)(0110(2))
x Ako postoji prenos u sledeu tetradu, tetradi se dodaje 6(10) ( 0110(2) )
Koraci sabiranja u kodu vie 3:
Prvi korak:
x BCD brojevi se sabiraju bit po bit prema pravilima binarne aritmetike.
Drugi korak: Ako se pojavi prenos u sledeu tetradu, tetradi se dodaje 3(10) (0011(2) )
x Ako nema prenosa u sledeu tetradu od te tetrade se oduzima 3(10) (tetradi se
dodaje drugi komplement broja -3(10), odnosno 1101(2)).

Primer 1.

Prikazati dekadni broj 15,147(10) u kodu 8421 i kodu vie 3.

Reenje:
15,147(10) = 0001 0101 , 0001 0100 0111(8421)
15,147(10) = 0100 1000 , 0100 0111 1010( vie 3 )
Primer 2.

Dati su brojevi:
a) 100100,00111 u kodu 8421
b) 111011,01111 u kodu vie 3.
Napisati ove brojeve u decimalnom brojnom sistemu.

Reenje:
a)
b)

Primer 3.

40

100100 , 00111(8421) = 0010 0100 , 0011 1000 = 24,38(10)


111011 , 01111( vie 3 ) = 0011 1011, 0111 1000 = 8,45(10).

Prikazati u kodu 8421 brojeve 6187(10) i 2495(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
6187(10)
2495(10)

Primer 4.

0110 0001 1000 0111(8421)


+ 0010 0100 1001 0101(8421)
1000 0110 0001 1100
+
0110 0110
1. korekcija
1000 0110 1000 0010 = 8682(10)

Prikazati u kodu 8421 brojeve 7531(10) i 1484(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
7531(10)
1484(10)

Primer 5.

0111 0101 0011 0001(8421)


+ 0001 0100 1000 0100(8421)
1000 1001 1011 0101
+
0110
1. korekcija
1000 1010 0001 0101
+
0110
2. korekcija
1001 0000 0001 0101(8421) = 9015(10)

Prikazati u kodu 8421 brojeve 6187(10) i 2495(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
6187(10)
2495(10)

Primer 6.

0110 0001 1000 0111(8421)


+ 0010 0100 1001 0101(8421)
1000 0110 0001 1100
+
0110 0110
1. korekcija
1000 0110 1000 0010 = 8682(10)

Prikazati u kodu 8421 brojeve 7531(10) i 1484(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
7531(10)
1484(10)

Primer 7.

0111 0101 0011 0001(8421)


+ 0001 0100 1000 0100(8421)
1000 1001 1011 0101
+
0110
1. korekcija
1000 1010 0001 0101
+
0110
2. korekcija
1001 0000 0001 0101(8421) = 9015(10)

Prikazati u kodu 8421 brojeve 5324(10) i 1768(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

41

Reenje:
5324(10)
1768(10)

Primer 8.

0101 0011 0010 0100(8421)


+ 0001 0111 0110 1000(8421)
0110 1010 1000 1100
+
0110
0110
korekcija
0111 0000 1001 0010(8421) = 7092(10)

Prikazati u kodu 8421 brojeve 3712(10) i 1456(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
3712(10)
1456(10)

Primer 9.

0011 0111 0001 0010(8421)


+ 0001 0100 0101 0110(8421)
0100 1011 0110 1000
+
0110
korekcija
0101 0001 0110 1000(8421) = 5168(10).

Prikazati u kodu 8421 brojeve 1357(10) i 5468(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
1357(10)
5468(10)

Primer 10.

0001 0011 0101 0111(8421)


+ 0101 0100 0110 1000(8421)
0110 0111 1011 1111
+
0110 0110
korekcija
0110 1000 0010 0101(8421) = 6825(10).

Prikazati u kodu 8421 brojeve 2875(10) i 6943(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
2875(10)
6943(10)

Primer 11.

42

0010 1000 0111 0101(8421)


+ 0110 1001 0100 0011(8421)
1001 0001 1011 1000
+
0110 0110
korekcija
1001 1000 0001 1000(8421) = 9818(10).

Prikazati u kodu 8421 brojeve 1337(10) i 2468(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:

Primer 12.

1337(10)
2468(10)

0001 0011 0011 0111(8421)


+ 0010 0100 0110 1000(8421)
0011 0111 1001 1111
+ ____________ 0110
korekcija
0011 0111 1010 0101
+________ 0110_____
korekcija
0011 1000 0000 0101(8421) = 3805(10).

Prikazati u kodu 8421 brojeve 2075(10) i 5943(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
2075(10)
5943(10)

0010 0000 0111 0101(8421)


+ 0101 1001 0100 0011(8421)
0111 1001 1011 1000
+ ________ 0110 ____
korekcija
0111 1010 0001 1000
+ ____ 0110_________
korekcija
1000 0000 0001 1000(8421) = 8018(10).

Primer 13. Prikazati u kodu 8421 brojeve 2369(10) i 1653(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.
Reenje:
2369(10)
1653(10)

Primer 14.

0010 0011 0110 1001(8421)


+0001 0110 0101 0011(8421)
0011 1001 1011 1100
+ ________ 0110 0110
korekcija
0011 1010 0010 0010
+ ____0110_________
korekcija
0100 0000 0010 0010(8421) = 4012(10).

Prikazati u kodu vie 3 brojeve 8153(10) i 1298(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
8153(10) = 1011 0100 1000 0110( vie 3 )
1298(10) = + 0100 0101 1100 1011( vie 3 )
1111 1010 0101 0001
+ 1101 1101 0011 0011 korekcija
1100 0111 1000 0100( vie 3) = 9451(10)
Primer 15.

Prikazati u kodu vie 3 brojeve 5947(10) i 3106(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

43

Reenje:
5947(10)
3106(10)

Primer 16.

1000 1100 0111 1010( vie 3 )


+ 0110 0100 0011 1001( vie 3 )
1111 0000 1011 0011
+ 1101 0011 1011 0011 korekcija
1100 0011 1000 0110( vie 3 ) = 9053(10)

Prikazati u kodu vie 3 brojeve 2875(10) i 6943(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
2875(10)
0101 1011 10101000 ( vie 3 )
6943(10) + 1001 1100 0111 0110 ( vie 3 )
1111 1000 0001 1110
+ 1101 0011 0011_1101 korekcija
1100 1011 0100 1011( vie 3 ) = 9818 (10).
Primer 17.

Prikazati u kodu vie 3 brojeve 5324(10) i 1768(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
5324(10) 1000 0110 0101 0111 ( vie 3 )
1768(10) + 0100 1010 1001 1011 ( vie 3 )
1101 0000 1111 0010
+ 1101 0011 1101 0011 korekcija
1010 0011 1100 0101( vie 3 ) = 7092(10).
Primer 18.

Prikazati u kodu vie 3 brojeve 3712(10) i 1456(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
3712(10)
1456(10)

Primer 19.

0110 1010 0100 0101 ( vie 3 )


+ 0100 0111 1000 1001 ( vie 3 )
1011 0001 1100 1110
+ 1101 0011 1101 1101 korekcija
1000 0100 1001 1011( vie 3 ) = 5168 (10).

Prikazati u kodu vie 3 brojeve 5318(10) i 2471(10), a zatim izraunati njihov zbir i
vratiti rezultat u decimalni brojni sistem.

Reenje:
5318(10) 1000 0110 0100 1011 ( vie 3 )
2471(10) + 0101 0111 1010 0100 ( vie 3 )
1101 1101 1110 1111
+ 1101 1101 1101 1101 korekcija
1010 1010 1011 1100( vie 3 ) = 7789(10).
44

Primer 20.

Prikazati navedene brojeve u kodu:


a) 8421
b) vie 3
a zatim izraunati njihov zbir i vratiti rezultat u decimalni brojni sistem:
1) 1111(10) + 2567(10)
2) 2345(10) + 2876(10)
3) 3987(10) + 5555(10)

Primer 21.

4) 4545(10) + 4444(10)
5) 2323(10) + 7654(10)
6) 6789(10) + 1459(10)

7) 1234(10) + 8765(10)
8) 2033(10) + 6754(10)
9) 1099(10) + 8188(10).

Prikazati navedene brojeve u kodu:


a) 8421
b) vie 3
a zatim izraunati njihov zbir i vratiti rezultat u decimalni brojni sistem:
1) 3333(10) + 4343(10)
2) 1234(10) + 3629(10)
3) 1756(10) + 3013(10)

4) 465(10) + 6235(10)
5) 218(10) + 1743(10)
6) 572(10) + 9006(10)

7) 919(10) + 135(10)
8) 371(10) + 817(10)
9) 666(10) + 444(10)

45

5. ANALIZA I SINTEZA LOGIKIH FUNKCIJA


Aksiome i teoreme Bulove algebre
Neka je dat skup S = {x, y, z, ...} koji sadri najmanje dva razliita elementa, i neka su na
ovom skupu definisana dva binarna operanda: + (logiko sabiranje, ILI) i (logiko
mnoenje, I), i jedan unarni operand (negacija, NE).
Bulova algebra sadri dva specijalna elementa 0 i 1, takva da sve promenljive x, y, z, ...
uzimaju vrednost iz skupa {0, 1}. Da bi ovaj skup S, i operacije +, i sainjavali Bulovu
algebru, neophodno je da budu zadovoljene aksiome Hantingtona:
A-1: Binarne operacije + i su komutativne na skupu S, i meusobno su distributivne tako
da za svako x, y, z, koji pripadaju skupu S, vai:
x+y = y+x
x y = yx
A-2: Binarne operacije + i na skupu S poseduju neutralne elemente 1 i 0, tako da za svako x
koje pripada skupu S, postoje elementi 1 i 0, koji takoe pripadaju skupu S, tako da
vai:
x+ 0= 0+ x = x
x 1 1 x x.
A-3: Na skupu S, za svako x koje pripada skupu S, postoji jedinstven inverzni element x ,
koji takoe pripada skupu S, takav da je :
x+ x =1
x x = 0.
Osim aksioma, primenjuju se i teoreme, koje mogu da se dokau:

T-1 Teorema idempotentnosti:

x+x = x
x x = x.

T-2 Teorema o nultim elementima:

x +1=1
x 0 = 0.

T-3 Teorema o involuciji:

x=x

T-4 Teorema o apsorpciji:

x+ xy = x
x (x + y) = x.

T-5 Teorema o asocijativnosti:

x + (y + z) = (x + y) + z

T-6 De-Morganove teoreme:

(x + y) = x y
(x y) = x + y.

Primer 1.

Dokazati identitet: ( A  B ) ( A  C )

A  B C

Reenje:

( A  B) ( A  C )

A A  AC  A B  B C A  AC  A B  B C
A (1  C )  A B  B C A  A B  B C
A (1  B )  B C
A  B C

46

Primer 2.

Dokazati identitet: ( A  C ) ( A  D) ( B  C ) ( B  D)

A B  C D

Reenje:
Na osnovu identiteta iz Primera 1, moe da se izvri direktno uproavanje logikih proizvoda:

( A  C ) ( A  D) ( B  C ) ( B  D)

( A  C D) ( B  C D)
A B  C D ( A  B  1)
A B  C D

Primer 3.

Dokazati identitet: A  A B

A B

Reenje:

A  A B

A (1  A  B)  A B

A  A A  A B  A B
A A  A A  A B  A B
A ( A  B)  A ( A  B)
( A  B ) ( A  A)

Primer 4.

A B

Dokazati identitet: A  B  A B 1

Reenje:

A  B  A B

Primer 5.

( A  B)  ( A  B) 1

Dokazati identitet: ( A  B) ( A  B)

Reenje:

( A  B) ( A  B)

A A  A B  A B  B B
A  A ( B  B)

Primer 6.

A A

Uprostiti zadatu logiku funkciju:


F ( A, B, C ) A B C  A B C  A B C  A B C

Reenje:

F ( A, B, C )

A C ( B  B)  A C ( B  B)

AC  AC

A (C  C )

Primer 7.

Uproavanjem izraza za zadatu logiku funkciju dokazati da vrednost funkcije F


ne zavisi od vrednosti promenljive B:
F A ( B C  D)  A C

Reenje:

A (C  D)
47

Osnovne logike operacije nad binarnim ciframa


Postoje dve vrste logikih operacija, zavisno od broja operanada koje u njima uestvuju, i to su:
x
x

unarne, logike operacije nad jednim operandom (negacija)


binarne, logike operacije nad dva operanda (sve druge operacije)

Negacija (NE, NOT) je najprostija logika operacija koja se obavlja nad jednim operandom.
Zove se jo inverzija ili komplementiranje. Operacija NE konvertuje vrednost 1 u vrednost 0 i
obrnuto. U tabeli istinitosti za NE operaciju X je ulazna veliina (operand), a Z je izlazna
veliina (rezultat).
Z

0
1

1
0
Z=X

ILI operacija (OR) se vri nad dve ili vie ulaznih vrednosti, a naziva se jo i logiko sabiranje
(disjunkcija). Da bi rezultat ILI operacije imao vrednost 1 mora bar jedna ulazna veliina da ima
vrednost 1. U tabeli istinitosti za ILI operaciju nad dve ulazne vrednosti X i Y, kao i tabeli
istinitosti za n ulaznih vrednosti X1 ,..., Xn dobija se rezultat Z = 1 kada su jedna ili vie ulaznih
vrednosti istovremeno jednake 1.
X

X1
X2

Xn-1
Xn

X1

X2

...

Xn-1

Xn

0
0
1
1

0
1
0
1

0
1
1
1

0
0
0
0
...
1
1

0
0
0
0
...
1
1

...
...
...
...
...
...
...

0
0
1
1
...
1
1

0
1
0
1
...
0
1

0
1
1
1
...
1
1

Z=X+Y

Z=X1+X2++Xn-1+Xn

48

Operacija I (AND) se vri nad dve ili vie ulaznih vrednosti, a naziva se jo i logiko mnoenje
(konjunkcija). Rezultat I operacije je jednak 0, ako je bar jedna ulazna vrednost jednaka nuli. Da
bi rezultat I operacije bio Z = 1, moraju svi ulazni signali istovremeno da budu jednaki jedinici:
X = Y=1 tj. X1 = X2 = ... = Xn =1.
X1
X2

X
Z

Xn-1
Xn

X1

X2

...

Xn-1

Xn

0
0
1
1

0
1
0
1

0
0
0
1

0
0
0
0
...
1
1

0
0
0
0
...
1
1

...
...
...
...
...
...
...

0
0
1
1
...
1
1

0
1
0
1
...
0
1

0
0
0
0
...
0
1

Z=X Y

Z=X1 X2 Xn-1 Xn

NILI operacija (NOR) daje rezultat 1 samo kada se na svim ulazima nalazi vrednost 0.
X
Z

0
0
1
1

0
1
0
1

1
0
0
0

Z=X+Y

NI operacija (NAND) daje rezultat 0 samo ako se na svim ulazima nalazi vrednost 1.

49

Ekskluzivno ILI (XOR) se naziva jo i iskljuivo ILI. Rezultat operacije je 1, ako je jedna i
samo jedna od ulaznih veliina jednaka 1, odnosno ako su vrednosti na ulazima uzajamno
razliite. Rezultat ove operacije odgovara zbiru binarnih cifara (ne uzimajui u obzir prenos), pa
se zato ova operacija naziva i sabiranje po modulu dva.

Ekskluzivno NILI (XNOR) se naziva jo iskljuivo NILI. Rezultat operacije je 1 ako i samo
ako su obe ulazne veliine jednake (obe imaju vrednost 0 ili 1). Ovo kolo se zbog toga zove i
jednobitni komparator.

Vieulazna logika kola mogu da se realizuju primenom dvoulaznih kola

Primer:
x ILI kolo sa tri ulaza (troulazno kolo) moe da se realizuje primenom dva dvoulazna ILI
kola

I kolo sa etiri ulaza (etvoroulazno kolo) moe da se realizuje primenom tri dvoulazna I
kola
X
Y

XY
PQ

P
Q

50

XYPQ

X
Y
P
Q

XYPQ

Osnovne logike operacije mogu da se realizuju primenom samo jednog tipa logikih
kola
x

Realizacija NE, ILI i I logike operacije primenom NI kola


NE

X
1

X
1

ILI
Y

X
Y

X Y = X + Y = X+Y

1
X

XY
1

XY

= XY

Realizacija NE, ILI i I logike operacije primenom NILI kola

51

Nacrtati emu logike mree kojom se data funkcija


F ( X , Y , Z ,W ) X Z  X Y  X Y W
realizuje pomou NE kola i dvoulaznih I i ILI kola.

Primer 8.

Reenje:
Da bi logika mrea mogla da se realizuje samo primenom dvoulaznih logikih kola, moe se
izvriti odgovarajue grupisanje promenljivih u okviru izraza logike funkcije:
F ( X , Y , Z , W ) X Z  X Y  X Y W X ( Z  Y W )  X Y
X

X Y

F ( X , Y , Z ,W )
X (Z  Y W )  X Y

Y W
Z  Y W

X ( Z  Y W )

Primer 9. Nacrtati emu logike mree kojom se data funkcija:


F ( X , Y , Z ,W ) ( X  W ) ( Z  Y ) ( X  Y  W )
realizuje pomou NE i dvoulaznih I i ILI kola.
Reenje:
X

F ( X , Y , Z ,W )

Primer 10.

52

Primenom NE kola i vieulaznih ILI i I logikih kola nacrtati emu logike mree
kojom se realizuje funkcija F data izrazom:
F (W , Z , Y , X ) W Z Y  Y X  W Z Y X  Y X

Reenje:
X

F (W , Z , Y , X )

Primer 11.

Primenom NE kola i vieulaznih ILI i I logikih kola nacrtati emu logike mree
kojom se realizuje funkcija F data izrazom:
F ( X , Y , Z , W ) ( X  Y  Z  W ) ( Z  W ) (Y  Z  W ) ( X  Y )

Reenje:
X

F ( X , Y , Z ,W )

Primer 12.

Nacrtati emu logike mree kojom se realizuje funkcija data izrazom:


F ( A, B, C , D) ( A  B  C ) ( B  C  D) ( A  C  D)
primenom NE kola i dvoulaznih ILI kola.

Reenje:
F ( A, B, C , D)

( A  B  C ) ( B  C  D) ( A  C  D)

F ( A, B, C , D )

( A  B  C ) ( B  C  D)  ( A  C  D)

F ( A, B, C , D)

( A  B  C )  ( B  C  D)  ( A  C  D)

53

F ( A, B ,C , D )

Primer 13.

Primenom NE kola i vieulaznih NILI kola nacrtati emu logike mree kojom se
realizuje funkcija F data izrazom:
F ( A, B, C , D)

( A  B  D) ( A  C ) ( B  C  D)

Reenje:
F ( A, B, C , D)

( A  B  D) ( A  C ) ( B  C  D)

F ( A, B, C , D)

( A  B  D)  ( A  C )  ( B  C  D)

F ( A, B ,C , D )

Primer 14.

Primenom NE kola i dvoulaznih I kola nacrtati emu logike mree kojom se


realizuje funkcija F data izrazom:
F ( A, B, C , D) ( A B C )  ( A B D)  ( D C )

Reenje:
F ( A, B, C , D)

54

( A B C ) ( A B D) ( D C )

F ( A, B ,C , D )

Primer 15.

Primenom NE kola i vieulaznih NI kola nacrtati emu logike mree kojom se


realizuje funkcija F data izrazom:

F ( A, B, C , D)

( A B D)  (C D)  ( A B C )

Reenje:
F ( A, B, C , D)

( A B D)  (C D)  ( A B C )

F ( A, B, C , D )

( A B D) (C D ) ( A B C )

F ( A, B ,C , D )

Primer 16.

Logika funkcija je zadata izrazom:


F ( A, B, C , D) A D  B C  A B C D  B C
a) Odrediti vrednost funkcije ako se na ulaz A dovede niz logikih nivoa
10100011, na ulaz B: 11010101, na ulaz C: 10101000 i na ulaz D: 10101011.
b) Nacrtati emu logike mree kojom se realizuje data funkcija, koristei NE i
dvoulazna I kola.

Reenje:
a) Da bi se lake odredila vrednost funkcije, moe se primeniti analitiko uproavanje datog
izraza primenom identiteta iz Primera 3.
55

A D  B C  A B C D  B C

F ( A, B, C , D)

D A  B C  C
A D  C  B D
A
1
0
1
0
0
0
1
1

B
1
1
0
1
0
1
0
1

C
1
0
1
0
1
0
0
0

D A  A B C  C B  B

A D  C  C B D
C  D ( A  B)

D A+B D(A+B) F(A,B,C,D)=C+D(A+B)


1
1
1
1
0
1
0
0
1
1
1
1
0
1
0
0
1
0
0
1
0
1
0
0
1
1
1
1
1
1
1
1
F(A,B,C,D)=10101011

b) ema logike mree realizuje se na osnovu analitike transformacije izraza za funkciju na


slian nain kao to je objanjeno u Primeru 12.

Odrediti vrednosti logike funkcije:


F ( X , Y , Z ,W ) (Y  Z ) ( X  W ) (Y  Z  W ) ( X  W )
ako su vrednosti ulaznih promenljivih:
a) X = 0, Y = 1, Z = 1, W = 1
b) X = 1, Y = 0, Z = 0, W = 0

Primer 17.

Reenje:
a) F ( X , Y , Z , W )

F (0,1,1,1)

b) F ( X , Y , Z , W )

F (1,0,0,0)

(1  1) (0  1) (1  1  1) (0  1)

0 1 1 1 0

(0  0) (1  0) (0  0  0) (1  0) 1 1 1 1 1

a) Odrediti izraz za funkciju F(X, Y, Z, W) koja opisuje rad kombinacione mree


prikazane na slici:

Primer 18.
X

F ( X , Y , Z ,W )

b) Odrediti vrednost funkcije F ako su vrednosti promenljivih


X = 1, Y = 1, Z = 0, W = 0
56

Reenje:
a) F X , Y , Z , W
b) F X , Y , Z , W
Primer 19.

Z W Y  X Y  X Y  Z  X Y
F 1, 1, 0, 0 1

a) Odrediti izraz za funkciju F(A, B, C, D) koja opisuje rad kombinacione mree


prikazane na slici:
B

F ( A, B ,C , D )

b) Odrediti vrednost funkcije F ako su vrednosti promenljivih


A = 0, B = 0, C = 1, D = 1
Reenje:
a) F A, B, C , D
b) F A, B, C , D
Primer 20.

A  B D  A C B C  D
F 0, 0, 1, 1 0

a) Odrediti izraz za funkciju F(A, B, C, D) prikazanu na slici.


A

F ( A, B, C , D )

b) Primenom analitike transformacije izraza za logiku funkciju dokazati da


funkcija moe da se realizuje primenom NE i vieulaznih NI logikih kola.

57

Reenje:
a) F ( A, B, C , D) B  C  D  A  C  A  D
b) Primenom De Morganove teoreme u izrazu dobijenom u a) i dvostrukom negacijom izraza,
dobija se:
F ( A, B, C , D) B C D A C A D
na osnovu koga je mogua implementacija funkcije primenom NE i vieulaznih NI kola.

Primer 21. Logika funkcija je zadata izrazom:


F ( A, B, C , D ) A B D  A C  A B C D
a) Izvriti analitiko uproavanje izraza logike funkcije
b) Nacrtati emu logike mree na osnovu uproenog logikog izraza primenom
NE i vieulaznih NI logikih kola.
c) Odrediti vrednost funkcije, ako se na ulaze dovodi niz logikih nivoa
A: 10100011, B: 01010001, C: 01110011 i D: 01011100.
Reenje:
a) Analitiko uproavanje izraza logike funkcije moe da se uradi grupisanjem
ulaznih promenljivih i primenom identiteta dokazanog u Primeru 3:
F ( A, B, C , D ) A B D  A C  A B C D
A B ( D  C D)  A C
A B (D  C)  A C
A B D  A C ( B  1)

A (B D  C)

b) Videti Primer 15.


c) F(A, B, C, D) = 01010000
Primer 22. Data je funkcija: F A, B, C A B  C .
a) Realizovati ovu funkciju pomou jednog vieulaznog logikih kola.
b) Ako se na ulaz A dovede niz logikih nivoa 011001, Na ulaz B niz 001010 i na
ulaz C niz 101010, kakav e se niz dobiti na izlazu.
Reenje:
a) F ( A, B, C ) A B  C
b) F ( A, B, C ) 111011

A  B  C , potrebno je jedno troulazno ILI kolo.

Primer 23. Odrediti vrednosti logike funkcije


F ( A, B, C , D ) A B C  B D  A C D  B C
ako su vrednosti ulaznih promenljivih:
a) A = 1, B = 0, C = 1, D = 1
b) A = 1, B = 1, C = 0, D = 0

58

Reenje:
a) F ( A, B, C , D) 1
b) F ( A, B, C , D) 0

Primer 24. Nacrtati emu kombinacione mree kojom se realizuje funkcija data izrazom:
F ( A, B, C , D) ( A  C  D) ( B  C  D) ( A  B  D) (C  D)
a) Primenom NE kola i dvoulaznih I i ILI logikih kola.
b) Primenom NE kola i dvoulaznih ILI kola.
Primer 25. Nacrtati emu kombinacione mree kojom se realizuje funkcija data izrazom:
F ( X , Y , Z , W ) (Y  W ) ( X  Z  W ) ( X  Y  Z ) ( Z  W )
a) Primenom NE kola i vieulaznih I i ILI logikih kola.
b) Primenom NE kola i vieulaznih NILI kola.
Primer 26. Nacrtati emu kombinacione mree kojom se realizuje funkcija data izrazom:
F ( A, B, C , D) B C D  A C D  A B D  A B D
a) Primenom NE kola i dvoulaznih I i ILI logikih kola.
b) Primenom NE kola i dvoulaznih I kola.
Primer 27. Nacrtati emu kombinacione mree kojom se realizuje funkcija data izrazom:
F ( X , Y , Z ,W ) A B D  A C D  B C  C D
a) Primenom NE kola i vieulaznih I i ILI logikih kola.
b) Primenom NE kola i vieulaznih NI kola.
Primer 28. Nacrtati eme kombinacionih mrea kojima se realizuju funkciju datu izrazom:
F ( X , Y , Z ,W ) ( X  Y ) (Y  Z ) ( X  Z  W ) ( X  Y  Z )
a) Primenom NE kola i vieulaznih ILI i I logikih kola.
b) Primenom NE kola i vieulaznih ILI kola.
Primer 29. Nacrtati emu kombinacione mree kojom se realizuju funkcije date izrazima:
F ( A, B, C , D ) B C D  A B C  B C D  A D
a) Primenom NE kola i vieulaznih ILI i I logikih kola.
b) Primenom NE kola i vieulaznih I kola.

59

6. MINIMIZACIJA LOGIKIH FUNKCIJA PRIMENOM


KARNOOVIH MAPA
Odreivanje minimalne disjunktivne forme (MDF)
x

Karnoova mapa za funkciju dve promenljive X i Y slika 1. a) sastoji se od 4 polja.


Svako od tih polja rezervisano je za jednu moguu konjunkciju promenljivih ili njihovih
negacija. Ukoliko se odreena konjunkcija pojavljuje u funkciji, onda se u dato polje
zapisuje 1, a ako se ne pojavljuje, ne zapisuje se nita. Na taj nain se preslikava funkcija
dve promenljive na odgovarajuu Karnoovu mapu. Na primer, ako je data funkcija
F(X, Y) = (X Y) + (X Y) , u njoj se pojavljuju dve konjunkcije: X Y i X Y . Mesto
konjunkcije X Y u mapi odreuje se na sledei nain:
o Poto konjunkcija xy sadri promenljivu x (bez negacije) onda se ona mora nalaziti
u oblasti gde je X =1 (a osenimo oblast X =0, slika 1. b)), a kako sadri i
promenljivu Y to mora biti i u oblasti gde je Y=1 (neosenena oblast na slici 1. c)).
Dakle, konjunkcija X Y se nalazi na polju koje je u preseku ove dve oblasti, u koje
upisujemo 1 (slika 1.d)). Na isti nain se odreuje polje koje sadri konjunkciju
X Y slika 1. e), a popunjena Karnoova mapa za itavu funkcije F data je na slici 1.
f)

0
1
2
3

F(X, Y) (X Y)  (X Y)
X
Y
0
0
1
1

0
1
0
1

0
0
1
1

Slika 1. Karnoova mapa za funkciju sa dve promenljive


x

60

Karnoova mapa za funkciju tri promenljive X, Y i Z, ima izgled prikazan na Slici 2.a). I
u ovom sluaju svako polje mape rezervisano je za jednu tano odreenu konjunkciju
promenljivih ili njihovih negacija. Kako se za zadatu konjunkciju pronalazi odgovarajue
polje? Pronalaenje odgovarajueg polja ide postepeno, eliminacijom polja koja ne
zadovoljavaju. Neka je data konjunkcija X Y Z .
o Poto se u zadatom izrazu promenljiva x javlja u afirmativnom obliku, u obzir
dolaze 4 leva polja (desna polovina mape se oseni jer ta polja ne dolaze u obzir,
slika 2. b)). Druga promenljiva je y, pa se 4 leva polja smanjuju samo na 2, i to u
gornjoj vrsti, a donja vrsta se oseni (slika 2. c)). Konano, trei element je Z , pa
treba oseniti polja u sredini u kojima je Z=1 (slika 2. d)). Preostalo, neoseneno
polje odreuje polje datog izraza i u njega upisujemo 1, slika 2. d). Analognim
postupkom moe se nai polje za bilo koju konjunkciju 3 promenljive.

F(X, Y, Z) (X Y Z)
X
Y
Z

0
1
2
3
4
5
6
7

0
0
0
0
1
1
1
1

X=1

0
0
1
1
0
0
1
1

X=1

X=0

Y=1

0
1
0
1
0
1
0
1

0
0
0
0
0
0
1
0

Y=1

Y=0
Z=1

Y=1

Y=0
Z=0

Z=0

Z=1

a)

Z=0

Z=0

X=0

Y=0
Z=1

Z=0

c)

b)

X=1

X=0

Y=1

Y=0
Z=0

X=1

X=0

Z=0

Z=1

Z=0

d)

Slika 2. Karnoova mapa za tri promenljive

Karnoova mapa za funkciju sa etiri promenljive X, Y, Z i W, ima izgled prikazan na


slici 3. a). Istim postupkom eliminacije odrediemo poloaj konjunkcije: XYZW.
o Poto su sve promenljive bez negacije, treba oseniti polja u kojima promenljive
uzimaju vrednost 0 (slika 3. a) i b)), a preostalo neoseneno polje je polje u koje
se upisuje 1 koja odgovara ovoj konjunkciji, slika 3. c).
o

F(X, Y, Z)
i

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

X
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

Y
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

XYZ W
Z

0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

W
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1

61

Slika 3. Karnoova mapa za etiri promenljive


Proces minimizacije u cilju dobijanja analitikog izraza u minimalnoj disjunktivnoj formi
(MDF) sastoji se u grupisanju jedinica u okviru mape u vee celine. Pri tome se nastoji da ove
celine budu to vee, ali one ne smeju da sadre polja koja nemaju 1. Kada se grupiu polja sa
treba primeniti sledea opta pravila:
x Treba grupisati po 1, 2, 4, 8, ili 16 jedinica. Grupe sa brojem jedinica koji nije oblika 2N
nisu dozvoljene.
x Treba se truditi da grupe budu to vee i po cenu preklapanja dela grupe sa drugom.
x Preklapanje grupa ne smeta ako se time prave vee grupe.
x Treba se truditi da ukupan broj grupa bude to manji.
x Moraju se grupisati sve jedinice.
x Treba formirati minimalan broj to veih grupa tako da se obuhvate sve jedinice.
Pomenuta pravila garantuju minimalnu funkciju u disjunktivnoj formi sa gledita potrebnog
broja logikih kola da bi se funkcija realizovala ali to ne znai da ne moe da postoji druga
funkcija koja bi bila bolja ili jednostavnija za konkretnu primenu. Takoe ne postoji garancija
da je disjunktivna forma optimalni izbor uvek.

Minimalna disjunktivna forma ima onoliko lanova koliko je grupa napravljeno. Svaki lan
je logiki proizvod (logika I funkcija) do etiri ulaza (za funkciju 4 promenljive) ili njihovih
invertovanih vrednosti. Ako grupu ine dve jedinice, lan ima tri elementa; ako grupu ine
etiri jedinice, lan ima dva elementa, a samo jedan element ako smo grupisali osam jedinica.
lanovi su meusobno povezani logikom ILI funkcijom.
Primeri grupisanja polja u Karnoovoj mapi sa 2 promenljive dati su na slici 4.

Slika 4. Grupisanje jedinica u Karnoovoj mapi sa dve promenljive

62

U Karnoovoj mapi sa 3 promenljive moe se uoiti da se podruje nezavisno promenljive Z


protee direktno sleva na desnu stranu tabele. To se moe zamisliti kao da je tabela nacrtana na
valjku, iji je omota po visini razvijen u ravan. Primeri grupisanja polja u Karnoovoj mapi sa
etiri promenljive prikazani su na Slici 5.

Slika 5. Grupisanje jedinica u Karnoovoj mapi sa tri promenljive


Primeri pravilnog grupisanja polja u Karnoovim mapama sa 4 promenljive dati su na Slici 6.
Kao i u prethodnim primerima, primenjeno je pravilo da treba formirati minimalan broj grupa
tako da budu obuhvaene sve jedinice u Karnoovoj mapi.

Slika 6. Grupisanje jedinica u Karnoovoj mapi sa etiri promenljive

Odreivanje analitikog oblika minimalne disjunktivne forme logike funkcije (MDF) na


osnovu formiranih grupa sastoji se u sledeem:
x
x

Za svaku formiranu grupu definie se konjunkcija promenljivih ili njihovih negacija, ali
samo onih koje su za celu grupu nepromenjene.
Kada su formirane konjunkcije za sve grupe, konana funkcija dobija se kao disjunkcija
ovih pojedinanih lanova. Primer mape sa 3 promenljive, gde su ve formirane grupe
prikazan je na slici 7

Slika 7. Odreivanje analitikog izraza za grupu jedinica


63

Na osnovu grupisanih polja sa slike 7 :


Prvo definiemo odgovarajuu konjunkciju za grupu od 4 srednje jedinice. U ovom sluaju
grupa ima jedinice u poljima X (X=1) i X (X=0), pa ta varijabla nee figurisati u
rezultujuem izrazu. U datoj grupi ima polja i sa Y=1 i sa Y=0, pa ni ova varijabla ne utie
na rezultujuu konjunkciju. Grupa je definisana u svim poljima sa Z=1 (oblast Z), tako da
varijabla Z ulazi u konjunkciju. Konano, prvi faktor minimalne logike funkcije je Z (nije
vezan konjunkcijom jer je samo jedna promenljiva).
x Druga grupa sastoji se od dva polja u donjem levom uglu mape. Vrednost varijable X je
jedinstvena u ovoj grupi, pa ulazi u konjunkciju. Zatim, u grupi postoji polje sa varijablom
Z, ali i sa Z , pa, prema tome, ova varijabla ne ulazi u konani izraz za ovu grupu. Kako je
za ovu grupu i varijabla Y jedinstvena, to i ona ulazi u izraz, pa je konaan oblik
konjunkcije za ovu grupu: X Y . Minimalni oblik ove funkcije dobija se povezivanjem
konjunkcija za pojedine grupe operatorom disjunkcije : F(X, Y, Z) Z  X Y

Prilikom minimizacije logikih funkcija mogue je poi i od tablice istinitosti, a ne samo od


disjunktivne normalne forme, slika 8. Da bi se tablica istinitosti preslikala na Karnoovu
mapu, posmatraju se svi redovi gde je funkcija jednaka 1 i odgovarajua kombinacija 1 i 0
promenljivih definie polje u mapi.
x Kada promenljiva ima vrednost 1, posmatra se u Karnoovoj mapi oblast u kojoj je ta
promenljiva jednaka jedinici, a ako ima vrednost 0, posmatra se njena negacija.
x Meutim, ako vrednost funkcije zavisi od vrednosti promenljivih X, Y i Z kao to je
prikazano na slici 8 a), onda se Karnoova mapa moe popuniti po ablonu, jer svakoj vrsti
iz tabele uvek odgovara tano odreeno mesto u Karnoovoj mapi, kao to je prikazano na
Slici 8 b). Kako je poloaj konjunkcija fiksiran, to se samo umesto P0, P1, ... P7 upiu
jedinice ili nule (Slika 8.c) i d)).
0

P0

P1

1
0

P2

P3

P4

P5

P6

P7

a)
X
(X 1)

Y
(Y 1)

X
(X

0)

Y
(Y 0)

(Z

YZ

Z
0)

00
P0
P4

01

10

P3

P2

1 P5

P7

P6

Z
Z
( Z 1) ( Z 0)
Slika 8. Popunjavanje Karnoove mape i minimizacija funkcije F

64

11

P1

d)

Raspored polja u Karnoovim mapama za etiri ulazne promenljive, koje su prikazane na Slici 9,
treba zamisliti kao da su nacrtana na torusu, pa razvijena u ravan. Drugim reima, leva ivica
mape se direktno naslanja na desnu, a donja ivica na gornju. Ovo treba imati u vidu prilikom
zaokruivanja susednih lanova.

a)

b)

Slika 9. Karnoove mape za etiri promenljive

Odreivanje minimalne konjunktivne forme (MKF)


x

Za nalaenje minimalne konjunktivne forme (MKF) funkcije, treba najpre popuniti


Karnoovu mapu i to na isti nain kao kod disjunktivne forme. Zatim treba grupisati
pojedinana polja, parove, kvartete i oktete nula i to na isti nain kao to se grupiu jedinice
kod disjunktivne forme. Na kraju treba odrediti analitiki izraz za minimalne disjunkcije.
Drugim reima, polja u oblasti gde je promenljiva jednaka nuli uzimaju se kao afirmacija,
npr. oblast X=0 je oblast X, a oblast X=1 je oblast X . Tabela na Slici 10 pokazuje Karnoovu
mapu za dobijanje minimalne konjunktivne forme funkcije.
MKF ima onoliko logikih suma (disjunkcija) koliko u tabeli postoji zaokruenih polja,
parova, kvarteta i okteta nula. Finalni oblik MKF dobija se kada se napravi logiki proizvod
(konjunkcija) svih logikih suma (disjunkcija):

F = (Y  Z ) (X  Z  W ) (X  W ) (Y  Z  W )

Slika 10. Primer Karnoove mapa za funkciju sa etiri promenljive

65

Primer 1.

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu (MDF) funkcije


koja je data izrazom:
Y ( A, B , C , D ) A B C  A B C  A B C  A B C

Reenje:
Izraz za funkciju Y sastoji se od sume potpunih proizvoda, odnosno moe da se predstavi u
obliku: Y ( A, B, C ) (0,3,5,7)

A
B

1
C

Primer 2.

FMDF ( A, B , C )

1
1
C

Primenom Karnoove mape odrediti minimalnu disjunktivnu (MDF) funkcije F koja


je zadata kao suma potpunih proizvoda:

F ( A, B, C )
Reenje:

(0,1,2,4,6)
A

A
B

1
1

Primer 3.

AC  B C  A B C

FMDF ( A, B , C )

A B  C

Primenom Karnoove mape odrediti minimalnu disjunktivnu (MDF) funkcije F koja


je zadata kao zadata na sledei nain:
F ( A, B, C ) ABC  AC  BC

Reenje:

A
B

1
C

66

1
F ( A, B, C )

B  AC

Primer 4.

Primenom Karnoove mape izvriti minimizaciju funkcije F minimalnom


disjunktivnom formulom (MDF), ako je funkcije F zadata na sledei nain:
F ( A, B, C ) ABC  ABC  AB  AC

Reenje:
A

1
1

B
C

Primer 5.

F ( A, B , C )

AB  AC  A B C

1
C

Primenom Karnoove mape izvriti minimizaciju funkcije F minimalnom


disjunktivnom formulom (MDF), ako je funkcije F zadata na sledei nain:
F ( A, B, C ) AC  B  ABC

Reenje:
A

A
B

F ( A, B , C )

B  AC  AC

Primer 6.

Primenom Karnoove mape odrediti minimalnu konjuktivnu formu (MKF) funkcije


Y koja je zadata kao proizvod potpunih suma:

Y ( A, B , C )

(A  B  C) (A  B  C) (A  B  C) (A  B  C) ( A  B  C) (A  B  C)

Reenje:
Izraz za funkciju Y sastoji se od proizvoda potpunih suma, odnosno moe da se predstavi u
obliku:
Y ( A, B, C ) (0,3,4,5,6,7)
A

A
B

0
0
C

FMKF ( A, B, C )

A (B  C) (B  C)

67

Primer 7.

Primenom Karnoove mape odrediti minimalnu konjuktivnu formu (MKF) funkcije


F koja je zadata kao suma potpunih proizvoda:
F ( X , Y , Z ) (0,1,4,5,6)

Reenje:

X
Y

Primer 8.

FMKF ( X , Y , Z )

Y (X  Z)

Primenom pravila Bulove algebre transformisati izraz za funkciju X(A, B, C) tako


da se dobije zapis u disjunktivnoj normalnoj formi, a zatim odrediti izraz za
minimalnu disjunktivnu formu primenom Karnoove mape.
X ( A, B , C )

AB C  AC [ B  A( B  C )]

Reenje:
Izraz za funkciju X(A, B, C) transformie se na sledei nain:
A B C  A C [ B  A ( B  C )]

X ( A, B , C )

A B C  AC B  AC A B  AC AC

A B C  A C [B  A B  A C ]
A B C  A B C  A B C

Odavde sledi da funkcija X(A,B,C) moe da se predstavi kao suma potpunih proizvoda, odnosno
u disjunktivnoj normaloj formi: X DNF ( A, B, C ) (2,5,7) . Na osnovu toga se popunjava
Karnoova mapa.

X MDF ( A, B , C )

A B C  AC

Primer 9.

Data je logika funkcija

AC D  B C D  A B C  A B C D  A B C D

Koristei Karnoovu mapu pronai minimalnu disjunktivnu formu ove funkcije


68

Reenje:

Da se podsetimo:
Karnoovu mapa 4x4 moe da se, na primer, formira tako to e se po horizontali unositi
promenljive (ulazi) A i B, a po vertikali promenljive (ulazi) C i D. Raspored promenljivih koje
e se nai po horizontali i vertikali moe da bude potpuno drugaiji i svaki je podjednako dobar
(na primer, mogue je da po horizontali budu ulazi A i D, a po vertikali B i C ili bilo koja druga
kombinacija). Ipak, praktino je usvojiti jedan od moguih rasporeda i drati ga se pri svakom
korienju Karnoovih mapa jer je tada manja mogunost greke prilikom rasporeivanja manja.
Na primer, redosled kombinacija koji se najee koristi je da prvu kolonu odreuje kombinacija
AB=00, za njom AB=01, zatim AB=11 (primetite da ovde ne moe biti kombinacija 10, koja bi
ila po binarnom redosledu) i na kraju AB=10. Ako usvojimo isti redosled kombinacija i za ulaze
C i D po vertikali, dobijamo da prvu vrstu odreuje kombinacija CD=00, drugu, CD=01, zatim
CD=11 i na kraju CD=10. Tako dobijamo sledeu tabelu:

Kod odreivanja koje e se kombinacije ulaza A i B nai jedna pored druge po horizontali,
jedino to je bitno je da se dve susedne kombinacije razlikuju u samo jednom ulazu. Na primer,
pored kombinacije AB=01 se moe nai kombinacija AB=00 (jer je A nula, a samo B se
razlikuje, jer je u prvoj kombinaciji jedinica, u drugoj nula). Pored ove kombinacije (AB=01) se
takoe moe nai kombinacija AB=11 (samo je A razliito, B je jedinica u obe). Meutim,
kombinacije AB=01 i AB=10 ne smeju biti susedne jer se i A i B razlikuju.
Izraz za logiku funkcija koji je dat u zadatku je oigledno u disjunktivnoj formi. Na osnovu
postojeih logikih proizvoda u izrazu funkcije, moe da se zakljui koje grupe polja u
Karnoovoj mapi treba da sadri vrednost 1. Grupa jedinica (dve jedinice) koja odgovaraje prvom
lanu A C D nalaze se u preseku polja u kojima je ulaz A na nuli, ulaz B je bilo nula ili
jedinica (B ne uestvuje u lanu), a oba ulaza C i D su na jedinici

69

Ako se poe od injenice da svako polje u Karnoovoj mapi odgovara tano odreenom
potpunom logikom proizvodu za koji funkcija predstavljena u disjunktivnoj normalnoj formi
ima vrednost 1, do pozicije grupe polja koja odgovaraju lanu A C D moe se doi i analitiki,
odnosno proirivanjem nepotpunog logikih proizvoda: ACD A( B  B )CD ABCD  ABCD ,
to znai da grupu ine polja gde je A,B,C,D = 0,1,1,1 i A,B,C,D = 0,0,1,1. Na slian nain
dolazimo do ostalih grupa. Grupisanjem polja u Karnoovoj mapi, dobija se izraz za funkciju u
minimalnoj disjunktivnoj formi, koji je mnogo jednostavniji od poetne forme:

B D  AC D  A B

Grupa c nastala je od jedinica za sledee ulaze:

A BC D
0 0 0 0
0 0 0 1
0 0 1 1
0 0 1 0
A B - Ulaz A je za celu grupu na nuli, ulaz B je za celu grupu na nuli, a ulazi B i D se menjaju. Po
pravilima Karnoovih mapa, ulazi koji se menjaju ispadaju iz lana, ulazi koji su stalno na jedinici
ulaze u lan direktno, a ulazi koji su stalno na nuli ulaze u lan kao invertovani. lan koji potie
od ove grupe je A B .
Grupu d ine etiri logike jedinice funkcije F:

A BC
0 0 0
0 0 1
1 0 0
1 0 1
- B -

D
0
0
0
0
D

Ulaz B je za celu grupu na nuli, ulaz D je za celu grupu na nuli, a ulazi A i C se menjaju. lan
koji potie od ove grupe je: B D .

70

Grupa oznaena sa e nastala je od jedinica za sledee ulaze:

A BC D
0 0 1 1
0 1 1 1
A -CD
Ulaz A je za celu grupu na nuli, ulazi C i D su na jedinici, a ulaz B se menja. Tako lan koji
potie od ove grupe ima tri elementa:. A C D

Primer 10.

Niz 1000 000x 1x10 1110 predstavlja izlaze funkcije etiri promenljive A,B,C,D pri
emu prva cifra u nizu predstavlja izlaz kada je A,B,C,D =0,0,0,0, a poslednja, kada
je A,B,C,D =1,1,1,1. Cifre izmedju prve i poslednje su izlazi po binarnom redu. x je
neodreen izlaz koji moe biti bilo nula ili jedinica. Napisati logiki izraz koji
predstavlja:
a) Minimalnu disjunktivnu formu ove funkcije.
b) Minimalnu konjunktivnu formu ove funkcije.

Reenje :
Zadati niz mogao bi da se predstavi pomou tabele istinitosti. U tabelu se upisuju vrednosti
funkcije F (0 ili 1) u polja koja odreuju ulazi. Tako logiku jedinicu koja je vrednost funkcije F
u prvom redu oznaenom brojem u tabeli istinitosti, treba upisati na mestu gde su ulazi
ABCD=0000, tanije u preseku kolone gde je AB=00 i vrste gde je CD=00. Logiku jedinicu
koja je vrednost funkcije F u osmom redu u tabeli istinitosti, treba upisati na mestu gde su ulazi
ABCD=1000, tanije u preseku kolone gde je AB=10 i vrste gde je CD=00 i tako dalje.

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

1
0
0
0
0
0
0
X
1
X
1
0
1
1
1
0

71

a) Minimalna disjunktivna forma odreuje se grupisanjem polja u kojima je upisana


vrednost 1, a nedefinisane vrednosti izlaza (oznaene sa X) treba uzeti kao jedinice samo ako
pomau formiranju vee grupe. Tako nedefinisanu vrednost izlaza na mestu gde su ulazi
ABCD=1001 treba usvojiti kao jedinicu, jer nam pomae da formiramo grupu etiri jedinice,
oznaenu sa c na sledeoj tabeli.
Koristei pomenuta pravila mogue je formirati tri grupe, dve sa po etiri jedinice i jednu sa dve
jedinice. Grupe se preklapaju, jedna jedinica (u gornjem desnom uglu tabele) je obuhvaena ak
sa sve tri grupe to ne predstavlja nedostatak. Grupe su oznaene na sledeoj tabeli:

AC  AD  B C D

Grupu oznaenu sa c ine etiri logike jedinice funkcije F. Ova grupa je nastala od jedinica za
sledee ulaze:
A BC D
1 1 0 0
1 0 0 0
1 1 0 1
1 0 0 1
A -C Ulaz A je za celu grupu na jedinici, ulaz C je za celu grupu na nuli, a ulazi B i D se menjaju. Po
pravilima Karnoovih mapa, ulazi koji se menjaju ispadaju iz lana, ulazi koji su stalno na jedinici
ulaze u lan direktno, a ulazi koji su stalno na nuli ulaze u lan kao invertovani. Tako lan koji
potie od ove grupe je AC .

72

Grupu oznaenu sa d koja spaja dve jedinicu iz prve kolone sa jedinicom poslednje kolone
(spojena s druge strane papira) ine dve logike jedinice funkcije F:
Ova grupa je nastala od jedinica za sledee ulaze:
A BC D
0 0 0 0
1 0 0 0
- BCD

Ulaz B je za celu grupu na jedinici, ulazi C i D takoe, a ulaz B se menja. Tako lan koji potie
od ove grupe ima tri elementa: B C D .
Grupu oznaenu sa e koja spaja dve jedinice iz prve vrste sa dve jedinice poslednje vrste
(spojena s druge strane papira) ine etiri logike jedinice funkcije F:
A BC D
1 1 0 0
1 0 0 0
1 1 1 0
1 0 1 0
A - - D
Ulaz A je za celu grupu na jedinici, ulaz D je za celu grupu na nuli, a ulazi B i C se menjaju. Po
pravilima Karnoovih mapa, ulazi koji se menjaju ispadaju iz lana, ulazi koji su stalno na jedinici
ulaze u lan direktno, a ulazi koji su stalno na nuli ulaze u lan kao invertovani. Tako lan koji
potie od ove grupe je AD .
b) Minimalna konjunktivna forma je forma logikog proizvoda lanova koji su logiki
zbirovi elemenata. Elementi su ili same ulazne promenljive ili njihove invertovane vrednosti.

Da bi se dobila ova forma pomou Karnoovih mapa potrebno je grupisati nule u grupe po istom
principu kao to su grupisane jedinice za dobijanje minimalne disjunktivne forme. Razlog
ovakvog grupisanja i pravila su objanjena u udbeniku.
Na slici je prikazan jedan od moguih naina grupisanja polja u Karnoovoj mapi. Neodreeni
izlaz x na poziciji ABCD=0110 je usvojen kao nula da bi grupa c mogla da ima etiri ulaza.

( A  B)( A  D)( A  C )(C  D)

73

Minimalan broj grupa je etiri i svaka od grupa ima po etiri nule. Kao i u sluaju minimalne
disjunktivne forme grupa koja obuhvata dve nule smanjuje, broj elemenata u tom lanu za jedan,
grupa od etiri nule smanjuje broj elemenata za dva i tako dalje. Za funkciju etiri ulaza grupa od
etiri nule e dati lan sa dva elementa. Svaka grupa ini jedan lan u minimalnoj konjunktivnoj
formi. Odreivanje koji elementi ine lan je po principu slino istom postupku u sluaju
disjunktivne forme. Ovde e biti prikazano samo za jednu grupu oznaenu sa d.
Grupu oznaenu sa d (puna linija) ine etiri logike nule funkcije F:
A BC D
0 0 1 1
0 1 1 1
1 1 1 1
1 0 1 1
- - C D
Ulaz C je za celu grupu na jedinici, ulaz D takoe, ulazi A i B se menjaju. Po pravilima
Karnoovih mapa za minimalnu konjunktivnu formu, ulazi koji se menjaju ispadaju iz lana, ulazi
koji su stalno na nuli ulaze u lan direktno, a ulazi koji su stalno na jedinici ulaze u lan kao
invertovani. Tako lan koji potie od ove grupe je C + D .
Postupak odreivanja ostalih lanova je isti. Funkcija koja se na ovaj nain dobija kao minimalna
disjunktivna forma je sledea (lanovi su podvueni linijom kakvom je oznaena odgovarajua
grupa)

Primer 11.

Niz 1110 00x0 x101 0x01 predstavlja izlaze funkcije etiri promenljive A,B,C,D pri
emu prva cifra u nizu predstavlja izlaz kada je A,B,C,D=0,0,0,0, a poslednja, kada
je A,B,C,D=1,1,1,1. Cifre izmedju prve i poslednje su izlazi po binarnom redu. x je
nedefinisan izlaz, svaki od njih pojedinano moe biti bilo nula ili jedinica. Napisati
logiki izraz koja predstavlja:
a) Minimalnu disjunktivnu formu ove funkcije.
b) Minimalnu konjunktivnu formu ove funkcije.

Reenje:
a) Jedna od moguih minimalnih disjunktivnih formi je odreena na osnovu tabele:

AD  B C  AC D

c
74

b) Minimalna konjunktivna forma moe da se odredi pomou iste Karnoove mape,


grupisanjem polja u kojima se nalaze nule.
AB
CD

00

01

11

10

00

01

11

10

( A  B)( A  C  D)( A  D)

Primer 12.

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu (MDF) funkcije


F koja je zadata kao suma potpunih proizvoda:
F(X, Y, Z, W) = 6 (0,3,4,7,8,11,12,15)

Reenje:

Y
1

Primer 13.

FMDF ( X , Y , Z , W )

ZW  Z W

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu (MDF) funkcije


F koja je zadata kao proizvod potpunih suma (DNF):
F(X, Y, Z, W) = 6 (2, 3, 8, 9, 10, 11, 12, 13)

Reenje:

Y
1

FMDF ( X , Y , Z , W )

X Z  YZ

W
Z

75

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu (MDF) funkcije


F koja je zadata kao suma potpunih proizvoda:

Primer 14.

F(X, Y, Z, W) = 6 (15, 13, 12, 9, 8, 7, 5, 4, 1, 0)

Reenje:
X

X
1

Primer 15.

W
W

FMDF ( X , Y , Z , W )

Z  YW

Primenom Karnoove mape izvriti minimizaciju funkcije F minimalnom


disjunktivnom formulom (MDF), ako je funkcije F zadata na sledei nain:
F(X, Y, Z, W) = YW  X Z  X YW  X Y Z  X Y Z

Reenje:
X

X
1

Y
1

Primer 16.

FMDF ( X , Y , Z , W )

Primenom Karnoove mape izvriti minimizaciju funkcije F minimalnom


disjunktivnom formulom (MDF), ako je funkcije F zadata na sledei nain:
F(X, Y, Z, W) = XYW  X Z  X Y ZW

76

X W

Reenje:
X

X
1

W
W

Primer 17.

b)
c)

X Z  YW

Za funkciju:
F ( A, B, C , D)
a)

FMDF ( X , Y , Z ,W )

AC  B C D  AC D  C D  A B C D

Odrediti minimalnu disjunktivnu formu funkcije (MDF) primenom Karnoove


mape.
Odrediti logiku vrednost funkcije ako se na ulaz A dovede niz logikih nivoa
01010111, na ulaz B: 00111001, na ulaz C: 01010101 i na ulaz D: 11001010.
Nacrtati emu kombinacione mree kojom se realizuje MDF date funkcije F,
koristei samo dva NE kola i dva I kola.

Reenje:
a)

B
1

D
1

b)
B
0
0
1
1
1
0
0
1

A
0
1
0
1
0
1
1
1

C
0
1
0
1
0
1
0
1

D
1
1
0
0
1
0
1
0

FMDF ( A, B , C , D )

C  BD

C BD C  BD
1
0
1
0
0
0
1
0
1
0
0
0
1
1
1
0
0
0
1
0
1
0
0
0
F(A,B,C,D)=10101010

77

c)

Primer 18.

F ( A, B , C , D )

C  BD

F ( A, B, C , D)

C  BD

CBD

Za funkciju zadatu logikim izrazom:


F ( A, B, C , D) A D  B C  A B C D  B C
a)
b)

Odrediti sekvencu vrednosti, ako se na ulaz A dovede niz logikih nivoa


10100011, na ulaz B: 11010101, na ulaz C: 10101000 i na ulaz D: 10101011.
Odrediti izraz za minimalnu disjunktivnu formu (MDF) primenom Karnoove
mape.

Reenje:
a)
A
1
0
1
0
0
0
1
1

B
1
1
0
1
0
1
0
1

C
1
0
1
0
1
0
0
0

D
1
0
1
0
1
0
1
1

AB
0
1
1
1
1
1
1
0

A+B D(A+B)
1
1
1
0
1
1
1
0
0
0
1
0
1
1
1
1

C( A  B ) F(A,B,C,D)
0
1
0
0
1
1
0
0
1
1
0
0
0
1
0
1

F(A,B,C,D)=10101011
b)

A
1

F ( A, B , C , D )

78

D
C

AD  BD  C B  C A

D( A  B)  C ( A  B)

Primer 19.

Primenom Karnoove mape odrediti minimalnu konjuktivnu formu (MKF) funkcije


F koja je zadata kao suma potpunih proizvoda (KNF):

F(X, Y, Z, W) = 3 (3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15)


Reenje:
X

W
0

Y
0

Z
FMKF ( X , Y , Z , W )

Primer 20.

W
Z

( Z  W ) ( X  W ) (Y  W ) ( X  Z ) ( X  Y ) (Y  Z )

Primenom Karnoove mape odrediti minimalnu konjuktivnu formu (MKF) funkcije


F koja je zadata kao proizvod potpunih suma:

F(X, Y, Z, W) = 3 (0,1,2,3,5,6,9,13,14)
Reenje:

X
0

W
0

0
0

Y
0

Z
FMKF ( X , Y , Z , W )

Primer 21.

( X  Y ) ( Z  W ) (Y  Z  W )

Primenom Karnoove mape izvriti minimizaciju funkcije F minimalnom


konjuktivnom formulom (MF), ako je funkcij F(X,Y,Z,W) zadata kao
F(0001010100010100), pri emu prva cifra u nizu predstavlja izlaz kada je
X,Y,Z,W=0,0,0,0, a poslednja, kada je X,Y,Z,W=1,1,1,1.
79

Reenje:
X
0

X
0

0
0

Y
0

Primer 22.

Primenom Karnoove mape odrediti minimalnu konjuktivnu formu (MKF) funkcije


F koja je zadata kao proizvod potpunih suma:
F(X, Y, Z, W) = 3 (0,3,4,6,7,8,10,12)

Reenje:

X
0

Y
0

Z
FMKF ( X , Y , Z , W )

Primer 23.

80

(Z  W ) ( X  Y  W ) ( X  Y  Z ) ( X  Z  W )

Niz 0x00 1011 10x0 101x predstavlja izlaze funkcije etiri promenljive A,B,C,D
pri emu prva cifra u nizu predstavlja izlaz kada je A,B,C,D=0,0,0,0, a poslednja,
kada je A,B,C,D=1,1,1,1. Cifre izmedju prve i poslednje su izlazi po binarnom
redu. x je nedefinisan izlaz, svaki od njih pojedinano moe biti bilo nula ili
jedinica. Napisati logiki izraz koja predstavlja:
a) Minimalnu disjunktivnu formu ove funkcije.
b) Minimalnu konjunktivnu formu ove funkcije.

Reenje:
a) Minimalna disjunktivna forma:
AB
CD

b)

00

01

11

10

00

01

11

10

CB BD

Minimalna konjunktivna forma


AB
CD

00

01

11

10

00

01

11

10

Primer 24.

(C  D )( A  D )( A  B )

Za datu funkciju etiri logike promenljive F(X,Y,Z,W), iji je skup vrednosti


F(0,1,1,x,0,1,x,1,0,1,0,x,0,1,x,0), primenom Karnoovih mapa odrediti njenu
minimalnu disjunktivnu formulu (MDF), ako x predstavlja nedefinisano stanje
funkcije.

Reenje:

X
X

Y
1
1

1
X

1
1

X Z  ZW  YZ W

FMDF ( X , Y , Z , W )

81

Primer 25.

Primenom Karnoove mape izvriti minimizaciju funkcije F minimalnom


konjuktivnom formulom (MF), ako je funkcij F(X,Y,Z,W) zadata u formi
F(011b100010001100), a sa b su oznaena nedefinisana stanja funkcije:

Reenje:

Y
0

X
0

W
0

Y
0

FMKF ( X , Y , Z , W )

Primer 26.

( X  Z ) (Y  Z ) ( X  Y  W ) ( X  Y  W ) ( X  Y  Z  W )

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu (MDF) funkcije


F(X,Y,Z,W) ije su vrednosti date u sledeoj tabeli, a sa b su oznaena nedefinisana
stanja funkcije.

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

82

X
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

Y
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

Z
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

W
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

1
b
0
b
1
1
0
1
1
0
b
1
1
0
0
b

Reenje:

Y
b

Z
FMDF ( X , Y , Z , W )

Primer 27.

XW  Z W  X Y Z

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu (MDF) funkcije


F(A,B,C,D) ije su vrednosti date u tabeli:
i

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

x
x
1
1
1
0
0
0
x
1
1
1
1
1
0
0

Sa x su oznaena nedefinisana stanja funkcije i po potrebi se grupiu sa jedinicama za nalaenje


minimalne disjunktivne forme

83

Reenje:

CD
00

01

11

10

00

01

AB

B
1

11
10

Primer 28.

B
1

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu (MDF) funkcije


F(A,B,C,D) ije su vrednosti date u tabeli:
i

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

0
0
0
0
0
0
F MDF ( A, B, C , D )
0
0
0
1
0
1
0
1
0
1
1
0
1
0
1
0
1
0
1
1
1
1
1
1
1
1

0
0
0
1
1
0
B  AC  C D
1
1
0
0
0
1
1
0
1
1
0
0
0
1
1
0
1
1
0
0
0
1
1
0
1
1

x
0
1
0
1
1
1
x
1
0
1
0
x
0
1
0

Sa x su oznaena nedefinisana stanja funkcije i po potrebi se grupiu sa jedinicama za nalaenje


minimalne disjunktivne forme.

84

Reenje:

A
X

A
1

B
D

B
1

C
F MDF ( A, B, C , D )

Primer 29.

D  AB

Primenom Karnoove mape odrediti minimalnu konjuktivnu formu (MKF) funkcije


F(X,Y,Z,W) ije su vrednosti date u sledeoj tabeli, a sa b su oznaena nedefinisana
stanja funkcije:
i

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

1
x
0
1
1
0
1
1
1
0
0
0
1
x
0
0

85

Reenje:

CD
AB

00

01

11

00

B
01

10

FMKF ( A, B, C , D )

D
C

( A  C ) (C  D ) ( B  C  D )

Primenom Karnoove mape odrediti minimalnu konjuktivnu formu (MKF) funkcije


F(A,B,C,D) ije su vrednosti date u tabeli, a sa X su oznaena nedefinisana stanja
funkcije:

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

86

D
D

11

Primer 30.

10

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
0
0
0
1
1
1
1
0
0
x
x
0
x
1
1

Reenje:
A

CD
AB
00

00

01

11

10

01
11
10

FMKF ( A, B, C , D )

Primer 31.

D
D

( A  C) B

Primenom Karnoove mape odrediti minimalnu konjunktivnu formu (MKF)


funkcije F(A,B,C,D) ije su vrednosti date u tabeli, a sa X su oznaena nedefinisana
stanja funkcije i po potrebi ih treba iskoristiti za nalaenje minimalne forme:

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

1
1
1
0
x
0
0
1
1
1
0
x
0
0
0
0

87

Reenje:
A

Primer 32.

D
C

C
FMKF ( A, B, C , D )

( A  C ) ( B  D) ( B  C ) ( B  C  D)

Na slici su prikazana tri paralelna prekidaa. U zavisnosti od toga da li su prekidai


otvoreni ili zatvoreni napon u takama A, B i C ima vrednost VCC (1) (logika 1)
ili 0 (logika 0). Ako signali u takama A, B i C predstavljaju ulaz u
kombinacionu mreu koja daje na izlazu 1 ako su otvorena bar dva prekidaa, inae
je vrednost 0:
a) Definisati funkciju OUT(A, B, C) koja opisuje rad kombinacione mree
pomou tabele istinitosti.
b) Odrediti minimalnu disjunktivnu formu funkcije OUTMDF(A, B, C).

+VCC

Reenje:
a) Poto se na ulaz kombinacione mree dovode tri signala A, B i C broj kombinacija logikih
vrednosti ovih signala je 23 = 8.
n
0
1
2
3
4
5
6
7

88

A
0
0
0
0
1
1
1
1

B
0
0
1
1
0
0
1
1

C
0
1
0
1
0
1
0
1

OUT
0
0
0
1
0
1
1
1

b)

A
1

1
1

B
C

OUTMDF ( A, B , C )

Primer 33.

A B  AC  B C

Nivo tenosti u rezervoaru detektuje se preko tri senzora A, B i C, iji izlaz ima
vrednost logika 1 kada nivo tenosti dostigne ili premai poziciju senzora,
odnosno logika 0 kada je senzor iznad nivoa. Ako su senzori postavljeni kao to
je prikazano na slici:

C
B
A

a)

Definisati tabelu istinitosti za funkciju F (C, B, A) koja opisuje rad


kombinacione mree iji su ulazi signali sa senzora, ako izlaz mree ima
vrednost logika 1 kada je nivo fluida izmeu senzora A i B.

b)

Primenom Karnoove mape odrediti minimalnu disjunktivnu formu funkcije


F (C, B, A).

Reenje:
a)

Poto vrednost funkcije F zavisi od tri ulazne promenljive, ukupan broj kombinacija
vrednosti ulaznih veliina A, B i C je 23 = 8. Poto izlaz svakog senzora dobija vrednost
logika 1 tek kada nivo dostigne ili premai poziciju senzora, mogua je sledea
kombinacija vrednosti na izlazima senzora:
C

89

Funkcija F e imati vrednost 1 samo kada senzor A detektuje nivo (CBA = 001), dok e za
ostale tri kombinacije vrednosti izlaza sa senzora imati vrednost 0. Za sve ostale kombinacije
vrednosti izlaza senzora funkcija F e imati nedefinisanu vrednost (X). Na osnovu ovog
razmatranja popunjena je kombinaciona tabela:
n
0
1
2
3
4
5
6
7

C
0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

0
1
X
0
X
X
X
0

X su nedefinisana stanja
b)

Na osnovu tabele iz take a) popunjena je Karnoova mapa sa tri promenljive, pri emu
nedefinisana stanja X u cilju bolje minimizacije mogu da se po potrebi grupiu sa poljima u
kojima je 1.

FMDF (C , B , A)

Primer 34.

BA

Neka su X, Y i Z binarne cifre u trobitnom zapisu nekog binarnog broja.


a)

Definisati kombinacionu tabelu za funkciju F(X, Y, Z) koja ima vrednost 0 ako


bar dve susedne cifre u zapisu binarnog broja imaju istu vrednost, dok u
ostalim sluajevima ima vrednost 1.

b)

Odrediti minimalnu konjunktivnu formu funkcije F primenom Karnoove mape.

Reenje:
a)
n
0
1
2
3
4
5
6
7

90

X
0
0
0
0
1
1
1
1

Y
0
0
1
1
0
0
1
1

Z
0
1
0
1
0
1
0
1

0
0
1
0
0
1
1
0

b)
00

01

11

10

FMKF ( X , Y , Z )

Primer 35.

YZ
X

0
Z

(Y  Z ) (Y  Z ) ( X  Y )

Na slici je prikazan vremenski dijagram promene vrednosti funkcije F(A,B,C) u


zavisnosti od promene ulaznih signala A, B i C. Na osnovu zadatih vremenskih
dijagrama:
a) Popuniti tabelu istinitosti.
b) Odrediti analitiki izraz za minimalnu disjunktivnu formu funkcije primenom
Karnoove mape.
c) Nacrtati hardversku realizaciju na osnovu izraza dobijenog minimizacijom
primenom osnovnih logikih kola.

Reenje:
n
0
1
2
3
4
5
6
7

A
0
0
0
0
1
1
1
1

B
0
0
1
1
0
0
1
1

C
0
1
0
1
0
1
0
1

F ( A, B, C )

0
1
0
0
0
1
1
1

A B  B C

91

Primer 36.

a)

b)

Opisati tabelom istinitosti kombinacionu mreu sa ulazima X1, X2, X3 i X4


koja uporeuje binarne vrednosti ulaza X1 i X2 sa binarnim vrednostima na
ulazima X3 i X4, tako da izlaz mree Y ima vrednost 1 ukoliko je X1X2tX3X4.
Odrediti analitiki izraz za izlaz kombinacione mree Y(X1,X2,X3,X4) u
minimalnoj disjunktivnoj formi primenom Karnoove mape.

Reenje:
i
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

X1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

X2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

X3
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

X4
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

Y ( X 1, X 2 , X 3 , X 4 )

Primer 37.

X3X4
00

01

00

01

11

10

11

10

1
1

X1 X 2  X 3 X 4  X 2 X 3  X1 X 3  X1 X 4

kada senzori A i C daju istu vrednost na izlazu


kada senzori A i C daju razliite vrednosti na izlazu
odrediti minimalnu konjuktivnu formu (MKF) funkcije Y(A, B, C) za primere
a) i b).

Za funkciju koja je zadata kao proizvod potpunih suma (DNF)


F (D, C, B, A ) = 6 (1, 2, 4, 6, 9, 10, 11, 13, 14, 15)
a)
b)

92

X1X2

Neka su A, B i C tri senzora, iji su digitalni izlazi dovedeni na ulaz kombinacione


mree. Definisati tabelu istinitosti za mreu ija logika funkcija Y(A, B, C) ima
vrednost 0:
a)
b)
c)

Primer 38.

Y
1
0
0
0
1
1
0
0
1
1
1
0
1
1
1
1

Odrediti minimalnu disjunktivnu formu funkcije (MDF).


Odrediti minimalnu konjuktivnu formu funkcije (MKF).

Primer 39.

Primer 40.

Za funkciju koja je zadata kao proizvod potpunih suma (DNF)


F (A4, A3, A2, A1) = 6 (4, 6, 7, 10, 12, 13, 14, 15)
a) Odrediti minimalnu disjunktivnu formu funkcije (MDF).
b) Odrediti minimalnu konjuktivnu formu funkcije (MKF).
Za funkciju koja je zadata kao suma potpunih proizvoda (KNF)
F (X4, X3, X2, X1 )= 3 (0, 1, 2, 4, 6, 8, 9, 10, 12, 14, 15)
a)
b)

Primer 41.

Za funkciju koja je zadata kao suma potpunih proizvoda (KNF)


F (W, Z, Y, X )= 3 (0, 3, 4, 7, 8, 11, 12, 13, 15) = 0
a)
b)

Primer 42.

Odrediti minimalnu konjuktivnu formu funkcije (MKF).


Odrediti minimalnu disjunktivnu formu funkcije (MDF).

Odrediti minimalnu konjuktivnu formu funkcije (MKF).


Odrediti minimalnu disjunktivnu formu funkcije (MDF).

Za funkciju FDNF (A1, A2, A3, A4 ) = 6 (1, 4, 5, 6, 12, 13) = 1, F(X) = (8, 9, 14,15),
gde je X nedefinisana vrednost funkcije:
a) Odrediti minimalnu disjunktivnu formu funkcije (MDF).
b) Odrediti minimalnu konjuktivnu formu funkcije (MKF).

Primer 43.

Za funkciju FKNF (X1, X2, X3, X4 )= 3 (0, 4, 7, 8, 12) = 0, F(b) = (1, 3, 9, 12, 14,15),
gde je b nedefinisana vrednost funkcije:
a) Odrediti minimalnu konjuktivnu formu funkcije (MKF).
b) Odrediti minimalnu disjunktivnu formu funkcije (MDF).

93

7. PRIMENA UNARNIH I BINARNIH LOGIKIH


OPERACIJA
Unarne operacije su instrukcije sa jednim operandom. Osnovni tipovi unarnih operacija su:
x

Postavljanje (SET) - logika vrednost 0 nekog bita pretvara se u logiku vrednost 1.
Primenjuje se na bite u registru stanja, registrima CPU i memorijskim lokacijama.
1 1 1 0 0 0 1 0
1 1 1 0 1 1 1 0


x

Brisanje (CLEAR, RESET) - logika vrednost 1 eljenog bita se pretvara u logiku


vrednost 0. Primenjuje se na bite u registru stanja, registrima CPU i memorijskim
lokacijama.
1 1 1 0 0 0 1 0
1 0 0 0 0 0 1 0


x

Komplementiranje (COMPLEMENT) - sve logike 0 u jednom broju se pretvaraju u 1 i


obrnuto, tako da se dobija prvi komplement.Operacija se odnosi na sadraj celog registra.
1 1 1 0 0 0 1 0
0 0 0 1 1 1 0 1


x

Negacija (NEGATE) kao rezultat se dobija drugi komplement broja. Operacija se odnosi
na sadraj celog registra.
1 1 1 0 0 0 1 0
0 0 0 1 1 1 1 0


x

Inkrementiranje (INCREMENT) - poveava vrednosti operanda za 1. Odnosi se na


sadraj celog registra. Kod nekih procesora se primenjuje samo na registre u okviru CPU, a
kod drugih se primenjuje i na sadraj memorijskih lokacija.
1 1 1 0 0 0 1 0
1 1 1 0 0 0 1 1

94


x Dekrementiranje (DECREMENT) - smanjuje vrednosti operanda za 1.Odnosi se na sadraj
celog registra. Kod nekih procesora se primenjuje samo na registre u okviru CPU, a kod drugih
se primenjuje i na sadraj memorijskih lokacija.
1 1 1 0 0 0 1 0
1 1 1 0 0 0 0 1


x Pomeranje (SHIFT) - pomeraju se biti u okviru jednog registra ulevo ili udesno.
Bit koji naputa registar se gubi ili se upisuje u Carry flag. Kod mikroprocesora se obino u
jednom taktu obavi pomeranje za jednu poziciju, a kod veih raunara se u jednom taktu pomera
sadraj za vie pozicija. Upranjena mesta se obino popunjavaju logikim nulama (0).
o Pomeranje udesno
Primena:
Ispitivanje sadraja bita u registru
Deljenje sa 2N, N = broj pomeranja
1 1 1 0 0 0 1 0
0 1 1 1 0 0 0 1

Carry
flag

Aritmetiko pomeranje udesno - bit znaka ostaje na MSB poziciji, a pomeraju se


svi ostali biti.
1 1 1 0 0 0 1 0
1 1 1 1 0 0 0 1

Carry
flag

o Pomeranje ulevo
Primena:
Ispitivanje sadraja bita u registru
Mnoenje sa 2N, N = broj pomeranja
1 1 1 0 0 0 1 0
Carry
flag

1 1 0 0 0 1 0 0






95






x

Rotacija (ROTATE) - rotiraju se biti u okviru jednog registra ulevo ili udesno.
Bit koji se rotira upisuje se na upranjeno mesto na drugom kraju registra, a pri tome moe
da se uva i u Carry flag-u. Kod nekih procesora i sam bit prenosa (C, carry) uestvuje u
rotaciji.
o Rotacija ulevo

1 1 1 0 0 0 0 1

1 1 0 0 0 0 1 1

1 1 0 0 0 0 1 C

Rotacija sa pamcenjem prenosa u Carry flegu

o Rotacija udesno

1 1 1 0 0 0 0 1

Prvobitni sadraj

1 1 1 1 0 0 0 0

Prvobitni sadraj

C 1 1 1 0 0 0 0

Rotacija sa pamcenjem prenosa u Carry flegu

Binarne logike operacije su instrukcije su instrukcije sa dva operanda, od kojih je najee


bar jedan u nekom od akumulatora (ili drugim registrima CPU), dok je drugi u nekom od
registara memorije.
Logike instrukcije obrauju sve bite u registru, ali se primenjuju na svaki par bita ponaosob i
za svaki par generiu poseban rezultat, koji ne utie na rezultat u drugim bitima (nema prenosa
izmeu dva susedna razreda u registru).
x

Logika I (AND) operacija


Primena: Izdvajanje sadraja dela registra,
Resetovanje eljenih bita,
pomou maske koja sadri 1 na mestu bita iji sadraj treba da ostane nepromenjen (koji
treba izdvojiti), a 0 na mestu bita koji treba obrisati (resetovati).
A
B
A AND B

0 0 1 0 0 1 1 1 originalan sadraj registra


0 0 0 0 1 1 1 1 maska
0 0 0 0 0 1 1 1 sadraj posle AND operacije

Logika ILI (OR) operacija


Primena: Pakovanje podataka u jednu celinu,
Setovanje eljenih bita,

96

pomou maske koja sadri 0 na mestu bita iji sadraj treba da ostane nepromenjen, a 1 na
mestu bita koje treba postaviti (setovati).
A
B
A OR B

1 0 1 1 0 0 0 0 originalan sadraj registra


1 0 0 0 0 1 0 1 maska
1 0 1 1 0 1 0 1 sadraj posle OR operacije

Logika EX-ILI (XOR) operacija

Primena:
Komplementiranje sadraja eljenih bita,
pomou maske koja sadri 0 na mestu bita iji sadraj treba da ostane nepromenjen, a 1 na
mestu bita koji treba invertovati.
A
B
A XOR B

Primer 1

1 0 1 0 0 0 0 1 originalan sadraj registra


1 0 0 1 0 1 0 1 maska
0 0 1 1 0 1 0 0 sadraj posle XOR operacije

U 8-bitnom registru A nalazi se broj 7E(16). Koji se HEX broj nalazi u registru
posle:
a) pomeranja prvobitnog sadraja za 3 mesta ulevo
b) rotacije prvobitnog sadraja za 3 mesta ulevo
c) pomeranja prvobitnog sadraja za 3 mesta udesno
d) rotacije prvobitnog sadraja za 3 mesta udesno.

Reenje:
Prvobitni sadraj u registru A: 01111110(2)
a) Posle pomeranja za 3 mesta ulevo, sadraj u registru A je: 11110000(2)
b) Posle rotacije za 3 mesta ulevo, sadraj u registru A je: 11110011(2)
c) Posle pomeranja za 3 mesta udesno, sadraj u registru A je: 00001111(2)
d) Posle rotacije za 3 mesta udesno, sadraj u registru A je: 11001111(2)
Primer 2

Iz tabele sa ASCII kodovima proitati kod za broj 9(10) i sadraj sauvati u 8bitnom registru A. Pokazati kako primenom operacija pomeranja i rotiranja za
odgovarajui broj mesta moemo da postignemo da:
a) vii nibl u registru A bude 0
b) nii nibl u registru A bude 0
c) vii nibl doe na mesto nieg nibla
d) nii nibl doe na mesto vieg nibla

Reenje:
Prvobitni sadraj u registru A je 00111001(2) = 39(16)
a) Posle pomeranja za 4 mesta udesno, sadraj u registru A je 00000011 (2) = 03(16)
97

b)
c)
d)

Posle pomeranja za 4 mesta ulevo, sadraj u registru A je 10010000(2) = 90(16)


Posle rotacije za 4 mesta udesno, sadraj u registru A je 10010011(2) = 93(16)
Posle rotacije za 4 mesta ulevo, sadraj u registru A je 10010011(2) = 93(16)

Primer 3

Iz tabele sa EBCDIC kodovima proitati kod za broj 6(10) i sadraj sauvati u 8bitnom registru A. Pokazati kako primenom operacija pomeranja ili rotiranja za
odgovarajui broj mesta moemo da postignemo da:
a) sadraj u registru A bude 3D(16)
b) sadraj u registru A bude 60(16)
c) vii nibl doe na mesto nieg nibla
d) nii nibl doe na mesto vieg nibla

Reenje:
Prvobitni sadraj u registru A je 11110110(2)
a ) Posle pomeranja za 2 mesta udesno, sadraj u registru A je 00111101 (2) = 3D(16)
b) Posle pomeranja za 4 mesta ulevo, sadraj u registru A je 01100000(2) = 60(16)
c) Posle rotacije za 4 mesta udesno, sadraj u registru A je 01101111(2) = 6F(16)
d) Posle rotacije za 4 mesta ulevo, sadraj u registru A je 01101111(2) = 6F(16)
Primer 4

U registru A se nalazi HEX broj B3(16). ta e se nalaziti u registru nakon rotacije


primenom C flega, ako je:
a) C = 1, a obavljena je rotacija za 4 mesta udesno
b) C = 1, a obavljena je rotacija za 2 mesta ulevo
c) C = 0, a obavljena je rotacija za 4 mesta udesno
d) C = 0, a obavljena je rotacija za 2 mesta ulevo

Reenje:
Prvobitni sadraj u registru A je 10110011(2)
a) Posle rotacije za 4 mesta udesno, ako je C = 1 sadraj u registru A je 01111011(2)
b) Posle rotacije za 2 mesta ulevo, ako je C = 1 sadraj u registru A je 11001111(2)
c) Posle rotacije za 4 mesta udesno, ako je C = 0 sadraj u registru A je 01101011(2)
d) Posle rotacije za 2 mesta ulevo, sadraj u registru A je 11001101(2)
Primer 5

Sadraj akumulatora predstavljaju slova Lt (ASCII kod). Napraviti masku za


komplementiranje parnih bitova.

Reenje:

0001100100100001

Primer 6

Sadraj akumulatora predstavljaju slova Cp (ASCII kod). Napraviti masku za


izdvajanje po tri krajnja bita.

Reenje:

1100000000000111

98

Primer 7

Sadraj akumulatora predstavljaju slova sP (ASCII kod). Napraviti masku za


izdvajanje 1.,3.,7.,9.,12. i 14. bita.

Reenje:

0101001000000000

Primer 8

Predstaviti u EBCDIC kodu slova NM kao sadraj akumulatora A. Izvriti


ukljuivanje prva tri i poslednja tri prekidaa, koji su direktno prikljueni na
akumulator A bez promene ostalih prekidaa.

Reenje:

1110010111010111

Primer 9

U registru A se nalazi binarni zapis broja 6.


a) Koji dekadni broj se nalazi u registru posle 5 pomeranja binarnog sadraja
ulevo?
b) Koja aritmetika operacija je realizovana na ovaj nain?

Reenje:
Prvobitni sadraj u registru A je 00000110 (2)
a) Posle pomeranja za 5 mesta ulevo sadraj registra A je 11000000 (2) = 192(10)
b) Na ovaj nain je izvreno mnoenje broja 5 sa 25 = 32

Primer 10

U 8-bitnom registru A nalazi se ASCII kod broja 9, a u 8-bitnom registru B se


nalazi se ASCII kod broja 7.
a) Primenom odgovarajue logike operacije i maske pretvoriti ASCII kod
brojeva u registru A i B u raspakovani format BCD koda 8421.
b) Kako primenom rotacije i odgovarajue logike operacije nad sadrajem
registara A i B dobijenim u taki a) moe da se postigne da se u registru A
nalazi sadraj 79(16) (pakovani BCD format).
c) Kako primenom pomeranja i odgovarajue logike operacije nad sadrajem
registara A i B dobijenim u taki a) moe da se postigne da se u registru B
nalazi sadraj 79(16) (pakovani BCD format).

Reenje:
Prvobitni sadraj u registru A je 00111001(2), a u registru B je 00110111(2)
a) Primenom logike I (AND) operacije nad sadrajem registara A, odnosno B i maske
00001111(2) dobija se zapis brojeva u raspakovanom formatu BCD koda 8421:
A = 00111001(2) AND 00001111(2) = 00001001(2)
B = 00110111(2) AND 00001111(2) = 00000111(2)
b)

Primenom rotacije sadraja registra B za 4 mesta udesno dobija se B = 01110000(2)


Primenom operacije ILI (OR) izmeu registara A i B, pri emu se rezultat uva u registru A
dobija se A = A OR B = 01111001(2) = 79(16)

c)

Pomeranjem sadraja registra B za etiri mesta ulevo dobija se B = 01110000(2)


Primenom operacije ILI (OR) izmeu registara A i B, pri emu se rezultat uva u registru B
dobija se B = A OR B = 01111001(2) = 79(16)

99

Primenom odgovarajue maske i logike operacije invertovati 2., 3., 8., 9., 12. i 13.
bit u 16-bitnom broju koji se nalazi u akumulatoru A:
A: 1101010111100010
Nakon izvrenja logike operacije rezultat se nalazi u akumulatoru A.
Reenje:

Primer 11

A XOR M

Primer 12

A:

M:

A:

Primenom odgovarajue maske i logike operacije invertovati 2., 5., 6., 8., 11., 13.
i 14. bit u 16-bitnom broju koji se nalazi u akumulatoru A: 0011010101010101.
Nakon izvrenja logike operacije rezultat se nalazi u akumulatoru A.

Reenje:

A XOR M

Primer 13

A:

M:

A:

U akumulatoru A nalazi se sledei 16-bitni podatak: 1011011011101001.


Primenom odgovarajue maske i logike operacije invertovati 0.,1.,4.,7.,10. i 11.
bit. Nakon izvrenja logike operacije rezultat se nalazi u akumulatoru A.

Reenje:

A XOR M

100

A:

M:

A:

Primer 14

U akumulatoru A nalazi se sledei 16-bitni podatak: 1100000110000101.


Primenom odgovarajue maske i logike operacije komplementirati po tri krajnja
stanja u ovom registru. Nakon izvrenja logike operacije rezultat se nalazi u
akumulatoru A.

Reenje:

A XOR M

Primer 15

A:

M:

A:

U akumulatoru A nalazi se sledei podatak A: 1001110111011110, koji slui za


upravljanje (ukljuivanje-1 i iskljuivanje-0 ). U odreenom trenutku treba
iskljuiti ureaje koji su povezani na b2 , b4 , b6, b8 , b10 i b12 bitove ovog 16-to
bitnog registra. Smatrati da se nakon izvrenja logike operacije rezultat se nalazi u
akumulatoru A.

Reenje:

A AND M

Primer 16

A:

M:

A:

Primenom odgovarajue maske i logike operacije resetovati 0., 1., 6., 7., 14. i 15.
bit u 16-bitnom broju koji se nalazi u akumulatoru A:
A: 1110100111000111
Nakon izvrenja logike operacije rezultat se nalazi u akumulatoru A.

Reenje:

101

A AND M

Primer 17

A:

M:

A:

Primenom odgovarajue maske i logike operacije resetovati 0.,3.,4.,8.,11.,14. i 15.


bit u 16-bitnom broju koji se nalazi u akumulatoru A: 1010101010101010. Nakon
izvrenja logike operacije rezultat se nalazi u akumulatoru A.

Reenje:

A AND M

Primer 18

A:

M:

A:

U akumulatoru A nalazi se sledei podatak A : 1100100101001001, koji slui za


upravljanje odreenim prekidaima. Izvriti selektivno ukljuivanje 1., 2., 4., 5., 9.
i 10. prekidaa, bez promene ostalih prekidaa. Nakon izvrenja logike operacije
rezultat se nalazi u akumulatoru A.

Reenje:

A OR M

Primer 19

102

A:

M:

A:

Primenom odgovarajue maske i logike operacije setovati 4., 6., 8., 10. i 12. bit u
16-bitnom broju koji se nalazi u akumulatoru A:
A: 0010101010101001
Nakon izvrenja logike operacije rezultat se nalazi u akumulatoru A.

Reenje:

A OR M
Primer 20

A:

M:

A:

Primenom odgovarajue maske i logike operacije izdvojiti 1., 3., 5., 11., 13. i 15.
bit u 16-bitnom broju koji se nalazi u akumulatoru A:
A: 1110110111101011
Nakon izvrenja logike operacije rezultat se nalazi u akumulatoru A.

Reenje:

A AND M

Primer 21

A:

M:

A:

Primenom odgovarajue maske i logike operacije izdvojiti 3., 5., 9. i 10. bit u 16bitnom broju koji se nalazi u akumulatoru A: 1001001001001001. Nakon izvrenja
logike operacije rezultat se nalazi u akumulatoru A.

Reenje:

A AND M

Primer 22

A:

M:

A:

U akumulatoru A nalazi se sledei 16-bitni podatak: 0100110011001101.


Primenom odgovarajue maske i logike operacije izdvojiti dva najvia i tri najnia
bita iz ovog akumulatora. Nakon izvrenja logike operacije rezultat se nalazi u
akumulatoru A.

Reenje:
103

A AND M

A:

M:

A:

Primer 24.

U registru A se nalazi binarni zapis broja 72.


a) Koji dekadni broj se nalazi u registru posle 2 pomeranja binarnog sadraja
ulevo?
b) Koja aritmetika operacija je realizovana na ovaj nain?

Primer 25.

U registru A se nalazi binarni zapis broja 9.


a) Koji dekadni broj se nalazi u registru posle 4 pomeranja binarnog sadraja
ulevo?
b) Koja aritmetika operacija je realizovana na ovaj nain?

Primer 26.

U registru A se nalazi binarni zapis broja 40.


a) Kako primenom operacije pomeranja u odgovarajuem smeru broj moe da se
podeli sa 8?
b) ta se nalazi u registru nakon poslednje operacije pomeranja?

Primer 27.

U registru A se nalazi binarni zapis broja 16.


a) Kako primenom operacije pomeranja u odgovarajuem smeru ovaj broj moe
da se pomnoi sa 16?
b) ta se nalazi u registru nakon poslednje operacije pomeranja?

Primer 28.

U 16-bitnom registru A nalazi se binarni broj 0011000011101011. Primenom


odgovarajue maske i logike operacije invertovati:
a) 1.,2.,5.,8.,10.,12. i 14. bit;
b) nii bajt i najvii bit;
c) po etiri krajnja bita;
d) svaki neparni bit;
e) 4.,5.,8.,9.,11.,13. i 15. bit.

Primer 29.

U 16-bitnom registru A nalazi se binarni broj 0011010100001111. Primenom


odgovarajue maske i logike operacije iskljuiti:
a) 0.,2.,7.,10.,11.,12. i 15. bit;
b) sve parne bitove;
c) sve neparne bitove;
d) vii bajt;
e) 3.,4., 8.,9.,12. i 13. bit.

104

Primer 30.

U 16-bitnom registru A nalazi se binarni broj 1111000010101010. Primenom


odgovarajue maske i logike operacije ukljuiti:
a) 2.,3.,4.,8.,9.,11.,13. i 15. bit;
b) dva najnia bita i tri najvia bita;
c) svaki parni bit;
d) nii bajt;
e) 0.,1.,5.,6.,10.,12. i 14. bit.

Primer 31.

U 16-bitnom registru A nalazi se binarni broj 1100110101011100. Primenom


odgovarajue maske i logike operacije izdvojiti:
a) 2.,3.,5.,7.,10.,11. i 13. bit;
b) najvii i najnii bit;
c) vii bajt;
d) najvii bit i nii bajt;
e) 0.,1.,7.,8.,14. i 15. bit.

Primer 32.

U 16-bitnom registru A nalazi se binarni broj 1111100111101111. Primenom


odgovarajue maske i logike operacije:
a)i izdvojiti vii bajt
b) izdvojiti nii bajt
c) izdvojiti 5., 6., 7., 8., 12., 13., 14. i 15. bit.
d) resetovati najnia 4 bita i najvia 4 bita
e) resetovati 1., 3., 5., 12. i 14. bit

Primer 33.

U 16-bitnom registru A nalazi se binarni broj 1000001100101000. Primenom


odgovarajue maske i logike operacije:
a) setovati najnia 3 bita
b) setovati 2., 3., 4., 5., 11., 12. i 14. bit

Primer 34.

U 16-bitnom registru A nalazi se binarni broj 1001100111101001. Primenom


odgovarajue maske i logike operacije:
a) invertovati vii bajt
b) invertovati nii bajt
c) invertovati svaki parni bit
d) invertovati svaki neparni bit
e) invertovati 0., 1., 4., 6., 8, 10. i 13. bit

Primer 35.

U 8-bitnom registru A nalazi se broj C5(16). Koji se HEX broj nalazi u registru
posle:
a) pomeranja prvobitnog sadraja za 5 mesta ulevo
b) rotacije prvobitnog sadraja za 5 mesta ulevo
c) pomeranja prvobitnog sadraja za 5 mesta udesno
d) rotacije prvobitnog sadraja za 5 mesta udesno.

105

Primer 36.

Iz tabele sa ASCII kodovima proitati kodove za veliko slovo M i malo slovo s.


Proitane kodove uvati u 16-bitnom registru A, tako da se u viem bajtu nalazi
veliko slovo M. Pokazati kako primenom operacija pomeranja ili rotiranja za
odgovarajui broj mesta moemo da postignemo da:
a) vii bajt u registru A bude 0
b) nii bajt u registru A bude 0
c) vii bajt doe na mesto nieg bajta
d) nii bajt doe na mesto vieg bajta.

Primer 37.

Iz tabele sa EBCDIC kodovima proitati kodove za velika poetna slova vaeg


imena i prezimena. Proitane kodove uvati u 16-bitnom registru A, tako da se u
viem bajtu nalazi poetno slovo imena. Pokazati kako primenom operacija
pomeranja ili rotiranja za odgovarajui broj mesta moemo da postignemo da:
a) vii bajt u registru A bude 0
b) nii bajt u registru A bude 0
c) vii bajt doe na mesto nieg bajta
d) nii bajt doe na mesto vieg bajta.

Primer 38.

U 8 bitnom registru A se nalazi HEX broj 4, a u registru B je HEX broj 5.


a) Primenom odogovarajue logike operacije i maske konvertovati sadraj
registara A i B u odgovarajue ASCII kodove.
b) Kako primenom pomeranja i odgovarajue logike operacije nad zadatim
prvobitnim sadrajem registara A i B moe da se postigne da se u registru A
nalazi HEX broj 45(16) (pakovani BCD format).
c) Kako primenom pomeranja i odgovarajue logike operacije nad zadatim
prvobitnim sadrajem registara A i B moe da se postigne da se u registru B
nalazi HEX broj 54(16) (pakovani BCD format).

106

8. ALGORITMI
Re algoritam je arapskog porekla i znaci vetina raunanja, etiri osnovne raunarske
radnje. Izraz potie od arapskog matematiara Mohameda ibn Musa Alhariymi. U srednjem
veku upotrebljavali su se i izrazi alorizam i algaritam. Algoritam je opis za reavanje nekog
problema. U novije vreme, algoritam je pojam koji se gotovo iskljuivo vezuje za
informatiku i, mada ne postoji jedinstvena opte prihvaena definicija, podrazumeva se da je
u pitanju nekako opisna procedura za obavljanje posla.
Definicija:
Algoritam je konana i precizno definisana procedura, formulisana u cilju reavanja
odreenog tipa zadatka, kojom se ulazne vrednosti transformiu u izlazne, ili se opisuje
izvravanje nekog postupka. Dijagram toka se esto koristi za grafiki prikaz algoritma.
Grafiki prikaz elemenata:

Poetak ili kraj programa

Unoenje podataka

Obrada

Odluka (pitalica)

Izlaz (tampanje) podataka

Povezivanje algoritamskih koraka (strelice)

Prikljuna taka (povezivanje algoritamskih strelica)


Algoritmi mogu biti prikazani ili realizovani na vie naina i to:
x
x
x
x

Prirodnim jezikom,
Pseudokodom, vetakim precizno definisanim jezikom,
Grafiki, dijagramom toka ili strukturnim dijagramima ili
Odgovarajuim programskim jezikom.
.

107

Postoji vie naina za razvrstavanje algoritama, a metodologija klasifikacije je tema mnogih


rasprava. Jedan nain razvrstavanja je po metodologiji projektovanja ili primenjenom obrascu.
Postoji izvestan broj razliitih obrazaca kako se pristupa realizaciji algoritama.
Drugi nain razvrstavanja je po implementaciji. Rekurzivni algoritam je takav algoritam koji
poziva (referencira) sam sebe uzastopno dok se neki uslov ne ispuni, to je metoda primenjena
kod funkcionalnog programiranja. Algoritmi se obino razmatraju uz pretpostavku da u
jednom trenutku izvravaju jednu instrukciju jednog algoritma. Takvi raunari se ponekad
zovu serijski raunari. Algoritam osmiljen za takvo okruenje se zove serijski algoritam,
nasuprot paralelnim algoritmima, koji koriste prednosti raunarske arhitekture kod koje vie
procesora u istom trenu reava isti problem.
U teoriji sloenosti, to nije isto to i teorija izraunljivosti, se izuava problematika
sloenosti, kompleksnosti, algoritma, u smislu zauzimanja resursa. Vremenska sloenost
algoritma se iskazuje kao broj elementarnih koraka za obavljanje algoritma, to je zavisno od
veliine ulaza, a koja moe biti izraena u bitovima ili nekim slinim merilom. Ako kaemo
da je algoritam (A) ureivanja niza od n elemenata problem vremenske sloenosti n, znai da
dvostruko vei broj elemenata zahteva etiri puta vie vremena za ureivanje. Ako je, pak
drugi algoritam (B) malo paljivije napisan i bri je dvostruko, on e raditi dvostruko bre za
bilo koju veliinu niza.
Meutim, ako se namuimo i osmislimo sutinski drugaiji algoritam (V) za ureivanje, on
stvarno moe biti reda sloenosti nlog(n). Algoritmi (A) i (B) su iste sloenosti, jer se u
notaciji sa velikim O obeleavaju sa O(n), a u govoru se zovu 'algoritmi kvadratne
sloenosti', dok je algoritam (V) 'algoritam sloenosti nlog(n)'. Zakljuak: algoritam (V) je
najbolji sa stanovita korienja vremena. Prostorna sloenost se na isti nain odnosi na
funkciju zavisnosti zauzimanja memorijskog prostora u zavisnosti od veliine ulaza.
U programima imamo delove koji se vie puta ponavljaju i onda za njih obrazujemo ciklinu
strukturu ili programski ciklus. Obrazovanje programskih ciklusa znatno smanjuje duinu
programa.
Postoje while, untile, if i for petlje. Dokaz ispravnosti, korektnosti, algoritma je teoretski
matematiki postupak dokaza teoreme predikatskim raunom. Algoritam se izraava logikim
izrazima, definie se invarijanta - izraz ija vrednost ostaje nepromenjena sve vreme rada
algoritma - i dokazuje da izraz koji je vaio pre poetka vai i po zavretku obrade. Potpun
dokaz ispravnosti podrazumeva jo i dokaz da e se algoritam zavriti u konanom vremenu,
meutim to ume biti komplikovanije od prvog dela.

108

Primer 1.

Napraviti algoritam za sabiranje dva broja.

Reenje:

Primer 2.

Napisati algoritam koji za uneti prirodni broj do 100 ispisuje da li je broj


dvocifren ili jednocifren.

Reenje:

109

Primer 3.

Napraviti algoritam koji uitava brojeve X i Y i vri zamenu njihovih vrednosti.

Reenje:

Primer 4.

Napraviti algoritam koji odreuje apsolutnu vrednost broja X.

- x; x  0

x; x t 0

Reenje:

110

Primer 5.

Napisati algoritam koji ispituje da li je broj paran ili neparan

Reenje:

Primer 6.

Napraviti algoritam koji promenljivoj max dodeljuje najvecu vrednost tri zadata
broja a, b, c

Reenje:

111

Primer 7.

Napraviti algoritam koji izraunava izraz |t-3| i tampa uneti podatak t i apsolutnu
vrednost izraza .

Reenje:

Primer 8.

Napraviti algoritam koji tampa sve parne trocifrene brojeve.

Reenje:

112

Primer 9.

Napisati algoritam za izraunavanje faktorijala.

Reenje:

Primer 10. Napraviti algoritam za unoenje dva prirodna broja (x,y) i izraunavanje
izraza z = x/y. tampati vrednost izraza, z.

113

Reenje:

Primer 11. Napraviti algoritam koji izraunava i tampa kvadratni koren brojeva od 5 do 21.
Reenje:

Primer 12. Sastaviti algoritam kojim se za zadate realne brojeve a i b, izraunava funkcija y
prema formuli:

114

Reenje:
POETAK

a,b

a<b

( a  0.5)

(1  b )
2

(b  0.5)
(1  a )
2

KRAJ

Primer 13. Napraviti algoritam koji uitava vrednost x, izraunava i tampa vrednost
polinoma y .
Y

( X  3)( X  5)
( X  2)( X  3)

Reenje:

( X  3)( X  5)
( X  2)( X  3)

115

Primer 14. Napisati algoritam koji proverava da li je broj deljiv sa 5.


Reenje:

Primer 15. Napraviti algoritam za izraunavanje i tampanje reda 1 

1 1 1
  ... sa
2 4 8

tanou .
Reenje:
X1=1
X2=X1-1/21
X3=X2+1/22
X4=X3-1/23
Xn=Xn-1+((1)n+1*1/2n1)

116

Primer 16. Napraviti algoritam za izraunavanje i tampanje reda 

1 2 3 4 5 7
     ...
2 3 4 5 6 6

sa tanou .

Reenje: Opti lan je:

Xn

Xn

n
(1) n
n 1

n
znak
n 1

117

Primer 17. Napraviti algoritam koji tampa sve neparne prirodne brojeve koji su manji i
jednaki n.

Reenje:

Primer 18. Napraviti algoritam koji uitava stranice trougla a, b, c i izraunava povrinu
trougla po Heronovom obrascu i tampa vrednost povrine trougla i stranice tog
trougla.

Reenje:

P
S

S ( S  a )( S  b)( S  c)
abc
Poluobim.
2

Heronov obrazac.

118

abc
2

Primer 19. Napraviti algoritam koji izraunava i tampa vrednost broja  primenom izraza:
1 1 1
S
1    ... . Uslov izraunavanja je da je n-ti lan reda |an| < .
4
3 5 7

119

Reenje:

Primer 20. Zadata su dva prirodna broja k i m (k<m). Sastaviti algoritam koji odreuje broj
kombinacija k-te klase od m elemenata.
Reenje:

Broj kombinacija k-te klase od m elemenata: C

k!
m!(k  m)!

120

121

Primer 21. Napraviti algoritam koji izraunava prosenu srednju ocenu na ispitu iz ORT-a.
Reenje:

idn

Primer 22. U datoteci se nalazi 30 brojeva koji predstavljaju temperaturu od 130 juna 2004.
godine (T1- T30). Sastaviti algoritam koji izraunava prosenu temperaturu u
mesecu junu, tampa datum dana u kojima je temperatura bila manja od prosene
i broj dana kada je temperatura bila manja od prosene.

122

Reenje:

123

Primer 23. Napraviti algoritam koji uitava niz ai, pronalazi i tampa najmanji elemenat niza.
Reenje:

124

Primer 24. Napraviti algoritam koji dati niz dimenzije n, ureuje u rastuem redosledu.
Reenje:

125

Primer 25. Napraviti algoritam koji odreuje reenja kvadratne jednaine ax2+bx+c=0.
Reenje:
a
0, uslov da je jednaina kvadratna; Diskriminanta: D=b2-4ac
Realna i razliita reenja: x1
Realna i jednaka reenja: x

b D
b D
i x2
(a,b,c
0)
2a
2a
b
(a,b,c
0 i b2=4ac).
2a

Reenja su konjugovano kompleksna (b2-4ac <0). Jednaina nije kvadratna, x=-c/b (a=0 i
b
0).

126

Primer 26. Sastaviti algoritamsku emu za reavanje i tampanje reenja sistema linearnih
jednaina ax + by = p i mx + ny = q
Reenje:
ax + by = p, mx + ny = q,

Dx
D

, y

Dy
D

a b
D

m n

an  bm

Dx

p b

q n

pn  bq

Dy

aq  pm

D=0 ; Dx
0 ; Dy
0 sistem nema reenje. D =0 ; Dx = 0 i Dy = 0 sistem ima bezbroj reenja

127

Primer 27. Napraviti algoritam koji uitava datum u obliku d,m,g ; to znai dan, mesec,
godina, a zatim izraunava i tampa koji je to dan u godini.
Reenje:

128

Primer 28. Napraviti algoritam koji uitava elemente matrice kolonu po kolonu, a tampa
matricu vrstu po vrstu.
Reenje:

129

Primer 29. Napraviti algoritam koji uitava elemente kvadratne matrice (m=n) vrstu po
vrstu, nalazi i tampa najvei element na glavnoj dijagonali.
Reenje:

130

Primer 30. Nacrtati algoritam za program koji uitava n parova brojeva (1 d n d 50) xi i yi
(i = 1, 2,..,n) i izraunava sumu proizvoda S = (xi yi ) i proizvod sume
P = (xi + yi).
Reenje:
Izraunavanje S i P obavlja se u petlji. Broj prolazaka kroz petlju odreen je brojem n lanova
nizova x i y. Broj parova n unosi se na poetku programa. Ukoliko se uneta vrednost ne nalazi
u zadatom opsegu, program generie izvetaj i skae na kraj. Kad se broj n nalazi u zadatom
opsegu, novi parovi brojeva (xi yi) se uitavaju u petlji pre formiranja sume proizvoda (S),
odnosno proizvoda suma (P).
POETAK

unesi broj lanova nizova


xiy

NE

50

DA
zadavanje poetnih vrednosti
i = 1, S = 0, P = 1

xi, yi

n je
van
opsega

S = S + xi * yi
Petlja za formiranje
sume S i proizvoda
P od od lanova
nizova x i y

P = P * ( xi + yi )

i=i +1

NE

i >n
DA
S, P

KRAJ

Primer 31. Nacrtati algoritam za program koji od dva niza A i B koji imaju po 1 d n d 15
brojeva formira niz C sa elementima:
Ci = Ai, Ai d Bi 2, i = 1, 2, ...,n i Ci = Bi, Ai ! Bi 2, i = 1, 2,...,n
i daje izvetaj u kome se prikazuju lanovi niza Ai, Bi i Ci.
Reenje:
Na poetku programa unosi se vrednost za n i to predstavlja broj lanova nizova A, B i C.
Ukoliko se uneta vrednost za n ne nalazi u zadatom opsegu, program generie izvetaj i skae
na kraj.Algoritam treba da sadri dve petlje. U prvoj petlji uitavaju se vrednosti nizova A i B,
na osnovu ega se formira niz C, dok se u drugoj petlji omoguava formiranje izvetaja u
kome se prikazuju svi elementi nizova A, B i C.
131

Primer 32. Nacrtati algoritam programa za izraunavanje i prikazivanje funkcije y(x), gde je
x zadata celobrojna ulazna promenljiva:

y ( x)

Reenje:

x t 10
2 x  3
2
4  x  10
x
x  5
xd4

U ovom primeru se primenjuje struktura sa viestrukim odluivanjem koja odreuje putanju


izvravanja programa u zavisnosti od vrednosti ulazne promenljive x.

132

POETAK

x t 10
DA

NE

x!4

NE

DA

y ( x)

2x  3

y ( x)

x2

y ( x)

x5

y(x)

KRAJ

Primer 33. Nacrtati algoritam programa koji izraunava i prikazuje vrednosti polinoma f(x):

a 0  a1 x  a 2 x 2  ...  a n x n 0 d n d 20
x 0  k' x
k 0,1,..., m

f ( x)
x

Poznate su ulazne vrednosti: n, a0, a1, ... an, x0 i x i m.

Reenje:
Za organizovanje programskog ciklusa za izraunavanje polinoma f(x), pogodno je da se
polinom zapie u obliku:
f ( x) a 0  x(a1  x(a 2  ...x(a n 1  xa n )))
Zbog toga algoritam treba da sadri dva koncentrina ciklusa izraunavanja, odnosno dve
petlje. U unutranjoj petlji vri izraunavanje vrednosti polinoma za x = x0, poev od xan.
Unutranji ciklus se izvrava za i =n, n-1,...,0 sa korakom -1. U spoljanjem ciklusu se vri
postavljanje f = 0, izdavanje izraunate vrednosti polinoma i uveanje vrednosti x za naredno
izraunavanje. Spoljanji ciklus se izvrava za k = 0, 1, ..., m sa korakom +1, odnosno onoliko
puta koliko puta treba izraunati vrednost polinoma.

133

Primer 34. Definisati dijagram toka programa koji za zadatu vrednost promenljive x
izraunava vrednost funkcije:

y ( x)

2 x  x 2  3x  4

i prikazuje vrednosti za x i y(x) pod uslovom da je zadovoljeno x 2  3x  4 ! 0 . Ukoliko


navedeni uslov nije zadovoljen, izlazi se iz programa i tampa se izvetaj da je stanje
nedefinisano.

134

Reenje:
Polinom koji se nalazi ispod korena funkcije y(x) moe da se proglasi za funkciju f(x), ija se
vrednost izraunava na poetku programa za unetu vrednost promenljive x, a zatim se ispituje
da li je zadovoljen uslov da je vrednost polinoma vea od 0. Ukoliko je uslov ispunjen
nastavlja se sa izraunavanjem vrednosti funkcije y(x) i izdaje se izvetaj u kome se nalazi
vrednost promenljive x i funkcije y(x).

Primer 35. Definisati dijagram toka koji za zadate celobrojne vrednosti xi i yi , i = 1, 2


izraunava i prikazuje vrednost funkcije Z:

F ( x1 , y1 )
F ( x2, y 2 )

ako je F ( x, y )

2
2x 2  8 y  e2x 8 y

Reenje:
Izraz koji se ponavlja u funkciji F moe da se definie kao posebna funkcija Q(x, y):
Q ( x, y ) 2 x 2  8 y
tako da funkcija F(x, y) moe da se zapie u obliku: F ( x, y ) Q( x, y )  eQ ( x, y ) Vrednost
izraza Z moe da se izrauna u petlji u kojoj se uitavaju vrednosti za parove promenljivih x i
y (xi, yi, i = 1, 2), pri emu se u prvom prolasku kroz petlju izrazu Z dodeljuje vrednost
funkcije F(x1, y1), dok se u drugom prolasku tako dobijena vrednost za Z deli sa vrednou
funkcije F(x2, y2).

135

Q ( xi , y i )

2 xi

 8 yi

F(xi , yi ) Q(xi , yi )  e

Q( xi , yi )

Z * F ( xi , y i )

Z
F ( xi , yi )

Primer 36. U pravougaonom koordinatnom sistemu zadat je pravougaonik sa temenima A,


B, C i D Ako su poznate koordinate temena, nacrtati dijagram toka kojim se
odreuje da li je taka M (x0, y0) unutar ili izvan pravougaonika.

y
b

A
a

-a

x
C

-b

136

Reenje:
Ako su zadate veliine a i b, tada su poznate koordinate svih temena praovougaonika
prikazanog na slici: A(a, b), B(-a, b), C(-a, -b) i D(a, -b). Taka M(x0, y0) nalazi se unutar
pravougaonika ako je x0 d a i y 0 d b .

137

Primer 37. Za ulazne podatke k i x


izraunati vrednost trigonometrijske funkcije:

y ( x)

k 1
sin 3 x

S
sin ( - x ) cos x k 2
4

cos(S  x )
k 3

0
k {1, 2, 3}

Reenje:
Algoritam moe da se realizuje kao:
x klasina struktura sa viestrukim odluivanjem i
x kao struktura sa CASE odluivanjem.
U oba sluaja, na poetku se uitavaju vrednosti parametra x i kontrolne promenljive k od ije
vrednosti zavisi nain izraunavanja vrednosti funkcije y(x).

a)

138

b)

Primer 38. Nacrtati dijagram toka za program koji niz brojeva a1, a2, ..., an, 1 d n d 10
ureuje u opadajui niz.
Reenje: Niz brojeva moe da se uredi uporeivanjem svaka dva susedna broja u nizu:
ai t ai+1, i = 1, 2, ..., n
Mogu da nastanu dva sluaja: Brojevi ai i ai+1 zadovoljavaju zahtevanu relaciju, pa takve
lanove niza ne treba premetati. Brojevi ai i ai+1 ne zadovoljavaju zahtevanu relaciju, pa
takvim brojevima treba promeniti mesta u nizu.
p ai
Razmena mesta lanova u nizu moe da se uradi na sledei nain: ai ai 1
a i 1 p
Algoritam treba da se sastoji iz dve koncentrine petlje: U unutranjoj petlji se vri uzajamno
poreenje dva susedna lana niza. U spoljanjoj petlji se odluuje da li je zavreno ureivanje
lanova i u tu svrhu moe da se koristi neka pomona promenljiva K koja predstavlja
indikaciju da li je dolo do promene mesta meu lanovima niza. Pre prolaska kroz niz
postavi se vrednost promenljive K = 0, a zatim ako doe do promene mesta lanova niza
postavi se K = 1. Ako je po izlasku iz unutranjeg ciklusa K = 1, nastavlja se ureenje niza, a
ako je K = 0 niz je ureen i izlazi se iz programa, odnosno prikazuje se ceo ureeni niz.

139

1 d n d 10

a i t ai 1

p ai
ai ai 1
ai 1 p

140

Primer 39. Izraunati vrednost funkcije f ( x) e 4 x cos 4 x u zadatom intervalu nezavisne


promenljive x [x0, xn] i sa zadatim priratajem 'x ('x t 0). Nakon svakog
izraunavanja prikazati u izvetaju vrednost promenljive x i odgovarajuu
vrednost funkcije f(x).
Reenje:
Vrednost funkcije f(x) odreuje se u petlji, poev od vrednosti x0. Petlja se izvrava sve dok
promenljiva x ne dostigne vrednost xn, s tim to se pri svakom prolasku kroz petlju vrednost
promenljive x uveava za 'x. Na poetku programa treba uneti vrednosti za x0, xn i 'x, pri
emu je uslov za izvravanje petlje x0 d xn. Poto je vrednost prirataja 'x t 0, broj ciklusa
izvavanja petlje je prirodan broj koji direktno zavisi od vrednosti prirataja 'x.
U sluaju da je 'x = 0, petlja se izvrava samo jednom, odnosno dobija se samo jedna
vrednost funkcije f(x), jer je tada x = x0.
Ako je 'x > 0, broj prolazaka kroz petlju odreuje se kao kolinik razlike maksimalne (xn) i
minimalne (x0) vrednosti promenljive x i prirataja 'x:
x n  x0
'x
Broj razliitih vrednosti funkcije f(x) u zavisnosti od promenljive x odgovara broju prolazaka
kroz petlju. Program se zavrava kada je x = xn. Predvieno je da se vrednost funkcije f(x)i
odgovarajua vrednost promenljive x prikazuju pri svakom prolasku kroz petlju.

f=e

-4x

cos4x

141

Primer 40. Nacrtati dijagram toka programa koji za zadatu vrednost promenljive N t 1
rauna sumu:
N

k 1

Reenje:
Poto je N poznata vrednost koja se uitava na poetku programa, traena suma moe da se
izrauna jedino ako je N u dozvoljenom opsegu, to se ispituje na poetku programa. Ako je N
van opsega, formira se poruka i izlazi se iz programa. Ako je N u dozvoljenom opsegu,
vrednost sume S rauna se u petlji u kojoj se inkrementira vrednost promenljive k sve dok je
k d N. Po izlasku iz petlje prikazuje se zadata vrednost N i suma S.

N t1

142

Primer 41. Nacrtati dijagram toka programa koji rauna m vrednosti funkcije y(x):

y ( x) x 2  12 sin 3 x
ako se promenljiva x menja poev od vrednosti x0 sa priratajem 'x, a zatim nalazi minimalnu
vrednost funkcije y(x) i vrednost promenljive x.
Reenje:
Dijagram toka sadri dve nezavisne petlje. U prvoj se obavlja izraunavanje vrednosti
funkcije y, i tada se dobija m parova (x1, y1), (x2, y2),...,(xm, ym). U drugoj petlji se odreuje par
(x, y) koji se sastoji od minimalne vrednosti funkcije y i odgovarajuu vrednosti promenljive
x, pri emu se polazi od pretpostavke da je prva izraunata vrednost funkcije y1 dobijena za x
= x1 najmanja vrednost funkcije. Ukoliko se utvrdi da je neka vrednost funkcije yi manja,
onda se ova vrednost uzima kao nova najmanja, kojoj odgovara promenljiva xi. Na kraju
ispitivanja par (x, y) predstavlja traenu najmanju vrednost funkcije y i odgovarajuu vrednost
promenljive x.

x, x,m

xi2  12 sin 3 xi

xi 1

xi  'x

x1

y1

xi

yi

143

Primer 42. Neka su zadata tri niza brojeva, od kojih svaki sadri po 10 brojeva. Nacrtati
dijagram toka za program koji izraunava i prikazuje srednju vrednost svakog
niza.
Reenje:
Dijagram toka treba da sadri dve koncentrine petlje. U unutranjoj petlji se uitava 10
lanova niza i rauna njihov zbir, dok se u spoljanjoj petlji rauna srednja vrednost niza i
prikazuje u izvetaju. Spoljanja petlja se izvrava tri puta, nakon ega se program zavrava.

144

Primer 43. Definisati algoritam koji za zadato x izraunava x po Njutnovoj iterativnoj


formuli:
1
x
xi 1
( x i  ) i 0,1,2,...
2
xi
gde je x0 x  1 . Proces izraunavanja se prekida kada se dostigne zadata tanost H , tako da
je xi  x i 1  H .
Reenje:
Ulazne veliine su x i H , dok je izlazna veliina izraunat kvadratni koren iz x. Prema
primenjenoj metodi to e biti xi+1 koji se izraunava u poslednjoj iteraciji. Za iterativno
raunanje mogu da se koriste samo dve promenljive x0 (prehodna vrednost) i x1 (naredna
vrednost).
Ovde se koristi iterativni ciklus, to znai da je broj ponavljanja ciklusa nepoznat pre
izvrenja programa. On zavisi od brzine konvergencije iterativnog postupka i zadate
tanosti ( H ).

x, H

x0

x1

1
2

x 1

(x 0 

x0

x0  x1  H

x0 x1

x1

145

ZADACI ZA SAMOSTALAN RAD


1.
2.
3.
4.

Napisati dijagram toka programa koji izraunava srednju vrednost n brojeva.


Napisati algoritam koji izraunava m-ti stepen celog broja a.
Napisati dijagram toka stanja koji proverava da li je broj deljiv sa 15.
Nacrtati dijagram toka programa koji odreuje reenja sistema jednaina za N zadatih
vrednosti promenljivih x i y:
a1 xi  b1 yi c1

a 2 xi  b2 yi

c2

5. Sastaviti algoritam koji za dato x izraunava y prema navedenoj formuli:

6. Nacrtati dijagram toka programa koji rauna vrednost funkcije:

z sin( x  5)  cos 2 x
ako se vrednosti promenljive x nalaze u opsegu [x0, xm], pri emu se x menja sa korakom
'x. Program se zavrava kada je izraunato K vrednosti funkcije ili ako je promenljiva x
dostigla svoju maksimalnu vrednost xm.
7. Realizovati dijagram toka programa koji u zavisnosti od vrednosti kontrolne promenljive
C i poznatog poluprenika krunice r odreuje obim kruga O (C = 1 ), povrinu krune
povri PK (C = 2) ili povrinu kvadrata oko koga je opisana data krunica S (C = 3).
Program testira u petlji vrednost kontrolne promenljive C koja se uitava sa tastature i
zavrava se izvetajem o brojnoj vrednosti traene izraunate veliine kada promenljiva
C dobije jednu od definisanih vrednosti.
8. Odrediti vrednosti funkcije Zi (i = 1,...,8):
Z i ( x)

ln( xi ) sin 2 xi

Pri promeni indeksa i u intervalu 1 d i d 4 argument x se poveava od vrednosti x1 =


1.2 za 'x = 0.3, dok se u intervalu 5 d i d 8 poveava za 'x = 0.2.
9. Na osnovu zadate formule

y i 1

 yi 1  yi (2  a 2 'x 2 )

odrediti vrednost parametra yi ako su zadati poetni uslovi:


y0 = 1 i y1 = 1
0dxd1
za uitane podatke a = 0.8 i 'x = 0.05.
10.Neka je A3A2A1A0 etvorocifren dekadni broj. Napisati dijagram toka koji izraunava
koliko postoji etvorocifrenih brojeva kod kojih je zbir prve dve cifre jednak zbiru
sledee dve cifre, tj. A3 + A2 = A1 + A0.
11. Napraviti algoritam za izraunavanje zbira elemenata svake vrste i svake kolone
dvodimenzionalnog niza X (n, m).
146

12. Napraviti algoritam koji odreuje da li se krug moe prekriti kvadratom ili kvadrat
krugom, ako su date povrine kvadrata i kruga.
13. Napravi algoritam kojim se uitava ceo broj n i realni broj a, a zatim se izraunava an.
Algoritam mora da radi a R i  n Z.
14. Naprraviti algoritam koji odreuje maksimum za n unetih brojeva.
15. Napravi algoritam koji uitava cele brojeve a i b i za njih izraunava NZS i NZD.
16. Napravi algoritam kojim se najpre uitava broj n, koji predstavlja broj lanova niza,
odreuje se indeks najveeg i najmanjeg lana niza, a zatim se tampaju ti indeksi i ti
lanovi niza.
17. Napraviti algoritam kojim se uitava broj x i realna greka , a zatim na bazi razvoja u
x3 x5
Maklorenov red funkcije sin x x 

 ... izraunati vrednost sin x sa grekom
3! 5!
manjom od zadatog .
18. Napraviti algoritam kojim se uitava broj x i realna greka , a zatim na bazi razvoja u
x2 x4
Maklorenov red funkcije cos x 1 

 ... izraunati vrednost sin x sa grekom
2! 4!
manjom od zadatog .
19. Napraviti algoritam kojim se uitava prirodan broj n, a zatim se proverava da li je taj
broj prost, i tampa odgovarajua poruka.
20. Napraviti algoritam koji uitava dananji datum u obliku d,m,g (dan, mesec, godina), a
zatim odreuje i tampa sutranji datum.
21. Napraviti algoritam koji odreuje koliko od unetih 10 brojeva je vee od 100.
22. Napraviti algoritam koji uitava elemente kvadratne matrice (m=n) vrstu po vrstu, nalazi
i tampa najmanji element ispod glavne dijagonale.
23. Napraviti algoritam kojim se uitavaju brojevi m i n koji predstavljaju dimenzije matrice
A, a zatim se uitavaju elementi matrice amn i odreuje:
a) Suma elementa na glavnoj dijagonali;
b) Vrednost najveeg elementa iznad glavne dijagonale;
c) Po apsolutnoj vrednosti najvei element u sporednoj dijagonali.

147

LITERATURA

1. Obradovi S. "Osnovi raunarske tehnike", Akademska tampa, Beograd, 2003.


2. Obradovi S. "Vetine dobrog programiranja", Galeb, Beograd, 1997.
3. Mijalkovi M. "Programiranje MSC96 serije mikrokontrolera", Via elektrotehnika
kola, Beograd, 2002.
4. Daniels J. " Digital design from zero to one", Johan Willey&Sons, Inc., New York 1996.
5. Lipschutz S. "Shaum`s outline of theory and problems of essential computer
mathematics", Mc Graw-Hill Publishing Company, New York, 1982.
6. Parezanovi N. " Raunari i programiranje", Nauna knjiga, Beograd, 1980.

148

SADRAJ

1.

Brojni sistemi i konverzija brojeva iz jednog brojnog sistema u drugi.................

2.

Pojam komplementa, binarni brojni sistem i binarni brojevi sa znakom..............

10

3.

Format zapisa brojeva u raunarskom sistemu......................................................

26

4.

Sabiranje primenom kodova "8421" i "Vie 3".....................................................

40

5.

Analiza i sinteza logikih funkcija........................................................................

46

6.

Minimizacija logikih funkcija primenom Karnoovih mapa.................................

60

7.

Primena unarnih i binarnih logikih operacija.......................................................

94

8.

Algoritmi................................................................................................................ 107
Literatura................................................................................................................ 148

You might also like