作者Nessa1103 (紫藤茁壮中)
看板ASM
标题[问题] 组译错误讯息看不太懂
时间Sun Nov 30 11:49:10 2008
以下是我的程式,使用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
1F:推 R119:把函式宣告在使用之前试试看 11/30 12:18
2F:→ Nessa1103:组译过了,可是...爆掉了ˊˋ 11/30 13:59
3F:→ R119:把ret 4 的4去掉看看 11/30 19:42
4F:→ Nessa1103:只会输出1,而且print次数多到我不敢算...我才输入1啊囧 11/30 20:22