[問題] 組譯錯誤訊息看不太懂

看板ASM (組合語言)作者 (紫藤茁壯中)時間16年前 (2008/11/30 11:49), 編輯推噓1(103)
留言4則, 2人參與, 最新討論串1/3 (看更多)
以下是我的程式,使用MASM和Visual C++撰寫。組譯錯誤訊息說我沒有定義Fbnc 這個符號(error A2006: undefined symbol : Fbnc),可是我明明在下面定義了 啊?請問我該怎麼修改比較好? TITLE Fibonacci (Fbnc.asm) INCLUDE Irvine32.inc .data tip BYTE "How much Fibonacci do you want?",0 tmp DWORD ? .code main PROC call Clrscr mov edx,OFFSET tip call WriteString call ReadDec mov tmp, eax ; tmp = eax INVOKE Fbnc, tmp main ENDP Fbnc PROC USES eax ,N:DWORD ; p.301 LOCAL fbnc2:DWORD push ebp .IF N > 2 INVOKE Fbnc, N-1 mov fbnc2, eax INVOKE Fbnc, N-2 add eax, fbnc2 ; Fbnc(N) = Fbnc(N-1) + Fbnc(N-2) call WriteDec .ELSE mov fbnc2, 1 mov eax, fbnc2 call WriteDec .ENDIF pop ebp ret 4 Fbnc ENDP exit END main -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.157.37

11/30 12:18, , 1F
把函式宣告在使用之前試試看
11/30 12:18, 1F

11/30 13:59, , 2F
組譯過了,可是...爆掉了ˊˋ
11/30 13:59, 2F

11/30 19:42, , 3F
把ret 4 的4去掉看看
11/30 19:42, 3F

11/30 20:22, , 4F
只會輸出1,而且print次數多到我不敢算...我才輸入1啊囧
11/30 20:22, 4F
文章代碼(AID): #19CWquZU (ASM)
文章代碼(AID): #19CWquZU (ASM)