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

这篇具有很好参考价值的文章主要介绍了微机原理与接口技术课内实验-NUAA-Masm for Windows。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

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

2、 做亿点点说明

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

4.实验报告


1、软件下载:  Masm for Windows 2015

(可以理解成友好的文本编辑器,其运行和调试仍会调出dosbox)

 安装包:   https://sm.myapp.com/original/Office/wasm2015.rar

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

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

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

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

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

 在非C盘新建一个工作区,如D盘 下面 (用来存放代码)

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

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

;********************************************
;  *程序功能:显示Hello World!                    *
;  *编译器:Masm 5.0,ML6.11都可以          *
;  ********************************************
DATAS  SEGMENT
     STRING  DB  'Hello World!',13,10,'$'
DATAS  ENDS

CODES  SEGMENT
     ASSUME    CS:CODES,DS:DATAS
     
START:
     MOV  AX,DATAS
     MOV  DS,AX
     LEA  DX,STRING
     MOV  AH,9
     INT  21H
   
     MOV  AH,4CH
     INT  21H
CODES  ENDS
    END   START

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

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

 点击调试也是没有问题的。(-t指令可以正常运行)

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

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

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

windowresolution=1280x800
output=opengl 

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

2、 做亿点点说明

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

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

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

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

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

masm for windows 2015好多付费的内容,并且示例较少, 最新版本的2020 官网:家民软件

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

2020的安装流程也是一样的

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

可以看到上面2020的版本给出了很多免费的示例,所以我选择,用2020给出的示例参考(学习),用2015编译运行。

###

有人问为什么不直接在2020里面运行?  这样不是() tuo nasha   fang 那啥?

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

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

算了 这段好也不重要,跳过就可以

#######

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

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

 打开 运行下使用命令调试下 发现也可以。 (就好像dev内置了 MinGW一样)

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

那么其实也可以不用下载 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

或者:链接:https://pan.baidu.com/s/10HUsGq2Va0p_NNaE6z3cKw?pwd=khpl 
提取码:khpl 
--来自百度网盘超级会员V4的分享

微机原理与接口技术课内实验-NUAA-Masm for Windows
2、然后就是这个样子:

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


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

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

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

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

5 接下来解压 编译工具masm 其中zip中下面几个比较重要

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

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

二、配置准备工作

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

(提醒一下 asm文件不要中文命名,就先拿 输出helloworld 的举例子)

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

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

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

上面那个文件叫: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微机原理与接口技术课内实验-NUAA-Masm for Windows

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

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

完美撒花!嘿嘿~!

三、怎样用 DOSBox 运行 asm 文件(该解释下上面为社么那么做了!!!!!)

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

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

mount c D:\Masm-workspace

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

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

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

微机原理与接口技术课内实验-NUAA-Masm for Windows
4、编译 hello.asm 文件:

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

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

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

5、链接 hello.obj 文件:

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

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

 在这之后 你可以用dir命令看一下,当前目录下有没有exe文件,有就正常,没有就GGGG!。 

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

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

依然撒花!!~~~~

顺道说一句,debug.exe 也是有用的哦!(上面四个exe文件是不可缺少的,少了可能就不能调试)

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

4.实验报告

我觉得我写的报告有点垃圾,就不放我自己的了吧。但还是要说明下:正常人的实验二的“累加题目“会出现和老师的结果不一致的问题,看看自己的数据段和代码段是不是离得太近,导致后面键入的程序  覆盖了前面刚刚键入 的数据   。另外下面的链接中 不都是正确答案! 不都是!不都是!

实验1https://max.book118.com/html/2017/0411/99784703.shtm
实验2https://max.book118.com/html/2017/0602/111069272.shtm
实验3http://xn--https-rfa//max.book118.com/html/2018/0704/8101133036001114.shtm
实验4https://wenku.baidu.com/view/29ed92f44693daef5ef73d4b.html?_wkts_=1670082584532

实验5https://www.docin.com/p-1084470632.html
实验6https://www.docin.com/p-2270614783.html

有精力的建议多做两个实验,毕竟6个实验是基本要求,哦对了!  

2020级的4专微机考试题是 10道大题,当时是两个问答题,

一个是8086和80386的区别(也就是你要清楚的知道8086-奔图系列的区别和发展思路,从总线啊 体系结构啊  特点啊方向去答)

另外一个是bios和SRAMxxxx什么东西的区别,忘记了。

其他的题目包括但不限于:

总线状态 (计算题),

内存分段和分页的经典大题,

中断向量表的入口地址,段选择子啊,中断向量描述符啊 什么的

设计一个从线性地址->物理地址的划分,就是让你设计怎么分页,比如页表不能超过xxxK,页目录表不能超过xxxx个

8253 8259 8255是综合在一个大题来考的(真的非常非常难受),建议这一块的熟练程度要高到让人看起来心疼!请注意我没有危言耸听。

最后一个答题是 汇编程序,就是实验题中的 出入月份并显示的那个题目!!!!!!(原题!!!!)个人感觉 最起码的冒泡要会,显示/输入 字符串/字符的INT中断一定要知道(一般不给)

