((code (label main (load-immediate $0 35) (push $0) (call &fib) (pop $0) (int-to-string $1 $0) (load-immediate $2 &terminal-str) (string-length $4 $3) (syscall DEVICE-WRITE $2 $1 $4) (load-immediate $11 &new-line) (string-length $12 $11) (syscall DEVICE-WRITE $2 $11 $12) (halt)) (label fib (pop $0) (load-immediate $1 2) (jump-lt-int &base-case $0 $1) (load-immediate $3 2) (sub-int $4 $0 $3) (push $4) (call &fib) (load-immediate $3 1) (sub-int $4 $0 $3) (push $4) (call &fib) (pop $4) (pop $5) (add-int $6 $5 $4) (push $6) (return) (label base-case (push $0) (return)))) (data (label terminal-str "/dev/term/0") (label new-line "\n")))