目录

1、软件下载:  Masm for Windows 2015(友好的文本编辑器,但是运行和调试仍会调出dosbox。)

2、 做亿点点说明

3、命令行方式运行汇编:(实验四会用到,终究逃不过)


1、软件下载:  Masm for Windows 2015(友好的文本编辑器,但是运行和调试仍会调出dosbox。)

https://sm.myapp.com/original/Office/wasm2015.rar

上来先 下一步 然后 选择安装目录(非c盘就行!)

然后下一步安装    安装完成后 打开文件

在非C盘新建一个工作区,如D盘

新建一个 xxx.asm文件 然后拖到 软件里,然后输入上这串代码:(hello world输出)

;********************************************
;  *程序功能:显示Hello World!                    *
;  *编译器:Masm 5.0,ML6.11都可以          *
;  ********************************************
DATAS  SEGMENTSTRING  DB  'Hello World!',13,10,'$'
DATAS  ENDSCODES  SEGMENTASSUME    CS:CODES,DS:DATASSTART:MOV  AX,DATASMOV  DS,AXLEA  DX,STRINGMOV  AH,9INT  21HMOV  AH,4CHINT  21H
CODES  ENDSEND   START

点击运行就能看到结果了,

调试也是没有问题的。

调整 masm for  winodws  dosbox框大小的方法:

windowresolution=1280x800
output=opengl 

然后保存重新运行调试就变大了!

2、 做亿点点说明

在搜索配置dosbox环境的时候 出现了几个 名词, masm masm  for  windows  dosbox。给出自己的理解(自己瞎编的)。

我们都知道c语言的编译运行过程 :  .c 文件 -> gcc 编译器 (以这个为例) 编译运行  -> 在环境中生成exe并运行。

那么 这里的masm 也就类似于gcc   支持 把 .asm  编译链接

dosbox 类似于一个环境黑框,在这个环境里能够支持dos系统下的debug命令,也提供了 上面masm 处理过后的东西 的运行环境。

而 masm for windows 就类似于 devc++ 就是一个软件的名字。

对于 masm for windows 2012 这个版本 不支持 64电脑( 教室里那个电脑可以 自己的win10 64位操作系统不行)。 2015可以支持 并且很类似于上课看到的那样,但是这个好多付费的内容,并且示例较少, 最新版本的2020 官网:家民软件

安装流程也是一样的

可以看到上面给出了很多免费的示例,所以我的办法是,用2020给出的示例参考,用2015编译运行。

这样并不是() tuo nasha   fang 那啥

因为发现下面这个问题 我还不知道怎么解决。(自己新建的asm文件运行不出结果,只有给的示例才能出结果,而且这个结果怎么是在  白框框里?)

失败演示链接:微机原理-mashforwindows2020-失败演示视频-CSDN直播

另外:打开2015的文件位置可以看到,下载masm for windows 时带上了这个 环境dosbox

打开随便 运行下 发现也可以。

这里 接着上面来说 ,其实也可以不用下载 masm for windows(类比 dev) ,理论上 我们只需要 用记事本 写asm文件 然后编译器 masm 编译  在dosbox里运行就可以,根本不需要 masm for windows。

这里就需要  masm 和 dosbox关联下,方便dosbox找到masm。

3、命令行方式运行汇编:(实验四会用到,终究逃不过)

一、安装DOSBox 和 masm

1、百度网盘链接,直接下载文件夹里的压缩包就好了,解压到你的文件夹里。

链接:https://pan.baidu.com/s/1UwSpoh9mU0PtJ00BF63zRA
提取码:hiaj


2、然后就是这个样子:

3、运行 DOSBox0.74-win32-installer 文件夹中的 exe 文件进行安装。前面都是 Next 就行了,选择安装路径的时候记得选择自己刚刚创建的文件夹哦

4、这就安装好了,可以把那个 DOSBox.exe 创建个快捷方式到桌面上。(发送到桌面快捷方式)

