微机原理-基本认识实验
一、实验目的:
1.熟悉微机原理实验箱及实验环境
2.熟悉汇编语言源文件的编辑和输入
3.理解汇编程序 MASM 的作用和使用方法
二、实验环境:
win10+DOS+MASM5.0
三、实验内容:
1.2 DOS环境
(1) 快捷键WIN+R,输入cmd,点击确定,可进入 DOS 环境。
在 DOS 提示符下,键入E:回车,进入 E 盘根目录,这时提示符变为 E:/>。
建立文件夹 MYCOED 的方法是:DOS 命令提示符 E:/>下输入MD MYCODE回车,E:\> ,建立自己的文件夹(或叫做子目录)MYCODE。
进入 MYCODE 文件夹,方法是:在 DOS 命令提示符 E:\> 下输入CD MYCODE回车,进入文件夹(或叫做子目录)MYCODE,进入后,提示符变为“ E:\MYCODE/> ”。进入 DOS 下创建的文件夹 MYCODE
DOS 环境下 EDIT 的使用
- Windows 环境下用记事本编辑源程序新建一个记事本,在记事本中输入源程序,将文件名保存为.asm 文件。
- DOS 环境下用 EDIT 编辑源程序在 DOS 界面输入命令:“EDIT”可打开源程序编辑界面,如图 所示
编辑源程序完毕后,对源程序进行保存和退出,如图 1-2-10 所示。在编辑界面中可以通过鼠标或键盘操作,按“Alt”+菜单首字母键可把光标在编辑框和菜单栏间切换,如“Alt+F”、“Alt+E”、“Alt+S”、 “Alt+V”等快捷键选择。光标在菜单栏时可以使用鼠标或者键盘的“上下左右”方向键移动光标位置,回车键确认选择。退出 EDIT 编辑界面后则进入 DOS 界面。
输入完后,按 Alt+F 键激活 File 菜单,按向下的箭头选择退出(Exit),这时已经编辑完 w.bat 文件,又回到了提示符状态,用前面讲过的 type 命令就可以查看刚才编辑的 w.bat 文件,只需输入 type w.bat 回车即可
1.3 汇编程序 MASM 的作用和使用方法
使用 MASM5.0 汇编工具时,不用预先安装,可直接将 MASM5.0 拷贝到 PC 机的磁盘中运行。拷贝时最好放在磁盘的根目录下,这样方便在 DOS 系统操作。本例程中将 MASM5.0 解压放在 D 盘的根目录下,文件夹命名为 MASM5.0,在该文件夹中有 MASM.EXE 和 LINK.EXE 两个重要的编译连接文件。
1.进入 E:\MYCODE 目录
在 E 盘根目录下建立一个文件夹 MYCODE,用于存放编写的.asm 文件。若在此目录下存在可用的 hello.asm 文件,编译和链接此文件的方法如下。编写好源代码后,进入 DOS 系统打开 E:\MYCODE 所在目录,方法:“开始”“运行”
输入 cmd 可进入 DOS 系统,依次输入 E:CD MYCODE,可打开 E:\MYCODE 目录。
2. 编译 asm 文件
格式:MASM asm 源文件及路径 1 obj 文件目标路径 2(省去则默认当前路径)
例如当前目录是 MYCODE,而 MASM.exe 在宏汇编文件夹 D:\MASM5.0 中,要执行 MASM.exe 程序,需要给出 MASM.exe 程序的完整路径名。
例如当前目录是用户目录 MYCODE,这时的 DOS 命令提示符为: E:\MYCODE\>
如果有一个汇编语言源程序名字为 HELLO.ASM,要执行 D:\MASM5.0 文件夹下的 MASM.EXE 程序对汇编源程序 HELLO.ASM 进行汇编,应该在 DOS 命令提示符下输入
E:\MYCODE\>D:\MASM5.0\MASM HELLO.ASM回车(键盘输入)。在界面输入 D:\MASM5.0\MASM HELLO.ASM 之后连续 3 次回车。程序无
错则在 E:\MYCODE 中增加文件 HELLO.OBJ。
3. 链接 obj 文件
生成的 obj 文件并不是一个可执行文件,还需要经过 LINK 链接之后才能生
成.exe 文件。格式:LINK obj 文件路径 1
如:E:\MYCODE\>D:\MASM5.0\LINK HELLO.OBJ回车(键盘输入)
在界面输入 D:\MASM5.0\LINK. HELLO.OBJ 之后连续 3 次回车,可在 E:\MYCODE 目录下发现一个 hello.exe 文件。编辑好的源文件需要汇编(用 MASM.EXE 工具),链接(用 Link.EXE 工具)
链接成可执行文件,才能在 PC 上调试或运行。
MASM.EXE 用于将汇编源程序汇编成目标文件。
例如:用一个汇编程序说明 MASM.EXE 的使用方法。汇编程序名称为
HELLO.ASM,内容如下:
DATA SEGMENT
MSG DB ‘Hello World.’,0DH,0AH,’$’
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET MSG
MOV AH,09H
INT 21H
MOV AX,4C00H
INT 21H
CODE ENDS
END START
接下来可以运行 HELLO.EXE,看看显示结果是不是 Hello, world.。