0
이것은 (매우 간단한) 프로그램입니다. 그것은 function
함수가 내 자신의 .cpp 파일 안에있을 때 완벽하게 작동하지만 다른 .asm
파일에 링크하면 오류가 발생합니다. 저는 Visual C++ 2010 Express에서 컴파일 중이며, 제가 사용하고있는 32 비트 어셈블리라고 생각합니다. 그래서 이러한 오류에 익숙하지 않은거야 이건 내 처음 조립 사용어셈블리를 개별 파일로 컴파일 할 때 컴파일 오류가 발생합니다.
error A2013: .MODEL must precede this directive
error A2034: must be in segment block : function
error A2034: must be in segment block
error A2034: must be in segment block
fatal error A1010: unmatched block nesting : function
:
#include <iostream>
extern "C" int function();
int main() {
std::cout << function();
std::cin.get();
}
function
.code
function proc
mov eax, 50
ret
function endp
end
그리고 오류를 받고 있어요 . 그들이 의미하는 것은 무엇이며이 프로그램을 어떻게 작동 시키나요?
첫 번째 동영상이 말한 것을했습니다. 이제 오류가 발생했습니다 : '확인되지 않은 외부 기호 _function 함수 _main' 참조됩니다. 또한 : '치명적인 오류 LNK1120 : 해결되지 않은 1 개의 외부' – 0x499602D2
@ David : 어쩌면 어리석은 충고 일지 모르지만, asm에서 함수 _function을 명명하려고 시도한 적이 있습니까? 링커가'function' 대신'_function'을 찾고있는 것처럼 보입니다, 명명 컨벤션이 될 수도 있습니다 –
@AndyProwl 그 것이 작동하는지 볼 것입니다. 1 초 – 0x499602D2