• No results found

Toets 1

N/A
N/A
Protected

Academic year: 2021

Share "Toets 1"

Copied!
16
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Toets 1

5 november 2019

(2)

Vraag 1.i

#instr #L #S R0 Stapel

1 1

1 1 0

1 1 1 [0]

1 2 1

4 5 1 1 [0]

0: SPR MAIN 1: STP

2: MAIN: HIA.w R0,0 3: BST R0

4: SPR.i IND(R0+) 5: HST R0

6: SPR MAIN 7: IND: 4

8: 3

9: 1

10: 0

[1,2,3]

Top

BT  4

(3)

Vraag 1.i

#instr #L #S R0 Stapel

4 5 1 1 [0]

1 2 2 [0]

5 7 1 2 [0]

0: SPR MAIN 1: STP

2: MAIN: HIA.w R0,0 3: BST R0

4: SPR.i IND(R0+) 5: HST R0

6: SPR MAIN 7: IND: 4

8: 3

9: 1

10: 0

[1,2,3]

Top

BT  3

(4)

Vraag 1.i

#instr #L #S R0 Stapel

5 7 1 2 [0]

1 1 1 [2,0]

1 2 3

7 10 2 3 [2,0]

0: SPR MAIN 1: STP

2: MAIN: HIA.w R0,0 3: BST R0

4: SPR.i IND(R0+) 5: HST R0

6: SPR MAIN 7: IND: 4

8: 3

9: 1

10: 0

[1,2,3]

Top

BT  1

(5)

Vraag 1.i

#instr #L #S R0 Stapel

7 10 2 3 [2,0]

1 1

8 11 2 2

0 0: SPR MAIN

1: STP

2: MAIN: HIA.w R0,0 3: BST R0

4: SPR.i IND(R0+) 5: HST R0

6: SPR MAIN 7: IND: 4

8: 3

9: 1

10: 0

[1,2,3]

Top

(6)

Vraag 1.ii

HST R0

BIGR1,200(-R2)

AFT.i R3,203(R4+) BIGR0,0(R9)

0000000202 0000000201 0000000200

1000 1001 1002

0000000103 0000000102 0000000101 0000000100

0200 0201 0202 0203 0204 0205

0000000205 0000001002 0000001001 0000001000

0100 0101 0102 0103

0000001003

9876543210 0000000002 0000001002 R0

R1 R2 R3 R4 R9

0000000000

0000000204 0000000300

0000000400 0123456789

8997 8998 8999 9000

0000000200 9999999999

0000008998 0000000300

0000008999 0000000001

9876543210

0000000000 0000000001

0000000300

(7)

Vraag 1.iii

/* Gelineariseerd */

int R[………]; // rij-lin.

int K[………]; // kolom-lin.

int s,t;

