TTY TIE-05200 Mikroprosessorit 4 op
Matti Haavisto Tentti 17.10.2016
e Eilaskinta, ei lisämateriaalia.
e Kirjoita/piirrä selkeästi!!!!!
1 — Kirjoita yhtälö, jonka alla oleva ohjelma laskee. Muuttujien nimet saat päättää itse.
GP)
yhtalo:
0x000000AC: PUSH (111)
Ox09Ra00Bv: ADD r11,sp,t0
0x000090B4: SUB sp,sp,t0x18
0x000000B8: LDR r2,[r11,4-0x14]
0x000000BC: LDR r3,[r11,4-0x10]
0x0080000co: ADD [35 R35 12.
0x0900008C4: LDR r2,[r11,4-0x10]
0x008000c8: MUL 13,r2,r3 ; multiply by...
0x00000acc: SUB r3,r3,45
0x0R00aaDo: STR r3,[111,4-8]
0x000000D4: LDR r3,[111,4-8]
0x008090D8: MOv r0,r3
0x00090LDc: ADD sp,r11,t0
0x000000EL: POP (r11)
0x000000E4: BX 1r
2 Selosta edellisen ohjelman BX > 1x -käskyn hakuun ja suoritukseen liittyvät
tapahtumat yksitellen (mieluiten ranskalaisin viivoin). Aloita siitä, kun
ohjelmalaskurin arvo on sama kuin käskyn osoite 0x000000F4. (7p)
3 — Piirrä kuva pinon sisällöstä yllä olevan ohjelman suoritushetkellä (siltä osin kuin
pinon sisällöstä tiedetään). Käytä tehtävän 1 muuttujien nimiä. (6p)
4 Selitä lyhyesti
a) konekielinen käsky (2p)
b) ohjelmalaskuri (program counter, PC) (2p)
€) osoiteväylä. (2p)
5 Selitä keskeytysten mekanismi. (6p)