《Intel汇编语言程序设计》例子问题

mywyu_wmb 2012-02-19 01:07:54
我调试Intel汇编语言程序设计书中一个例子时
TITLE add and Subtract

include Irvine32.inc

.code
main PROC
mov eax, 10000h
add eax, 40000h
sub eax, 20000h
call DumpRegs
exit
main ENDP
END main

编译通过,但是连接的时候出现:
link.exe /SUBSYSTEM:WINDOWS /nologo /OUT:"CONSOLE.exe" "CONSOLE.obj"
CONSOLE.obj : error LNK2001: unresolved external symbol _DumpRegs@0
CONSOLE.exe : fatal error LNK1120: 1 unresolved externals

在书的网站上已经下了相关的库了,百思不得其解,请教了
...全文
258 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
gsy999 2012-02-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 mywyu_wmb 的回复:]
非常感谢楼上,似乎找到问题所在了,但是我不知道如何配置这两个文件,能否请教下!
[/Quote]

  在批处理文件的头部有下面几个语句是用来设置环境变量的,请你对照自己的MASM软件安装目录,把路径调整正确,然后再试。祝好运。

REM ************* The following lines can be customized:
SET PATH F:\Masm615
SET INCLUDE=F:\Masm615\INCLUDE
SET LIB=F:\Masm615\LIB
REM **************************** End of customized lines
mywyu_wmb 2012-02-26
  • 打赏
  • 举报
回复
非常感谢楼上,似乎找到问题所在了,但是我不知道如何配置这两个文件,能否请教下!
gsy999 2012-02-22
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 mywyu_wmb 的回复:]
includelib Irvine32.lib后也不行

引用 2 楼 zo_oz 的回复:

是不是还应该
includelib Irvine32.lib
???
[/Quote]
该教程跟有一个软件包,包括了书中的例子,看来LZ也下载了.
在这个包里有make32.bat和make16.bat两个脚本文件,分别用来编译DOS程序和Win32程序.
这两个文件在安装后是需要配置的,你配置了吗?(主要是路径要对)
编译生成Win32应用程序时要用make32.bat,你用了吗?
请LZ再对照以上所说检查一下自己的编译步骤.
祝LZ好运.

mywyu_wmb 2012-02-22
  • 打赏
  • 举报
回复
我在书的网址上找了需要的所有库,都加进了编译器的INCLUE和LIB里,我用的是MASMPlus这个IDE
mywyu_wmb 2012-02-22
  • 打赏
  • 举报
回复
includelib Irvine32.lib后也不行[Quote=引用 2 楼 zo_oz 的回复:]

是不是还应该
includelib Irvine32.lib
???
[/Quote]
mywyu_wmb 2012-02-22
  • 打赏
  • 举报
回复
改成include d:\myasm\Irvine32.inc后 也不行呀[Quote=引用 1 楼 gsy999 的回复:]

引用楼主 mywyu_wmb 的回复:
我调试Intel汇编语言程序设计书中一个例子时
TITLE add and Subtract

include Irvine32.inc

.code
main PROC
mov eax, 10000h
add eax, 40000h
sub eax, 20000h
call DumpRegs
exit
main ENDP
EN……
[/Quote]
大熊猫侯佩 2012-02-20
  • 打赏
  • 举报
回复
你没连接库吧?如上
zO_Oz 2012-02-19
  • 打赏
  • 举报
回复
是不是还应该
includelib Irvine32.lib
???
gsy999 2012-02-19
  • 打赏
  • 举报
回复
[Quote=引用楼主 mywyu_wmb 的回复:]
我调试Intel汇编语言程序设计书中一个例子时
TITLE add and Subtract

include Irvine32.inc

.code
main PROC
mov eax, 10000h
add eax, 40000h
sub eax, 20000h
call DumpRegs
exit
main ENDP
END main

……
[/Quote]
一个简单的办法就是被包含文件Irvine32.inc要指定全路径,如:
include d:\myasm\Irvine32.inc

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