;*************************************************************************** ;* Løsningsforslag til Dark-oppgavene i AOC høsten 2003. * ;* Beregning av Fibonacci-tallene på load-store arkitektur. * ;* Per Kristian Lehre * ;* Rettet av Asbjørn Djupdal * ;*************************************************************************** main ; load $2, 5 ; The argument is stored in register 2. load $7, 2 ; Always set to 2 load $4, 1 ; How far have we computed? load $5, 1 store $5, $4+0 ; Compute first two values inc $4 store $5, $4+0 inc $4 cfib jgt $4, $2, fibend ; Have we computed enough? mv $5, $4 dec $5 load $10, $5+0 dec $5 load $11, $5+0 add $12, $10, $11 store $12, $4+0 inc $4 jmp cfib fibend load $3, $2+0 stop end main