Windows10搭建汇编环境——详细步骤(新手)
作者:互联网
更新:
(1)如果只是学校课程学习;
- 自己搭建汇编环境,可以使用 DOSBox 搭建环境(本文介绍)
- masm for windows 集成软件(推荐)
- emu8086 软件(不推荐)
(2)如果是从事汇编可以在网上搜一下其它搭建汇编环境一劳永逸;
一、工具
1、DOSBox0.74-win32-installer.exe
链接:https://pan.baidu.com/s/1h5PZfX2UWqWevMmoiKoEFA
提取码:rnxs
2、MASM5、LINK、DEBUG
链接:https://pan.baidu.com/s/19pq7aC_g8LRTd937YAVsPQ
提取码:7azq
编译程序只要这三个就可以了,至于如何编程的话编辑器就可以了,推荐使用 notepad++。
二、安装及配置
将下载下来的压缩包解压。
1、安装DOSBox
随便安装到哪里都可以,我安装到 E 盘的。
2、创建一个文件夹Assembly(自己取名),在再创建两个文件夹ASM、MASM
汇编程序(ASM):用来存放要编译的汇编程序
编译程序(MASM):用来存放编译程序MASM-5.10、LINK、DEBUG(这三个不用安装,解压即可)
目前安装结果
3、配置
这样每次都要手动配置很麻烦,我们在 DOSBox 0.74 Options.bat
中添加几行命令,让其每次打开软件自动配置好,直接就可以编译调试文件。
双击打开DOSBox 0.74 Options.bat
(不要右键编辑,直接双击即可),在文本末尾添上以下语句。
# 挂载驱动器(将放汇编程序、编译工具文件夹挂载到一个虚拟盘)
mount F: E:\Assembly
# 添加系统临时变量(此时的 F: 代表的是E:\Assembly)
set PATH=%PATH%;F:\MASM;
# 转到 F:
F:
# 进入ASM文件夹
cd F:\ASM
(1)mount F: E:\Assembly
mount——是挂载命令语句
F:——是虚拟盘,可以是已存在的盘C:/D:/E:,也可以是不存在的盘F:/G:/H:等
E:\Assembly——汇编程序、编译工具文件夹
结果:F: 代表的是E:\Assembly
(2)set PATH=%PATH%;F:\MASM;
将 MASM 文件中的编译程序添加至临时系统变量中,打开软件就添加,关闭就没有了。
相当于 set PATH=%PATH%;E:\Assembly\MASM;
,但是DOSBox软件只能读取只是你挂载的虚拟盘,不能这么写。
(3)F:
转到挂载的 F: 盘
(4)cd F:\ASM
进入ASM文件夹。
相当于cd E:\Assembly\ASM
,但是DOSBox软件只能读取只是你挂载的虚拟盘,不能这么写。
三、简单使用
这样就配置好了,就可以使用了。打开DOSBox软件即可。
我们写一个 HELLO 试试。
使用 notepad++ 编辑,notepad++其中就有汇编语言格式,编辑好程序,将文件后缀保存 .asm 即可。
STACK SEGMENT PARA 'STACK' ;定义堆栈段,段名为 STACK(可以取其他的)
DB 100 DUP('?') ;分配堆栈的大小,设置为100字节,以?填充
STACK ENDS ;堆栈段结束
DATA SEGMENT ;定义数据段,段名为 DATA (可以取其他的)
STRING DB 'HELLO!','$' ;定义字符串数据
DATA ENDS
CODE SEGMENT ;定义代码段,段名为 CODE (可以取其他的)
ASSUME CS:CODE, DS:DATA, SS:STACK ;特别重要,将 CS、DS、SS 指向定义的段
START: MOV AX, DATA ;程序开始的地方
MOV DS, AX
MOV AX, STACK
MOV SS, AX
LEA DX, STRING
MOV AH, 09H
INT 21H
MOV AH, 4CH
INT 21H
CODE ENDS
END START ;程序结束的地方
然后编译调试。
masm hello.asm
link hello.obj
debug hello.exe
四、扩展
初始的界面很小,且不能直接拉伸界面,一般人都不习惯,都会修改以下大小。
双击打开DOSBox 0.74 Options.bat
(不要右键编辑,直接双击打开即可)
将
windowresolution=original
output=surface
修改成
windowresolution=1280x800 # 这个是小写字母 x
output=opengl
标签:汇编,Assembly,MASM,Windows10,MOV,新手,STACK,ASM,DOSBox 来源: https://blog.csdn.net/MengYiKeNan/article/details/113803181