汇编环境搭建《DOSBox+MASN5.0》

这是我学习过程中搭建汇编语言环境的记录,有不对也欢迎大家指正哈😁

我用的是DOSBox来搭建环境,MASN5.0来编译

浏览器搜DOSBox即可,也可以从下面给的链接直接找到

链接:https://www.dosbox.com/download.php?main=1

环境搭建

  1. 首先在链接里找到对应版本,我用的是Windows版本的,点击对应版本(如图1),就会跳转到下载页面(图2)下载安装即可

 2.安装

都勾上后点Nest,一个是核心文件,一个是桌面快捷方式 

3.文件存放路径,我这放在D盘,看个人喜好吧,点击Install(安装)即可

4. MASM5.0        直接搜也可以找到网友发的,也可以从下面给的链接直接下载即可

官网链接:https://link.segmentfault.com/?enc=W8RqdgIOFM3Z1QUoMB5IVA%3D%3D.8KalYpftFUDZtLFJ1kx7dM9%2BG%2BxGyCZrClTXmge3iONrUB9%2FslN3PerfE7d7bEr5isarFG2DCVWJn2K3IX3U4w%3D%3D

下载后解压得到,官网的是没有DEBUG.exe的

这里提供一个网友整理的版本,是GitHub上的,有DEBUG.exe

链接:https://github.com/froginwell/assembly/tree/master/software

 解压后

环境搭建好当然要写一个新手上路必不可少的<"hello world!">来验证一下啦

下面是代码部分

assume cs:code, ds:data  

data segment  
    str db 'HelloWorld!','$'    ; 定义一个以'$'结尾的字符串
data ends  
  
code segment  
start:
    mov ax,data               ; 将数据段基地址加载到AX寄存器
    mov ds,ax                 ; 将AX中的值复制到DS寄存器,使DS指向数据段
    
    lea dx,str                ; 获取字符串'str'的偏移地址,并加载到DX寄存器
    mov ah,9                  ; 设置AH=9,准备调用DOS功能号9(输出字符串)
    int 21h                   ; 调用DOS中断21h,执行上述功能
    
    mov ah,4ch                ; 设置AH=4Ch,准备调用DOS功能号4Ch(退出程序)
    int 21h                   ; 调用DOS中断21h,执行上述功能
code ends  
end start                     ; 指定程序入口点为'start'



  • 这里我们在MASM5.0的文件夹下直接建立一个hello.txt

  • 将代码放入保存

  • 然后将 .txt后缀改为 .asm

  • 接着运行DOSBOX安装目录下的”DOSBOX.exe“,会弹出两个窗口,一个是常见的windows命令行窗口(win下作为控制台应用运行的程序基本都会弹这个),用不到但是不要关闭。另一个是DOSBOX的窗口(有蓝色文字的那个),操作都在这进行

  • 为了能够使用masm中的那些程序(提供的指令),我们需要把masm5.0的安装目录挂载到DOSBOX(并作为DOSBOX的C盘)。输入的指令如下:
mount c: <masm5.0在你电脑上的位置,如“D://xxx/xxx/masm5.0”>     

 如图

  • 然后,输入c:并回车切换到DOSBOX的C盘(即masm所在目录),为了确认挂载是否正常,可以使用dir指令列出目录下的文件来查看,可以看到,挂载正常。
  • 然后我们就可以来编译、运行准备好的测试程序了。

    • 第一步,编译。输入masm hello并回车来编译源程序,之后会让你命名编译产生的文件,一般回车三次跳过即可。
    • 第二步,连接。输入link hello并回车来链接编译产生的文件,之后也会让命名,回车三次跳过。
    • 第三步,输入hello.exe或者hello来运行第二步中生成的可执行文件,然后你就会看到···

 

 

恭喜你成功打印了<"HelloWorld!"> ,点开文件夹我们可以看到编译生成的两个文件

  • 进一步

前面的使用过程中有个明显的槽点——masm的路径要手动挂载,有点麻烦,所以,让我们可以来做点配置

  • 首先,双击打开DOSBOX安装目录下的“DOSBox 0.74-3 Options.bat”(最好先关闭DOSBOX)               它会打开一个名为“DOSBox 0.74-3 Options.conf”的文件。然后,拉到最后,可以看到如下的一段内容:

注释告诉我们(上图红色框框的部分),写在[autoexec]所在行之后的内容会在DOSBOX启动以后被当作指令自动执行。那么,如果把挂载文件夹的指令写到这,当然就能实现“自动挂载”了。所以,我们修改这一部分内容如下: 

[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.
mount  c: <你的masm5.0所在路径>
set PATH=$PATH$;<你的masm5.0所在路径>
c:
dir

增加部分的内容,除了PATH的设置以外都在前面出现过,总的来说就是自动挂载了masm5.0并切换到那个目录,然后列出所有文件(不想看的话可以把dir删掉)。

(1)

mount  c: <你的masm5.0所在路径>

mount——是挂载命令语句

(2)

set PATH=$PATH$;<你的masm5.0所在路径>

 将 MASM 文件中的编译程序添加至临时系统变量中,打开软件就添加,关闭就没有了。

(3)c:

转到C盘

为了方便代码管理,我们也可以建一个文件夹Assembly(自己命名就好了),在文件夹里新建一个用来存放汇编程序文件的子文件夹(如下图的ASM),同时将masm5.0解压放在这,如图

同样上诉类似来配置即可

[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.
mount  c: d:\Assembly
set PATH=$PATH$;c:\masm5.0\masm5.0
c:
cd c:\ASM

如图,可以挂在主文件夹作为c盘,此时c:就是d:\Assembly,所以设置环境时c:<余下的masm5.0路径即可>,c:转到c盘,cd: c:ASM 进入ASM文件夹。

文字倾斜部分的配置方法参考了

MengYiKeNanWindows10搭建汇编环境——详细步骤(新手)

扩展

初始的界面很小,且不能直接拉伸界面,一般人都不习惯,都会修改以下大小。
双击打开DOSBox 0.74 Options.bat(不要右键编辑,直接双击打开即可)

windowresolution=original
output=surface

修改成

windowresolution=1280x800  # 这个是小写字母 x
output=opengl 

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值