debug只是调试工具,不是汇编工具,不能将a.asm汇编连接生成可执行程序。
debug带有内置的汇编功能,但功能极弱,仅仅只能支持指令的汇编,不支持大多数常用伪指令的汇编。比如,它不支持变量名和语句标号的使用。它只能在进入debug后用a命令逐指令汇编。
要将一个a.asm这样的汇编语言源程序汇编成可执行文件,你必须要另外使用汇编和连接程序。
常用的汇编连接工具有两种,一种是MASM,另一种是TASM。
MASM需要至少两个文件:masm.exe和link.exe 版本可以用5.0以上的。
TASM需要tasm.exe和tlink.exe,还有一些辅助文件。版本可以用3.0或5.0 。
建议使用TASM,它最大的优点是它配套的调试程序Turbo Debugger功能比debug强大很多、很多、很多倍,窗口界面,鼠标 *** 作,等等……
①安装好dosbox,然后找到“dosbox...options.bat”,双击它,(别急着点dosbox.exe)。
图1
②在d出的文本编辑器(如,记事本)中调整设置,找到[autoexec]所在行,添加两行(以d:\为例):
mount c: d:\
c:
图2
③下载并安装好nasm(一种小的汇编软件)
建议在dosbox中汇编并运行(按图3下文件、打开、解到d:\123);也可以在windows下汇编,dosbox里运行(这个我之前写过……)
图3
④打开dosbox,依次输入命令
cd 123
nasm
可以看到nasm安装成功并且能使用了,下一步是准备汇编代码
⑤在d:\123目录下新建一个文本文档123.txt
输入以下代码并保存(XXX可以随便改,$符号要保留)
org 256
jmp begin
s db 'hello, world! @author: XXX$'
begin:
mov dx,s
mov ah,9
int 21h
mov ax,4c00h
int 21h
⑥在dosbox的黑窗口里面继续输入以下命令
nasm 123.txt -o 123.com
123
然后就可以看到输出的字符串
hello, world! @author: XXX
恩..............,你可以下载MASM5.0这个版本的编译器啊,然后把你的程序和编译器放在一起,然后再CMD下,输入masmxx.asm就生成一个obj文件了,然后再输入link
xx.obj就生成exe文件了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)