5 解压 编译工具masm

  • masm.exe:汇编程序,用于汇编源程序(.asm),得到目标程序(.obj);
  • link.exe:连接程序,用于连接目标程序,得到可执行程序(.exe);
  • debug.exe:调试程序,用于调试可执行程序。

二、配置准备工作

1、汇编编译器masm 中上面解压拿到的四个exe 和你要编译的 asm文件放在一个目录下:

(提醒一下 我们这里不编译中文名的asm文件 另外还有些不能编译后面再说,就先拿 输出helloworld 的举例子)

2、这里我们走简单的办法,(直接配置初始化文件 不在一点点 挂载运行了),想弄清原理就请跳转到    三、怎么用DOXBox运行asm文件

上面那个文件叫:DOSBox 0.74 Options.bat

mount c D:\Masm-workspace   #把存在源码和编译工具的目录 配置成 dosbox中的虚拟c盘根目录 (听不懂就按着配就完了.....)
C:   #转到虚拟的c盘
dir  #列出当前存在的所有文件,实际上我后面注释了这行,谁没事一直看目录下有什么文件?
# (下面的可以不用配,我只是默认每次编译的都是hello.asm文件 每次链接的都是hello.obj 每次执行的都是 hello.exe 并且不存在任何附加文件 )
masm hello.asm
link hello
hello.exe

然后双击 桌面上的 DOSBox 0.74

这里我们发现,我们输了好多回车(不管,想管就看 三、怎样用 DOSBox 运行 asm 文件去弄原理),这里的 masm xxx  link xxx     xxxx.exe 发现都是自动输入上去的 ,对应上上个图的倒数三行。 不配置上面三行就(  masm  hello.asm  回车回车回车  link hello 回车回车回车  hello) 结果一样的。

完美撒花!嘿嘿~!

三、怎样用 DOSBox 运行 asm 文件(原理及过程详解)

1、还是四个exe 和你要编译的 asm文件放在一个目录下:
2、打开 DOSBox,首先使用一个命令来把咱们的文件目录作为一个虚拟C盘,你做成d盘也行,做成abcdefg盘都没人管你哦~

mount c D:\Masm-workspace

解释一下这个命令,理解了才好记忆:
       => mount:准备、安排的意思;
       => c:表示要虚拟为C盘;
       =>D:\Masm-workspace  被虚拟的文件夹路径(存放asm代码和一系列编译工具的那个)。

3、第二个命令,用来转至我们虚拟的C盘:c:


4、编译 hello.asm 文件:

masm hello.asm
然后会出现三个询问,连续三个回车就行了。

在这之后 你可以用dir命令看一下,当前目录下有没有obj文件,有就对了,没有就换一个文件编译。

5、链接 hello.obj 文件:

link hello或者 link hello.obj
文件后缀加不加 obj 都行,但是你 可别加 asm ,就出错了,链接当然是链接 object 文件了。还是会出现三个询问,连续回车。(这里名字是你刚才编译的那个名字)

在这之后 你可以用dir命令看一下,当前目录下有没有exe文件,有就对了,没有就G!

6、运行 hello.exe 文件: hello 或者 hello.exe

依然撒花!!~~~~

顺道说一句,debug.exe 也是有用的哦!(四个文件都有用!)

