【米么推文素材】汇编语言示例 求斐波那契数

来源:互联网 发布:得力美工刀片 编辑:程序博客网 时间:2024/06/05 17:25
TITLE assignment3-1 (assignment3-1.asm); Aodan Jing  Student #:104134047INCLUDE Irvine32.inc.datamessage BYTE "How many values of the Fibonacci number sequence do you want?   ",0message1 BYTE " ",0n DWORD 01h.codemain PROCmov edx,offset messagecall writestringcall READINTcall crlfmov ecx ,eax ; loop counterL1:push n ; n starts with 1call Fibcall writedec ;print fib numbermov edx,offset message1call writestring ; print space between numbersinc n ; go to the next oneloop L1call crlfcall waitmsgexitmain ENDPFib PROC push ebp mov ebp, esp mov ebx,[ebp+8] ; get n cmp ebx,2 ; if n =1,2  just return 1 ja L1 mov eax, 1 jmp quit L1: dec ebx ; n-1 push ebx call Fib ;get fib(n-1) push eax ; store fib(n-1) in stack mov ebx,[ebp+8]  sub ebx, 2  ; n -2 push ebx call fib   ; get fib(n-2) pop edx    ; get fib(n-1) add eax,edx  ; add them up to get fib(n)   quit:    pop ebp    ret 4Fib ENDPEND main
原创粉丝点击