我不知道为什么这段代码不起作用。我想在MASM中调用用户定义函数。我是否需要在程序中定义原型?
这是我的代码:
include Irvine32.inc
.code
main proc
call clrscr
mov eax,60000h
call sum1
call dumpregs
exit
main endp
end main
sum1 proc
add eax,20000h
ret
sum endp
答案 0 :(得分:2)
通过将end main
放在文件的中间而不是最后,您似乎提前结束了文件:
main endp
end main
sum1 proc
add eax,20000h
ret
sum endp
end main
之后的所有内容都不会发出代码。将end main
放在文件末尾。带有标签的END
指令将标记文件的结尾,并告诉汇编程序代码将开始执行的入口点位于标签main
。
您的代码可能如下所示:
include Irvine32.inc
.code
main proc
call clrscr
mov eax,60000h
call sum1
call dumpregs
exit
main endp
sum1 proc
add eax,20000h
ret
sum endp
end main
您的原始代码可能会导致sum1
显示为未定义到链接器。我希望链接器通知您无法找到函数sum1
。