微机原理与接口技术课内实验-NUAA-Masm for Windows相关推荐

  1. led接口实验微型计算机,“微机原理与接口技术”开放性实验建设——“点阵LED显示器显示汉字”实验...

    "微机原理与接口技术"开放性实验建设--"点阵LED显示器显示汉字"实验 维普资讯 http://doc.xuehai.net 第 2 6卷第 9期 20 0 ...

  2. 【微机原理与接口技术】实验5 可编程并行接口(8255)

    可编程并行接口(8255) 8255并行I/O输入/输出实验 并行口键盘扫描实验 8255并行I/O输入/输出实验 P8255A EQU 288H ;P8255B EQU 0602H P8255C E ...

  3. 【微机原理与接口技术】实验报告

    文章目录 实验一:系统认识实验 实验二:运算类编程实验 实验三:输入输出类编程实验 实验四:判断类编程实验 实验五:顺序排序实验 实验六:累加求核实验 实验一:系统认识实验 一.实验内容: 编写实验程 ...

  4. 计算机微机原理及接口技术实训室,《微机原理与接口技术》课程实验报告.doc...

    <微机原理与接口技术>课程实验报告 实验一基本操作 一.实验目的 ? 1.熟悉Netlab MCS-51单片机实验系统的设置和使用方法 2.掌握基本MCS-51软件的编写.修改和编译的方法 ...

  5. 南航计算机硬件实验,南航80X86微机原理及接口技术实验指导书.pdf

    80X86 微机原理及接口技术实验 指导书 卓然 编著 2015-3-1 序 错误!未定义书签. 第一章 TD-PIT++实验系统简介 3 1. 概述 3 2. 系统总线电路单元 5 3. 接口实验单 ...

  6. 微机原理与接口技术实验:子程序设计实验

    学生实验报告 实验课名称:微机原理与接口技术 实验项目名称:子程序设计实验 实验名称:单指令功能的实现 一. 实验目的 1.掌握汇编语言源程序子程序设计方法:. 二.实验内容 设计一个程序,将所有的小 ...

  7. 微机原理与接口技术实验:宏实现1+2+3...+100

    学生实验报告 实验课名称:微机原理与接口技术 实验项目名称:宏 实验名称:宏实现1+2+3-+100 一. 实验目的 掌握重复宏的简单使用,并实现1+2+3-+100 二.实验内容 设计一个程序,利用 ...

  8. 微型计算机音乐发生器,微机原理及接口技术音乐发生器实验.doc

    微机原理及接口技术音乐发生器实验 微机原理及接口技术音乐发生器实验发生器音乐发生器)) Y N N (图2.2.1) 符号-频率对照表: 音符1 2 3 4 5 6 7频率131 147 165 17 ...

  9. 微型计算机接口与技术的交通灯,《微机原理与接口技术》交通灯控制实验.doc...

    <微机原理与接口技术>交通灯控制实验 2.4实验详细步骤 首先接线,8255C口的0.1.2.5.6.7号管脚接LED显示电路L0.L1.L2.L5.L6.L71,.WR*.A0.A1.R ...

最新文章

  1. python书籍推荐知乎-python入门书籍(爬虫方面)有哪些推荐?
  2. IT运维服务管理中知识
  3. c++的string转char*遇到的指针问题
  4. Unity3D ARPG网络游戏编程实践
  5. php 参数类对象以及改变对象,php类和对象--重载
  6. R语言︱机器学习模型评价指标+(转)模型出错的四大原因及如何纠错
  7. Tomcat - SSL操作大全
  8. 毕设题目:Matlab图像检索
  9. Ember Route
  10. 五、BD09(百度坐标系)
  11. 附录一 常见概率分布及相关公式
  12. 广州市职称计算机应用考试,职称计算机考试
  13. SAP 采购定价日期控制
  14. 虚拟机中的linux系统无法识别SD卡
  15. 微信小程序开发之文件上传下载应用场景(附Demo源码)
  16. 手游低延迟高性价比蓝牙耳机,300元学生党最爱五款蓝牙耳机
  17. NEO4J-相似度算法03-皮尔逊相似度(Pearson)应用场景简介
  18. 【第十八篇】Flowable之多人会签
  19. 原型图到成品:步步深入 CSS 布局
  20. 最简陋的MP3播放器

热门文章

  1. flink 流批一体
  2. mybatis批量新增和批量更新的效率对比
  3. 基于ARM的RealView MDK开发环境
  4. 《Windows 8 权威指南》——2.8 Metro版IE10,探测Windows 8 Metro应用的撒手锏
  5. 2011年养成的一个工作习惯
  6. 关于我装黑苹果的那些事儿
  7. 圆形相交,相切,相离,包含
  8. 谷歌动态验证码二次验证ssh
  9. 什么是光开光?它有什么作用?
  10. uefi +gpt 系统安装 和 传统legacy + mbr 的区别