31 lines
365 B
Plaintext
31 lines
365 B
Plaintext
include print "../io/print.dsa"
|
|
|
|
fib_n:
|
|
push bpr
|
|
mov spr, bpr
|
|
|
|
ldw bpr, rg1, 8 // load op 2
|
|
|
|
start:
|
|
mov rg1, rg2
|
|
add rg1, rg2, acc
|
|
|
|
pusha 4
|
|
push rg1
|
|
call print::print_hex_word
|
|
pop rg1
|
|
popa 4
|
|
|
|
mov rg2, rg1
|
|
mov acc, rg2
|
|
|
|
cmp rg0, zero
|
|
dec rg0
|
|
|
|
jgt start
|
|
|
|
stw rg1, bpr, 8
|
|
mov bpr, spr
|
|
pop bpr
|
|
return
|