Varaudu harjoituksiin etukäteen tutustumalla käsiteltävään asiaan ja yrittämällä itse tehdä tehtäviä niin paljon kuin mahdollista. Linkki harjoitustehtäviin on: http://www.cs.helsinki.fi/u/marttine/tito/avoink05/harjoitukset/. Harjoitustilaisuudessa tehtävät käsitellään ryhmissä. Mikäli mahdollista, niin tarkista ohjelmasi toimivuus kääntämällä ja suorittamalla se Titokoneen avulla.
# record person: 3 integer fields Id EQU 0 # relative address within record Age EQU 1 Salary EQU 2
Tietueet Pekka ja Jussi on varattu muistista alustettuna ja tietue Maija on varattu muistista alustamattonana pseudokäskyillä
Pekka DC 3214 # ID = 3214 DC 35 # AGE = 35 DC 12345 # SALARY = 12345 Jussi DC 8888 DC 54 DC 14321 Maija DS 3 # initial values not definedEsimerkki: Jos R4 osoittaa tietueen Pekka alkuun, niin Pekan palkka saadaan rekisteriin R5 konekäskyllä "LOAD R5, Salary(R4)".
APU = X; X = Y; Y = APU;Tee myös pääohjelma, joka kutsuu aliohjelmaa vaihda vaihtamaan taulukon T kahden ensimmäisen alkion arvot keskenään. Välitä parametrit aktivointitietueessa. Piirrä myös kuva aktivointitietuepinosta.
int n, i, prev, fib, next; /* variables n, i, prev, fib, next */ main () { /* main program */ scanf ("%d", &n); /* read n */ i = 1; prev = 0; fib = 1; while (i < n) { next = prev+fib; prev = fib; fib = next; i = i+1; } printf ( "%d %d \n", n, fib); /* print n, fib */ }Voit pitää muuttujien arvoja joko muistissa tai rekistereissä.