SOCS Test 1
Vraag 1 – i 0: 1: 2: 3: 4: 5: 6: 7: 8: 9: R1 = 0 1 2 HIA.w R1,0 LUS: LEZ BIG R0,A(R1) SPR SWITCH(+R1) SPR LUS SWITCH: SPR.i IND SPR.i IND+1 STP IND: 3 2 1 A: RESGR 10 Aantal uitgevoerde instructies: Aantal ingelezen getallen: 8 1
Vraag 1 – ii c & d. operand 8 R1 R1 + 1 R1 operand Welke bevelen? OPT R1,1 HIA R1,1(R1) OPT.a R1,1 HIA.w R1,2(-R1) HIA.w R1,0(R1+) R1 R1 + Geheugen[1] R1 Geheugen[(R1 + 1) mod 104] R1 R1 + 1 = 9 R1 R1 – 1 = 7; R1 2 + R1 = 9 R1 R1 = 8 !!! c & d. operand 8 R1 R1 + 1 R1 operand
Vraag 1 – iii 2222222222 R0 9999999999 R2 R1 0000008998 R9 HIA R2,102(R1+) BIG.i R2,105 HST R0 OPT.i R0,0(R9+) BIG R0,100(+R1) 2222222222 R0 9999999999 R2 R1 0000008998 R9 0000000100 0000000204 0000000001 0000000000 0000000104 0000008999 0000009000 0000000104 0000000105 0000000101 0101 0102 0104 0000000102 0105 0000000100 0103 0000000104 0000000105 0000000101 0101 0102 0104 0000000102 0105 0000000100 0103 0000000204 0000000104 0000000100 0000000101 8998 8999 0000000102 9000 0000000100 0000000101 8998 8999 0000000102 9000
Vraag 1 – iv | k R1 | vakptr R2 | alleen R0 wijzigen int * vakptr; int vaknr[10]; int k; vakptr = &vaknr[k]; vaknr[k+6] = *vakptr; | k R1 | vakptr R2 | alleen R0 wijzigen HIA.a R2,vaknr(R1) HIA R0,0(R2) BIG R0,vaknr+6(R1) geen .i omdat wijzer in register! constante (deel v/d) index: adres + constante
Vraag 1 – v /* Niet gelineariseerd */ /* gelineariseerd */ int m[10][20]; int s,t; void main() { ... m[s+t-5][5*t-20*s] = getint(); } /* gelineariseerd */ int M[…]; int s,t; void main() { ... int z = …; M[z] = getint(); } m[i][j] M[k] k = 20 * i + j Dus: z = 20 * (s+t-5) + (5*t – 20*s) = 25 * t – 100 Mogelijk waarden voor t? 0 z 199 0 25 * t – 100 199 100 25 * t 299 4 t 11
Vraag 2 Hoofdprogramma + functies C Drama Stappen: Parameters en Lokale variabelen int en int * int [], int * [], int (*)[] struct, struct * struct [], struct * [] Resultaat int, int * void GEEN struct C Drama Stappen: Eerst AR tekenen Daarna: toekenningstabel opstellen Ten slotte: vertalen Op elk onderdeel staan punten!
Te kennen leerstof voor test 1: Hoofdstuk 1 p. 1 p. 196 Uitgezonderd: 1.10.6 Functieresultaat via de stapel “Parameters voor het hoofdprogramma” 1.12.4 Record als resultaat
Test 2 vragen Conventies! Gesloten boek # kleinere vragen Ev. meerkeuzevraag + verantwoording Linearisatie C programma vertalen Conventies! Anders fout! Gesloten boek Formularium Op 4 punten (2de test op 6 punten)
Oefen!