前言

在上篇博文 【汇编】1.汇编环境的搭建:DOSBox的安装 中,我们完成了

1.汇编环境模拟器DOSBox的安装。

2.汇编编译相关程序MASM6的下载。

在上篇文章的最后我们提到了挂载DOS程序把 :~\MASM6 文件夹映射到DOSBox环境下的 C: 根目录

接下来的这篇文章将在上一篇文章的基础上完成我们汇编的第一个程序:hello world。


相关操作

1.在 :~\MASM6\ 文件夹内新建一个txt文本文件。

2.在文件内键入如下代码:

DATA SEGMENT
STRING DB 'HELLO,WORLD!$'
DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX MOV DX,OFFSET STRING
MOV AH,9
INT 21H MOV AH,4CH
INT 21H
CODE ENDS
END START

3.修改文件名为hello,并修改文件后缀为.asm。

4.打开DOSBox,挂载MASM6,将 :~\MASM6\ 文件夹映射到DOSBox环境下的 C: 根目录

5.进入DOSBox环境下的 C: 根目录:键入`C:`
![](https://ws1.sinaimg.cn/large/006tNc79gy1fsyfia57nij31100q0q8u.jpg)

6.编译我们刚才创建的hello.asm文件:键入`masm hello.asm`,编译成功将会在文件夹下产生.obj文件。

7.连接.obj文件:键入`link hello.obj`,连接成功将会在文件夹下产生.exe文件。在这一步中会让我们输入一些参数,多按几次回车键忽略参数输入即可。

8.运行.exe文件:键入`hello.exe`,此时我们要的 hello world 就输出出来了。

![](https://ws1.sinaimg.cn/large/006tNc79gy1fsyfuxkit0j31100q0n22.jpg)


名词解释

;声明'数据段'开始

;数据,可以理解为DB类型数组,数组名是STRING,数组内容是HELLO,WORLD!$,

;$符号后续进行说明.单引号表明数据是以字符类型存入,

;内存中实际存放的是该字符对应的ASCII码.

;声明'数据段'结束


|版权声明:除特别注明外,本博客所有文章均为博主T.P原创,转载请注明出处:https://www.cnblogs.com/tp0829/p/9266253.html

最新文章

  1. 《BI项目笔记》——微软BI项目笔记连载
  2. ListActivity的使用
  3. linux vi编辑器操作手册
  4. Python 3.x下消除print()自动换行
  5. 转换framebuffer实现安卓截图
  6. GSON 简介 示例
  7. 2、vector的实现
  8. 融云发送手机短信验证短信(.net版本)
  9. mongodb入门级的视频教程-简易客户管理系统制作
  10. ASP.NET Core之跨平台的实时性能监控(2.健康检查)
  11. 研究分析JS中的三种逻辑语句
  12. Linux网络中接收 "二进制" 流的那些事 --- 就recv的返回值和strlen库函数进行对话
  13. weak alias
  14. Linux安装svn服务图文详解 ;出现No repository found in 'svn***问题
  15. 应用服务器性能优化 之 消息队列(MQ:Message Queue)
  16. response导出Excel(一个新手的记录,可以时常查看,以免自己忘记)
  17. Maven+Mybatis一些简单例子
  18. div展开与收起(鼠标点击)
  19. 6个炫酷又好用的 Python 工具,个个都很奔放呀
  20. PAT 乙级 1067 试密码(20 分)

热门文章

  1. 洛谷P3366 【模板】最小生成树(kuskal)
  2. 全文索引——CONTAINS 语法
  3. [C#] 查标准正态分布表
  4. BERT-Pytorch demo初探
  5. SuperSocket主动从服务器端推送数据到客户端
  6. H3C PAP验证
  7. while循环计算1-100和,1-100内偶数/奇数/被整除的数的和
  8. jackson java转json hibernate懒加载造成的无限递归问题
  9. [转]UEditor编辑器两个版本任意文件上传漏洞分析
  10. js 页面分享