heeeva
چهارشنبه 26 خرداد 1389, 06:48 صبح
سلام
.386
.Model Flat
ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD
INCLUDE io.h
.STACK 4096
.DATA
Prompt1 BYTE "Hello World",0
.CODE
_start:
output Prompt1
invoke ExitProcess,0
PUBLIC _start
END
من کد بالا که Hello World رو چاپ میکنه رو با masm 6.11 به این صورت ترجمه میکنم (با فرض اینکه کد بالا با نام example.asm در مسیر C:\Assembly ذخیره شده )
C:\Assembly>ml /c /coff example.asm
Microsoft (R) Macro Assembler Version 6.11
Copyright (C) Microsoft Corp 1981-1993. All rights reserved.
Assembling: example.asm
تا اینجا یعنی با صادر، Assembling: example.asm یعنی کد مشکلی نداره و فایل example.obj ساخته شده اما زمان Link کردن که به این صورت لینک میکنم ، این Error هارو میده :
C:\Assembly>link /subsystem:console /entry:start example.obj io.obj kernel32.lib
Microsoft (R) 32-Bit Incremental Linker Version 5.10.7303
Copyright (C) Microsoft Corp 1992-1997. All rights reserved.
example.obj : error LNK2001: unresolved external symbol itoaproc
io.obj : error LNK2001: unresolved external symbol itoaproc
example.obj : error LNK2001: unresolved external symbol atoiproc
io.obj : error LNK2001: unresolved external symbol atoiproc
example.obj : error LNK2001: unresolved external symbol dtoaproc
io.obj : error LNK2001: unresolved external symbol dtoaproc
example.obj : error LNK2001: unresolved external symbol atodproc
io.obj : error LNK2001: unresolved external symbol atodproc
example.obj : error LNK2001: unresolved external symbol inproc
io.obj : error LNK2001: unresolved external symbol inproc
example.obj : error LNK2001: unresolved external symbol outproc
io.obj : error LNK2001: unresolved external symbol outproc
example.exe : fatal error LNK1120: 6 unresolved externals
ظاهرا میگه که فایل io.obj فاسده یه همچین چیزی ، به نظر شما مشکل از کجاست در ضمن من روی سیستم عامل های windows 7 و Xp امتحان کردم هر دو همین طوره .
.386
.Model Flat
ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD
INCLUDE io.h
.STACK 4096
.DATA
Prompt1 BYTE "Hello World",0
.CODE
_start:
output Prompt1
invoke ExitProcess,0
PUBLIC _start
END
من کد بالا که Hello World رو چاپ میکنه رو با masm 6.11 به این صورت ترجمه میکنم (با فرض اینکه کد بالا با نام example.asm در مسیر C:\Assembly ذخیره شده )
C:\Assembly>ml /c /coff example.asm
Microsoft (R) Macro Assembler Version 6.11
Copyright (C) Microsoft Corp 1981-1993. All rights reserved.
Assembling: example.asm
تا اینجا یعنی با صادر، Assembling: example.asm یعنی کد مشکلی نداره و فایل example.obj ساخته شده اما زمان Link کردن که به این صورت لینک میکنم ، این Error هارو میده :
C:\Assembly>link /subsystem:console /entry:start example.obj io.obj kernel32.lib
Microsoft (R) 32-Bit Incremental Linker Version 5.10.7303
Copyright (C) Microsoft Corp 1992-1997. All rights reserved.
example.obj : error LNK2001: unresolved external symbol itoaproc
io.obj : error LNK2001: unresolved external symbol itoaproc
example.obj : error LNK2001: unresolved external symbol atoiproc
io.obj : error LNK2001: unresolved external symbol atoiproc
example.obj : error LNK2001: unresolved external symbol dtoaproc
io.obj : error LNK2001: unresolved external symbol dtoaproc
example.obj : error LNK2001: unresolved external symbol atodproc
io.obj : error LNK2001: unresolved external symbol atodproc
example.obj : error LNK2001: unresolved external symbol inproc
io.obj : error LNK2001: unresolved external symbol inproc
example.obj : error LNK2001: unresolved external symbol outproc
io.obj : error LNK2001: unresolved external symbol outproc
example.exe : fatal error LNK1120: 6 unresolved externals
ظاهرا میگه که فایل io.obj فاسده یه همچین چیزی ، به نظر شما مشکل از کجاست در ضمن من روی سیستم عامل های windows 7 و Xp امتحان کردم هر دو همین طوره .