《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

在书的网站上已经下了相关的库了,百思不得其解,请教了
...全文
273 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用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

本书全面细致地讲述了汇编语言程序设计的各个方面。从微处理器体系结构、工作机制到指令集;从最基本的编译器链接器的使用到高级过程、结构和宏的使用;从用纯汇编编写程序到用VC++,BC++等最新编译器与汇编的混合接口编程;从16位实模式下BIOS,DOS实模式文本及图形程序设计到32位保护模式的Windows程序设计;从磁盘基础知识到Intel指令编码、浮点运算等相关知识都做了深入而细致的讲解。 本书是佛罗里达国际大学等多所美国大学采用的计算机基础教材,内容广博,但又讲解得非常深入,书中结合最令人感兴趣的编程问题逐步引出汇编语言的解答,书后有编译器的安装使用以及常用的编程参考资料,随书附带的CD-ROM中配有较新的免费MASM 6.11编译器,为读者掌握汇编语言扫清一切障碍,另配以丰富和颇具特色的习题集及解答,使读者能够快速掌握这门公认为很难的语言。如果读者是汇编语言的初学者,本书则提供了最好的起点,如果读者已经熟练掌握了这门语言,重读本书,亦当有所收获。 本书对计算机体系结构及基本原理做了相当篇幅的介绍,因此本书不仅可作为高等院校计算机专业汇编语言的教材,也可以作为计算机体系结构和原理的参考资料。 本书着重讲述了如何在机器层次思考并解决程序设计问题,具有以下特点: ·详细讲述了数制系统和数据存储的基础知识 ·所有的例子程序都在Microsoft的MASM 6.15编译器下测试通过 ·讲述了高级语言内嵌汇编代码以及汇编语言程序同实地址模式及保护模式的C/C++程序的链接 ·附带扩展的指令集手册,其中包含了指令格式和CPU标志的使用 ·讲述了中断和量和设备I/O ·随书附带的CD-ROM中包含了Microsoft MASM 6.15汇编编译器、程序编辑器、一个宏库和本书的源代码 第四版的新增内容: ·Win32程序设计,包含控制台API和图形应用程序 ·对过程、递归、堆栈参数、结构和联合进行了更多的介绍 ·布尔表达式、真值表和流程图 ·基本的字符串处理、排序和查找算法 ·实地址模式和保护模式下的位映射图形 ·IEEE浮点二进制表示法 ·虚拟机体系结构,IA-32保护模式分段和分页 ·介绍指令执行周期、内存、多任务、流水线和超标量体系结构 ·磁盘基础知识,包括磁盘的物理结构、FAT32和NTFS文件的结构 .PDG格式

21,497

社区成员

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

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