void main() { ...

int a = …;

int b = …;

R[a] = K[b];

/* Niet gelineariseerd */

int r[20][40];

int k[60][20];

int x,y;

void main() { ...

r[s-2*t][84*t-40*s-200] =

k[10*t-60*s-100][s+5]; ...

800 1200

40*(s – 2*t) + (84*t – 40*s – 200)

= 4*t – 200

60*(s + 5) + (10*t – 60*s – 100)

= 10*t + 200

0 ≤ a < 800

0 ≤ 4*t – 200 < 800 50 ≤ t < 250

0 ≤ b < 1200

0 ≤ 10*t + 200 < 1200 -20 ≤ t < 100

50 ≤ t < 100

(8)

Vraag 2

struct punt bezocht[10];

main () {

int i;

register int j;

struct punt loc;

int klasse[3];

...

i = loc.info;

bezocht[2].y_co =

vind(klasse, &klasse[i], &loc);

...

}

int vind(int kl[],

register int *inf, struct punt * wzr) {

struct punt tdl;

register int k;

...

if (wzr->info != *inf) return (k-1);

else

return vind(kl,

&(wzr->y_co), &tdl) + *inf;

} struct punt {

int x_co;

int y_co;

int info;

};

(9)

Vraag 2

2. Toewijzingstabel

vind

Par Adres kl

inf wzr

Var Adres tdl

k RES TKA

Vorige R8 R8

In registers:

• Par:

• var:

par. kl inf k

1. Teken AR

par. wzr

tdl.info

Kopie R6

2(R8) R1

R6 R0 - 4(R8)

1(R8)

int vind(int kl[],

register int *inf, struct punt * wzr) {

struct punt tdl;

register int k;

...

if (wzr->info != *inf) return (k-1);

else

return vind(kl,

&(wzr->y_co), &tdl) + *inf;

}

tdl.y_co

var tdl.y_co

(10)

Vraag 2

3. Oproeprooster

vind

Par Adres kl

inf wzr

Var Adres tdl

k RES

2(R8) R1

R6 R0 - 4(R8)

1(R8)

R0-2?

Res?

formeel actueel hoe

kl inf wzr

R0 R1

kl

&tdl

stapel R1

stapel

int vind(int kl[],

register int *inf, struct punt * wzr) {

struct punt tdl;

register int k;

...

if (wzr->info != *inf) return (k-1);

else

return vind(kl,

&(wzr->y_co), &tdl) + *inf;

}

&(wzr->y_co)

R1 gebruik (par. ‘inf’)

(11)

Vraag 2

struct punt bezocht[10];

main () {

int i;

register int j;

struct punt loc;

int klasse[3];

...

i = loc.info;

bezocht[2].y_co = vind(klasse,

&klasse[i], &loc);

...

}

struct punt { int x_co;

int y_co;

int info;

};

main

Var Adres i

j loc klasse

Glob var Label

bezocht BEZOCHT

R6 - 2(R8) In registers:

• var: j

1. Teken AR

var. i

TKA = -1 R8 = -1 R8

loc.info

loc.y_co

var

loc.x_co

k

lasse[2]

klasse [1]

- 5(R8) - 8(R8)

2. Toewijzingstabel

v.

klasse[0]

(12)

Vraag 2

struct punt bezocht[10];

main () {

int i;

register int j;

struct punt loc;

int klasse[3];

...

i = loc.info;

bezocht[2].y_co = vind(klasse,

&klasse[i], &loc);

...

}

struct punt { int x_co;

int y_co;

int info;

};

3. Oproeprooster

R0-2?

Res?

Form. actueel hoe kl

inf wzr

R0 -

klasse

&klasse[i]

&loc

stapel R1

stapel

vind

Par Adres kl

inf wzr

Var Adres tdl

k RES

2(R8) R1

R6 R0 - 4(R8)

1(R8)

main

Var Adres i

j loc klasse

R6 - 2(R8)

- 5(R8) - 8(R8)

Geen R0, R1, R2 in gebruik

(13)

Vraag 2

4. Vertaling

Huistaak!

(14)

Vraag 2

var. i

TKA = -1 R8 = -1

loc.info

loc.y_co

var. loc.x_co

klasse[2]

klasse[1]

TKA

Vorige R8

par. kl

par. wzr

tdl.info

R8

A R( m ain )

AR (vin d)

5. Volledige stapel

var. klasse[0]

SBR vind TKA_MAIN: HST R8

R0-2?

Res?

Form. actueel hoe kl

inf wzr

R0 -

klasse

&klasse[i]

&loc

stapel R1

stapel

= &loc

= klasse

= TKA_MAIN

Kopie R6

var. tdl.x_co

tdl.y_co

(15)

Vraag 2

var. i

TKA = -1 R8 = -1

loc.info

loc.y_co

var. loc.x_co

klasse[2]

klasse[1]

TKA = TKA_MAIN Vorige R8

par. kl = klasse

par. wzr = &loc tdl.info

TKA =

Vorige R8

par. kl =

par. wzr =

tdl.info Kopie R6

AR (vin d)

&tdl kl TKA_VIND

R8 R9

A R( m ain )

AR (vin d)

5. Volledige stapel

Kopie R6

Kopie R1 = &klasse[i]

var. klasse[0]

var. tdl.x_co tdl.y_co

var. tdl.x_co tdl.y_co

SBR vind TKA_VIND: HST R8

R0-2?

Res?

formeel actueel hoe

kl

infwzr

R0 R1

kl

&tdl

stapel R1

stapel

(16)

Vraag 2

var. i

TKA = -1 R8 = -1

loc.info

loc.y_co

var. loc.x_co

klasse[2]

klasse[1]

TKA = TKA_MAIN Vorige R8

par. kl = klasse

par. wzr = &loc tdl.info

TKA =

Vorige R8

par. kl =

par. wzr =

tdl.info Kopie R6

AR (vin d)

&tdl kl TKA_VIND

R8 R9

A R( m ain )

AR (vin d)

5. Volledige stapel

Kopie R6

Kopie R1 = &klasse[i]

var. klasse[0]

var. tdl.x_co tdl.y_co

var. tdl.x_co

tdl.y_co

Referenties

GERELATEERDE DOCUMENTEN

Vervolgens kijkt hij in BINAS tabel 45A met welk positief ion chloride wel neerslaat en sulfaat niet, of andersom.. Dit kunnen barium-ionen

Hij concludeert dat de drie alcoholen alle drie aanwezig zijn en wil nu weten hoeveel ethanol er in het mengsel zit.. Daarvoor herhaalt hij de proef waarbij hij 1,0 mL van

Het is een variant op de ‘cono¨ ıde van Pl¨ ucker’ die door Julius Pl¨ ucker in de 19de eeuw werd beschreven. Ook de Belg Eug` ene Catalan bestudeerde in die tijd

Toets thema 1 De School Pagina 1 Toets thema 1: De school.. Vul de

Toets thema 2 Het Lichaam Pagina 1 Toets thema 2: Het lichaam.. Kiezen

Omdat je alleen maar groot- heden van eenzelfde dimensie kan optellen (of vergelijken) moeten γ en βr dimensieloos zijn. Je kan je ook beroepen op de perkenwet die voor elke

Ofschoon de zwaartekracht een uitwendige kracht is die op het systeem blokje + kogel inwerkt, mag je wel behoud van impuls en behoud van impulsmoment gebruiken.. De stoot en

Bob van den Bos,jopie Boogerd en jan Wiltem Bertens voeren de D66-lijst aan bij de Europese verkiezingen op 15 juni 1989. woorden waarmee Jan-Willem zichzelf karak- teriseert.