最近在学习汇编与接口技术,但是在自己的机子上实验的时候,尴尬地发现我们的win 7 64位环境下,在DOS下竟然没有debug.exe,好不容易找到一个debu.exe,在DOS环境下调用,竟然是下面的结果:
win7 64位和32位的debug.exe 不兼容。
就到网上找相关的解决办法,终于找到了一个很好的工具:DOSBOX。
一,下面就介绍下DOSBOX如何进入debug环境下:
1,DOSBOX本来是用来在windows环境下运行DOS游戏的一款游戏工具,但是我们用来在win7环境下进行汇编的学习。
2,在网上下载并安装,打开后就是DOSBOX的界面,有点与DOS的界面不一样,但是没有关系,能达到我们的目的就好
安装好它后,不用做什么,你就可以开始在其上用debug进行简单的汇编的操作了
3,在网上找到debug并下载,并将其放在你喜欢的任意的一个目录下
4,在上面输入:
mount A B:\
A :
cd ...\..
debug
此时,你已经进入debug环境下,可以进行基本的汇编操作了。
解释下上面的基本的命令的意义:
mount:是Linux下的一个命令,它可以将Windows分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将Windows的分区和/mnt这个目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了,后面的参数A是指linux下的文件,B是你在本地的实际的磁盘。根据你自己的喜好,可以自己选择。
后面的A: , cd:..\.. ,debug,相信大家都是知道的,所以就不解释了。
二,利用DOSBOX进行分立汇编环境搭建
在我的第一篇博文win7 64位 汇编环境搭建(一)中我介绍了如何利用DOSBOX在win7 64位环境中进入debug环境中进行汇编相关指令的练习,今天就把我如何搭建分立的开发汇编程序的环境。
1,准备汇编基本的编译与连接的程序:masm.exe与link.exe
这两个软件是最常用的两个,也是开发汇编程序必须的两个。这两个在masm5.0或者更高的版本中可以找到,我现在用的是masm5.0.这里面还有我们可能在汇编的时候还会用到的其他的一些工具。
2,着手搭建分离环境
将在网上找到的masm5.0解压到一个你喜欢的地方,然后按照win7 64位 汇编环境搭建(一)所说的方法进入masm5.0目录下,此时你的分立的环境就基本搭建好了。
3,将昨天所说的debug.exe也拷贝到masm5.0的目录下,这是你不仅可以在这个环境下生成可以直接运行的exe文件,还可以在其下进行debug了。
4,现在就在我们新搭建起来的汇编环境编写一个入门程序hello ,world!来练练手吧!
(1)编写源码,并将文件保存为xxx.asm,这里我就保存为hello.asm吧。
在编写源码的时候,你可以采用一般的文本编辑器,并另存为hello.asm,并该文件拷贝
到masm5.0目录下,就可以进行编译、链接了。
如果你想更有感觉点,像老师那样,输入edit就调用汇编程序编辑器来编辑你的源代
码,那就在网上找一个edit.com,并将其拷贝到masm5.0目录下,那样就可以在DOS界面
下编辑你的汇编源代码了。
PS:
找edit.com文件,建议使用google搜索引擎,我在百度上找了好长时间没有找到,最
后是在google上才找到的。
1)在edit中输入hello.asm的源代码
2)保存源文件并退出编辑:FILE->SAVE AS…>File Name:hello.asm>enter
此时,在masm5.0目录下,我们可以找到一个汇编源文件:HELLO.ASM
(2)编译HELLO.ASM,生成.OBJ、.CRF、.LST文件
(3)链接生成.exe文件,同时生成.map文件
(4)输入hello,运行hello,world程序,可以看到在屏幕上显示hello,world!!!与我们期望的结果相同。
最后,展示下载这个过程中,masm5.0目录下的文件生成的情况:
到此,你的汇编的分立开发环境就搭建好了,有不到之处,希望大家指正,不胜感激。