FactorialΒΆ
Computes factorial of a number using iterative multiplication.
1; Factorial: compute 5!
2; Output: R16 = 120
3
4start:
5 ldi r17, 5 ; n = 5
6 ldi r16, 1 ; result = 1
7
8 ; if n <= 1, done
9 cpi r17, 2
10 brlt done
11
12loop:
13 ; result *= n
14 mul r16, r17
15
16 ; n--
17 dec r17
18
19 ; continue if n > 1
20 cpi r17, 2
21 brge loop
22
23done:
24 jmp done
Calculates 5! = 120 using repeated multiplication and demonstrates loop control.