Листинг 2-7. Решение проблемы рекурсии для вычисления
факториала
-----------------------------------------------------------------
factor PROC NEAR ; нахождение факториала числа N
cmp ax,2 ; уже достигнут конец?
jne subfact ; нет, вычисление (N - 1)!
mov ax,2 ; да, выполнение сначала
ret
subfact:
push ax ; сохранение текущего значения N
sub ax,1 ; получение N - 1
call factor ; запрос (N - 1)!
pop bx ; восстановление значения N
mul bx ; N x (N [min]-1)! = N!
ret
factor ENDP
-----------------------------------------------------------------
|