factorial in assembler
(define (fact n)
(if (eq? n 0) 1 (* n (fact (- n 1))))
fact: cmp arg1, #0
jump.ne recurse
load val, #1
rts
recurse: push arg1
sub arg1, #1
jsr fact
pop arg1
mul val, arg1
rts
Previous slide
Next slide
Back to first slide
View graphic version