算法,很简单的啊,n<=1 则 fibo(n)=1,n>=2 则 fibo(n)=fibo(n-1)+fibo(n-2) 就是这样。 n 在 cx, fibo(n) 返回在 ax 。这样用递归方法,大多数的运算是多余了吧? fibo2 proc push dx cmp cx, 1 jbe l_le1 l_gt1: dec cx call fibo2 mov dx, ax dec cx call fibo2 add ax, dx add cx,2 jmp l_ret l_le1: mov ax, 1 l_ret: pop dx ret fibo2 endp
fibo2 proc push dx cmp cx, 1 jbe l_le1 l_gt1: dec cx call fibo2 mov dx, ax dec cx call fibo2 add ax, dx add cx,2 jmp l_ret l_le1: mov ax, 1 l_ret: pop dx ret fibo2 endp
是怎么算不会,还是不知道怎么用汇编表示? 怎么算,应该简单吧,毕竟书上应该有的,函数式也算简单,理解不难。 汇编的表示,其实和高级语言差不多,只是可用指令/语句和语法上的不同,思路都是一样的。
21,459
社区成员
41,601
社区内容
加载中
试试用AI创作助手写篇文章吧