什么是错误的程序集错误 [未定义符号]

问题描述

使用 MASM32

我不知道这里的错误是什么我尽力了但仍然有错误 我正在通过 masm32 在 cmd 中运行它 有coff和没有,没有固定! 那我该怎么办。

代码的目的是通过输入两个整数找到GCD然后显示GCD值。

这是我的代码

代码

 includelib Irvine32.inc
.386
.model flat,stdcall
.stack 4096
ExitProcess proto,dwExitCode:dword

.data
intReqStr BYTE "Enter integer: ",0
ansstr BYTE "GCD is: ",0

.code
main PROC
L1:
    mov edx,OFFSET intReqStr ; display integer request
    call WriteString
    call ReadInt
    jz QUIT
    mov ebx,eax ; assign to y
    call WriteString
    call ReadInt
    jz QUIT

    call CalcGCD

    mov edx,OFFSET ansstr
    call WriteString
    call WriteDec
    call Crlf
    call Crlf
    jmp L1
QUIT:
    invoke ExitProcess,0
main ENDP

CalcGCD PROC
    push ebx
    push edx

    cmp eax,0 ;if x >= 0 jump over negate
    jge LX
    neg eax ; x was negative so negate
LX:
    cmp ebx,0 ;if x >= 0 jump over negate
    jge LY
    neg ebx ; x was negative so negate
LY:
DO: mov edx,0
    div ebx ; edx = eax % ebx (n = x & y)
    mov eax,ebx ; eax = ebx (x = y)
    mov ebx,edx ; ebx = edx (y = n)

    cmp ebx,0  ; while ebx > 0
    jg DO   ; jump to do line
        ; x to be returned is in EAX
    pop edx
    pop ebx
    ret
CalcGCD ENDP

end main

错误

file.asm(15) : error A2006: undefined symbol : WriteString
file.asm(16) : error A2006: undefined symbol : ReadInt
file.asm(19) : error A2006: undefined symbol : WriteString
file.asm(20) : error A2006: undefined symbol : ReadInt
file.asm(26) : error A2006: undefined symbol : WriteString
file.asm(27) : error A2006: undefined symbol : WriteDec
file.asm(28) : error A2006: undefined symbol : Crlf
file.asm(29) : error A2006: undefined symbol : Crlf

帮助我:(

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)