osnove racunarstva, mikroprogrami

6
Zadatak: Napisati mikroprogram u simboličkom i mnemoničkom obliku, kojim se realizuje sledeća operacija: ako je broj koji se nalazi u registru R2 paran izračunati broj nula binarne reči koja je smeštena u registru R2, a ako je broj koji se nalazi u registru R2 neparan izračunati broj jedinica binarne reči koja je smeštena u registru R2. Dobijeni rezultat smestiti u registar R3. Početna registru R2. Dobijeni rezultat smestiti u registar R3. Početna mikroinstrukcija je na lokaciji 25.

Upload: milos-lucky-lakicevic

Post on 06-Aug-2015

78 views

Category:

Documents


5 download

DESCRIPTION

;)

TRANSCRIPT

Page 1: Osnove racunarstva, Mikroprogrami

Zadatak:

Napisati mikroprogram u simboličkom i mnemoničkomobliku, kojim se realizuje sledeća operacija: ako je broj koji se nalazi u registru R2 paran izračunati broj nula binarne reči koja je smeštena u registru R2, a ako je broj koji se nalazi u registru R2 neparan izračunati broj jedinica binarne reči koja je smeštena u registru R2. Dobijeni rezultat smestiti u registar R3. Početnaregistru R2. Dobijeni rezultat smestiti u registar R3. Početnamikroinstrukcija je na lokaciji 25.

Page 2: Osnove racunarstva, Mikroprogrami

START

R3

C=1

25 0

R2 RRC (R2)

ne da (neparan)

R2 COM(R2)

R3 INC (R3)

R2 R2

26

27

28

29

30 R2 R2 C 0

Z=1 KRAJ da

R2 RRC (R2)

C=0

ne

da

R3 INC (R3) ne

30

31

32

33

34

Page 3: Osnove racunarstva, Mikroprogrami

START

R3

C=1

25 0

R2 RRC (R2)

ne da (neparan)

R2 COM(R2)

R3 INC (R3)

R2 R2

26

27

28

29

30

25 R3 ← 0, CAR ← CAR + 126 R2 ← RRC (R2), CAR ← CAR + 127 IF (C=1) THEN CAR ← 29 ELSE CAR ← CAR + 128 R2 ← COM (R2), CAR ← CAR + 129 R3 ← INC (R3), CAR ← CAR + 130 R2 ← R2, C ← 0, CAR ← CAR + 131 IF (Z=1), CAR ← SPOLJAŠNJA ADRESA

ELSE CAR ← CAR + 132 R2 ← RRC (R2), CAR ← CAR + 133 IF (C=0) THEN CAR ← 32 ELSE CAR ← CAR + 134 R3 ← INC (R3), CAR ← 30

R2 R2 C 0

Z=1 KRAJ da

R2 RRC (R2)

C=0

ne

da

R3 INC (R3) ne

30

31

32

33

34

Page 4: Osnove racunarstva, Mikroprogrami

25 R3 ← 0, CAR ← CAR + 126 R2 ← RRC (R2), CAR ← CAR + 127 IF (C=1) THEN CAR ← 29 ELSE CAR ← CAR + 128 R2 ← COM (R2), CAR ← CAR + 129 R3 ← INC (R3), CAR ← CAR + 130 R2 ← R2, C ← 0, CAR ← CAR + 131 IF (Z=1), CAR ← SPOLJAŠNJA ADRESA ELSE CAR ← CAR + 132 R2 ← RRC (R2), CAR ← CAR + 133 IF (C=0) THEN CAR ← 32 ELSE CAR ← CAR + 134 R3 ← INC (R3), CAR ← 30

A B D F H MUX1 MUX2 ADRESA25 - - R3 TSF ZERO - NEXT -

26 R2 - R2 TSF RRC - NEXT -

27 - - none TSF NSH INT LC 29

28 R2 - R2 COM NSH - NEXT -

29 R3 - R3 INC NSH - NEXT -

30 R2 - R2 TRC NSH - NEXT -

31 - - none TSF NSH EXT LZ -

32 R2 - R2 TSF RRC - NEXT -

33 - - none TSF NSH INT LNC 32

34 R3 - R3 INC NSH INT LAD 30

Page 5: Osnove racunarstva, Mikroprogrami

Zadatak:

Napisati mikroprogram u simboličkom i mnemoničkomobliku, kojim se realizuje sledeća operacija: R f R R4 1 5← −( )

Funkcija y=f(x) je prikazana grafički i analitički. Početnamikroinstrukcija je na lokaciji 25.

=<−

=0,0

0,1

)(xza

xza

xf

≥<<

==

1,

10,1

0,0)(

xzax

xza

xzaxf

Page 6: Osnove racunarstva, Mikroprogrami

START

R4 R1 - R5

C=1

Z=1 R4 0

R4← R4-1

R4 0 R4← R4-1

da ne (R1 - R5 < 0)

ne da

25

26

27

28 29

30 34

S=1

R4 0

R4← R4+1

KRAJ

ne da 31

33

32

35