若没有下载的小伙伴可以参考这篇文章下载,里面有很多设置也非常不错
Windows 64 位系统下安装配置 DOSBox 及 debug.exe
首先介绍俩种方法来编译源程序
方法一:
step1:编辑源程序
1、打开DosBox
2、运行edit
在命令行输入
edit
3、在Edit中编译程序,如下图所示(随便举了一个例子)
3.1 File->save as
3.2 输入你要保存的文件名,以asm后缀结尾,之后点击OK
3.3 点击File->exit来退出edit
4、再进行完上述对源程序的编辑之后,会得到一个源程序文件D:\software\DOSBox\MASM\hui.asm
接下来进行编译源程序
step2:编译
1、进入DOS,运行masm.exe,会出现一些版本信息
上面我命名为hui,择需要输入hui即可,如果不是以.asm为扩展名的话,择需要输入全名,比如“hui.txt"
2、输入要编译的源程序文件名后,按enter键
注:若我们当前已经再源文件目录下,直接输入文件名就行,要是是再其他路径中,则要输入完整路径
执行完后生成hui.obj文件
这个列表文件不生成,直接Enter
同样先不用生成教程引用文件
step3:连接
对源程序进行编译得到目标文件后,我们需要对目标文件进行连接,从而可以得到可执行文件,接下来我们要将.obj文件连接为.exe文件
1、运行link后,直接输入文件名
2、默认可执行文件名(当然在这里也可以指定文件名或者路径),按enter
3、提示生成映像文件,这里不生成,按enter
4、这里提示输入库文件名,若调用子程序则要输入库文件名,这里没有调用,直接enter
注:这里有一个警告:没有栈段,先不用管
偷懒方法!以简化方式进行编译和连接
masm后面要加上被编译的源程序文件的路径,文件名,再加上分号,此时生成hui.obj文件
link后面要加上被连接的源程序文件的路径,文件名,再加上分号,此时生成hui.exe文件
方法二
新建一个.txt文件,在里面进行编码,相当于上面的edit步骤
编码完成后进行保存,并修改后缀名为.asm,注意文件应该在MASM路径下,其余步骤和方法一 一样。
EXE文件的执行
- 在DOS中直接执行hui.exe时,是正在运行的command,将hui.exe中的程序加载入内存
- commond设置CPU的CS:IP指向程序的第一条指令,从而使程序得以运行
- 运行结束后,返回到commond中,CPU将继续运行commond
程序执行过程的跟踪,以hui.exe为例
1、使用debug将程序载入内存
2、使用R命令来查看各个寄存器的设置情况(关于debug命令,参考这篇博客)
3、使用U命令查看其他指令
4、现在开始跟踪,使用T命令进行单步执行每一条指令
5、到了int 21 用P 命令执行
6、使用q命令退出debug,回到commond中