_start: li x1, 8 // ITERATION * 4 li x2, 10 * 4 // MAX ITERATIONS * 4 li x6, 0x100000 // MEM OFFSET li x5, 1 sw x5, 4(x6) fib: add x3, x6, x1 lw x4, -4(x3) // get a lw x5, -8(x3) // get b add x4, x4, x5 // a = a + b sw x4, (x3) // store a to c // increment or stop add x1, x1, 4 bne x1, x2, fib li x5, 0 sw x5, (x6) li x5, 1 sb x5, 1(x6) lw x5, (x6) mv x0, x5 li x5, 1 sh x5, (x6) lw x5, (x6) mv x0, x5 sh x0, 2(x6) lw x5, (x6) mv x0, x5