汇编语言学习(1)——在Windows下搭建汇编环境及HelloWorld

本文记录了一位初学者在Windows11环境下,使用树莓派4B学习汇编语言的过程。通过DOSBox搭建虚拟DOS环境,安装MASM编译器,并配置环境变量。同时,介绍了如何使用Visual Studio Code作为编辑器,编写并运行了第一个汇编程序——HelloWorld!,成功打印出预期的字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天是我学习汇编语言的第一天~

至于我为什么要学汇编,有两个原因:(1)无聊想学;(2)发现了一本荒废了亿年的汇编书(怎么感觉跟没讲似的)

书上讲的汇编环境安装方法已经太过”古老“,所以我在网上查了n篇资料,又是一次将树莓派报废的尝试,最后CPU竟然烧到了87°C,都能烤肉了(T_T)

-----------------------正文---------------------

1. 硬软件信息

硬件:树莓派4b

软件:Windows 11

2. 安装过程

第一步:安装汇编运行环境DOSBox

        DOSBox资源链接:https://pan.baidu.com/s/1lcmtFWXoe40ZgXBRt2lw9Q 
        提取码:cgf9

        解压,打开应用程序DOSBox.exe,按照提示一步步进行安装,设置全部默认

        安装完成后退出DOSBox。

第二步:安装MASM,LINK和DEBUG

        资源链接:https://pan.baidu.com/s/1WujUQlthf5d2mY7OsyQweA 
        提取码:1yug

        这边我在C盘根目录建了一个文件夹叫AssimbleStudy(名字自己取),然后新建两个文件夹分别叫ASM和MASM(这个名字不能变)(由于树莓派的特殊原因它只有C盘,有D或E盘的童鞋们可以建在其他盘,记住路径不能含空格,不然DOSBox会识别失败!!)

        然后将刚才贴出的资源链接里的压缩包解压到刚刚建的MASM文件夹。

第三步:配置DOSBox

        用编辑器打开DOSBox安装路径里的DOSBox 0.74 Options.bat文件,在末尾加入如下几行:

mount A: C:/AssimbleStudy

set PATH=%PATH%;A:/MASM;

A:

cd A:/ASM

        这段配置的意思差不多就是挂载了一个临时的虚拟磁盘A盘(因为DOSBox只能识别虚拟磁盘),它的真实路径是C:/AssimbleStudy(根据自己情况输入),然后将汇编处理的DEBUG,LINK和MASM三个文件所在的MASM文件夹临时加入环境变量PATH方便编译,转到虚拟A盘,最后进入ASM工作目录(理解能力差的童鞋这段可以直接跳过)

        保存,打开DOSBox,应该会显示如下界面

第四步:安装编辑器Visual Studio Code(可选)

        编写汇编程序用普通的编辑器就行,这边推荐使用VSCode,想用VSCode码汇编程序的可以参考下面的安装教程(安装完的直接跳第二步安装汇编扩展)

        (1)下载安装VSCode

        访问VSCode官网VSCode官方链接,根据自身情况选择安装包下载,由于树莓派是ARM64架构,我选择的安装包是VSCodeUserSetup-arm64-1.63.2.exe,童鞋们可以根据自己电脑的架构选择安装包

        安装过程一路Next,这里就不展示了。

        (2)安装汇编扩展

        打开VSCode,打开扩展界面,搜索ASM,选择ASM Code Lens扩展,选择install

        等待它安装一会儿,待界面显示“卸载”或“Uninstall”即可

3. 编写第一个汇编程序——Hello World!

        打开VSCode(VSCode也可以换成如Notepad++这样你熟悉的编辑器),在VSCode中打开刚才创建的ASM文件夹,新建一个汇编程序hello.asm(记住后缀一定要是.asm!!)

        然后键入以下内容:

STACK	SEGMENT  PARA  'STACK'	
		DB 100 DUP('?')						
STACK	ENDS								
DATA	SEGMENT								
  		STRING	DB 'Hello World!','$'		
DATA	ENDS
CODE	SEGMENT								
		ASSUME CS:CODE, DS:DATA, SS:STACK	
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 	

        (其实这段代码是什么意思我也不知道,从书上抄的,反正能打印出“Hello World!”就行了)

        然后打开DOSBox,输入以下代码:

masm hello.asm
link hello.obj
hello.exe

        如果有提示让你输入内容全部不输入,直接回车,看到打印出“Hello World!”即为运行成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值