开个玩笑:按照记忆曲线的规律,我能记起这一半的题目已经是正常了,剩下的就看各位的造化了。

姿瓷一下互联网精神好不好的啦!文章来源地址https://www.toymoban.com/news/detail-417233.html

到了这里,关于微机原理与接口技术课内实验-NUAA-Masm for Windows的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微机原理与接口技术 8255和8253综合应用之交通灯控制器的设计

    交通灯控制器的设计 一、实验要求 通过采用并行口8255A和定时器/计数器8253编写一模仿交通灯程序,在微机原理实验仪上调试,运行后可以看到LED灯在不停的红绿交替亮。 二、实验目的: 熟悉和掌握并行口8255A和定时器/计数器8253的初始化和综合使用。 三、实验电路及连接图

    2024年02月12日
    浏览(44)
  • <微机原理>[汇编语言]-[实验八]矩阵键盘应用实验

    实验八 矩阵键盘应用实验.doc 掌握矩阵式键盘识别技术 进一步掌握数码管显示原理 Keil5 普中A2开发板 stc-isp 用单片机的并行口P1接矩阵键盘,在数码管上显示每个按键的“0—F”序号。对应的按键的序号排列如图所示: 使用EQU伪指令重新命名R0为KEY_VALUE方便代码后续的理解。

    2024年02月10日
    浏览(39)
  • <微机原理>[汇编语言]-[实验七]数码管动态显示实验

    实验一 软件开发环境和简单程序设计 实验二 I_O输入输出实验 实验三 键盘扫描显示实验 实验四 中断实验 实验五 定时器实验 实验六 串行口实验 实验七 数码管动态显示实验 实验八 矩阵键盘应用实验 实验九 电子时钟 微机原理实验课程,会陆续根据目录更新文章 掌握LED八段

    2024年02月07日
    浏览(38)
  • EMU8086使用及8086指令系统(微机原理实验)

    熟悉并掌握EMU8086汇编语言编程调试环境; 学习8086寻址方式(立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、基址变址相对寻址、隐含寻址)。要求对以上寻址方式进行熟悉,观察不同寻址方式下指令运行结果(每种寻址方式2个实例,

    2023年04月26日
    浏览(50)
  • 【EMU8086使用及8086指令系统】—— 微机原理实验

    熟悉并掌握EMU8086汇编语言编程调试环境; 学习8086寻址方式(立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、基址变址相对寻址、隐含寻址)。要求对以上寻址方式进行熟悉,观察不同寻址方式下指令运行结果(每种寻址方式2个实例,

    2024年02月04日
    浏览(39)
  • 实验五 键盘按键与数码管显示(汇编与微机原理)

    实验目的: 熟悉星研集成开发环境,掌握微机接口程序编写调试的基本方法。 掌握矩阵式键盘的工作原理及识别键盘按键的方法。 掌握8段数码管显示数字或字符的工作原理和它的使用方法。 掌握用8255扫描键盘及用8255刷新数码管显示的方法。 实验:       在(2行*8列)小

    2024年02月04日
    浏览(46)
  • 【汇编语言与微机原理】实验五:键盘按键与数码管显示

    熟悉星研集成开发环境,掌握微机接口程序编写调试的基本方法。 掌握矩阵式键盘工作原理及识别按键的方法。 掌握8段数码管显示数字或字符的工作原理和它的使用方法。 掌握用8255扫描键盘及用8255刷新数码管的显示方法。 在2*8(看 着像4*4,实际上是2*8 )的小键盘上按下

    2024年02月16日
    浏览(41)
  • 微机原理 || 8253接口芯片知识点+4道经典例题+手写解题过程

      【例1】 :  设825 3 端口地址为3 00H~303H, 要求计数器2工作在方式5,二进制计数, CLK2=2MHz , OUT2=1KHz。 试按上述要求完成825 3 的 初始化 。   【例2】: 选择计数器 0 工作于方式 3 ,计数初值为 1234 ,十进制计数方式;计数器 2 工作于方式 2 ,计数初值为 61H ,采用二进制

    2024年02月10日
    浏览(49)
  • 微机原理 || 第3次测试:第八章-常用接口芯片8255&8253(测试题+手写解析)

    一直没有学明白8253和8255芯片,觉得后面难,其实看懂后,就是照着表格去对应填写, 知道地址怎么回事就没问题哒~ 相信你 😘 对应练习部分:测试1-5题足够考试滴~~~  更多8253练习见如下笔记哦~ 微机原理 || 8253接口芯片知识点+4道经典例题+手写解题过程_MSY~学习日记分享

    2024年02月10日
    浏览(41)
  • FPGA纯verilog代码实现8位精简指令集CPU,一学期的微机原理不如看懂这套代码,提供工程源码和技术支持

    本文章主要针对大学本科阶段学生; 读文章之前先来几个灵魂拷问: 1、你是否学过《微机原理》、《单片机》、《汇编语言》之类有关微型计算机的课程? 2、上这些课时你的老师是否只是机械的讲着PPT,你听着无聊,听不懂,逐渐对计算机专业产生了畏惧? 3、这些计算机

    2024年02月11日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包