File: fib.apoo

package info (click to toggle)
apoo 2.1-1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 444 kB
  • ctags: 264
  • sloc: python: 1,954; perl: 67; makefile: 56; sh: 4
file content (45 lines) | stat: -rw-r--r-- 336 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#
#	fib(n)=if(n==0) or (n==1) n else fib(n-1)+fib(n-2)
#
n:	const  6
fn:	mem 1
	load n r1
	jsr fib
	store r2 fn
	halt
# r1=n,r2=fib(n),r3=auxiliar
fib:	jzero r1 fim
	storer r1 r3
	dec r3
	jzero r3 fim
	storer r3 r1
	push r1
	jsr fib
	pop r1
	dec r1
	push r2
	jsr  fib
	pop r1
	add r1 r2
	rtn
fim: 	storer r1 r2	
	rtn