0 前言
本文适合8086CPU的指令集。
对于重要的专业基础课程,汇编语言,做实验是必不可少的,但是由于汇编语言本身的缺陷,现代计算机并不能直接运行汇编语言程序,因此,一般老师会要求我们
- 使用虚拟机:VMware/VirtualBox–>安装XP系统
- 或者安装DOSBox
这些工作的准备,对于初学者来说还是必要的,能够帮助你进一步理解编辑-->编译-->链接-->执行
的过程,这里我给到你DOSBox的使用方法:使用DOSBox进行汇编语言实验
但是,如果一直采用这种方式编辑汇编语言,无疑是低效率的,因此,我们需要像高级语言那样,使用汇编语言IDE来进行汇编语言实验。
1 软件安装和配置
1.1 软件下载
我们需要两款软件:
- DOSBox
这款软件,我在前面的链接中已经给到了,不过其中的使用方法,会有所变动,你只需要安装好这款软件即可,安装路径最好没有中文。 - RadASM
百度搜索一下RadASM中文版,下载安装一个软件即可,注意:安装路径最好没有中文,否则可能出现问题
安装过程中,可能会有这个,建议全部勾选,其他的没有说明要注意的了。
1.2 软件配置
1.2.1 配置RadASM
- 打开软件的安装目录,以记事本打开下面的文件
- 然后我们找到 [DOS APP]
- 注意4,这里我已经修改好了,你需要更改的部分是
0,0,
和,5
中间的部分,将它设置为DOSBox.exe的绝对路径
打开DOSBox的安装位置,粘贴过去,注意要加上 \DOSBox.exe - 然后保存,关闭
- 百度下载一个dubug.exe,将它放在以下目录,注意,这里展现的目录是软件的安装位置
找到masm32,打开
找到bin目录,打开
然后将debug.exe拷贝过去
1.2.2 配置DOSBox
- 打开DOSBox安装位置,打开以下文件,用记事本打开
- 拖动到最下面,找到 [autoexec]
- 在下面写上两行,这里我已经写好了
mount x [前面我们刚刚提及的bin目录的绝对路径]
set PATH = %PATH%;x:\;
bin目录的绝对路径如下:
刚才我们进入了bin目录了,将其拷贝过去就好。
4. 保存,退出
2 编写一个汇编语言实验
2.1 使用一个舒适的环境
- 打开RadASM软件
- 设置字体大小
箭头1,指的是编辑代码的大小,这个是最建议你修改的,修改为合适大小就可以,如箭头2所示
箭头3如果和我的不一样,改成我的,否则可能出现中文乱码。
2.2 建立一个汇编工程
- 文件–>新建工程
- 第一步设置
选择Dos APP,设置工程名称和工程位置 - 一直点击下一步,直到点击完成即可,不需要任何修改
- 打开汇编语言源程序,在最右侧
- 输入示例代码,这个代码是我直接在网上找的,这里仅用于测试
这里显示的,也就是我们刚才改变的字体的大小,默认可能比较小,需要改变下。
;Hello World
.MODEL SMALL
.DATASTRING DB 'Hello World!',13,10,'$'
.STACK
.CODE
.STARTUPLEA DX,STRINGMOV AH,9INT 21H
.EXITEND
又是Hello World哈哈
- 运行
这里我先带你体验一下原始的过程
过程我们完成了编译过程,得到.asm
文件,接下来是 编译,得到.obj
文件
然后是链接,得到.exe
文件,然后是执行,这里不用管构建是干什么的,这是软件赋予的功能,就粗略当成执行.exe
文件即可。
事实上,我们只需要Ctrl+F5 或者点击构建并执行就可以运行编辑好的程序,其他步骤一键搞定(就像你熟悉的VS编译器那样)
然后你会得到如下内容
是的,你执行成功了!
- 接下来是调试
这里推荐两种方式
第一种:debug 文件名,这里文件名是TEST232.EXE
第二种:CV 文件名
然后回车
至于调试怎么用,就是其他内容了,大家可以使用书籍 《汇编语言》(王爽),这本书很好用!
3 资源
附上RadASM和debug.exe文件
链接:https://pan.baidu.com/s/1BsGo3eaUjVFSVw1OQ04X0A
提取码:hr2h
复制这段内容后打开百度网盘手机App,操作更方便哦
4 重大更新
4.1 8086CPU模拟器
请直接百度搜索【8086CPU模拟器】,这款软件堪称8086汇编语言的学习利器,远比其他工具好用。
务必注意,经过本人使用验证,8086模拟器语法检测非常宽松,与真机差别很大,因此,编写不建议使用此软件,你写错了可能你都不知道!程序会正确猜测你的意图……
4.2 32位x86汇编语言学习工具
目前流行的更多的32位x86汇编语言,软件就是常用的VS,我给到你使用方法:使用VS 2017学习32位x86汇编语言的方法。