没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
![application/pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/release/download_crawler_static/3506316/bg1.jpg)
汇编语言程序设计的实验环境及上机步骤
一、 实验环境
汇编语言程序设计的实验环境如下:
硬件环境
微型计算机( 系列 )一台
软件环境
操作系统
任意一种文本编辑器(、(记事本)、 ! 等)
汇编程序("#" 或 #")
连接程序($% 或 $%)
调试程序(&' 或 )
文本编辑器建议使用 或 ,汇编程序建议使用 "#",连接程序建议使用 $%,调试
程序建议使用 。
二、 上机实验步骤
注:以下步骤适用于除汇编语言程序设计的实验一到实验四外的所有实验(实验一到实验四仅使用 )。
1.确定源程序的存放目录
建议源程序存放的目录名为 #"(或 "#"),并放在 盘或 盘的根目录下。如果没有创建过此目录,请
用如下方法创建:
通过 的资源管理器找到 盘的根目录,在 盘的根目录窗口中点击右键,在弹出的菜单中选择“新建”
→“文件夹”,并把新建的文件夹命名为 #"。
请把 "#"、$%、' 和 都拷贝到此目录中。
2.建立 ASM 源程序
建立 #" 源程序可以使用 或 (记事本)文本编辑器。下面的例子说明了用 文本编辑器来
建立 #" 源程序的步骤(假定要建立的源程序名为 ($$#"),用 (记事本)建立 #" 源程序的
步骤与此类似。
在 中点击桌面左下角的“开始”按钮→ 选择“运 行”→在 弹出的窗 口中输入“ " )*#"*
($$#"+,屏幕上出现 的编辑窗口,如图 所示。
,,,,,,,,
![](https://csdnimg.cn/release/download_crawler_static/3506316/bg2.jpg)
图 ,文本编辑器 的编辑窗口
窗口标题行显示了 程序的完整路径名。紧接着标题行下面的是菜单行,窗口最下面一行是提示行。菜单可
以用 键激活,然后用方向键选择菜单项,也可以直接用 -. 打开 . 文件菜单,用 - 打开 编辑菜单,
等等。
如果键入 命令时已带上了源程序文件名()*#"*($$#"),在编辑窗口上部就会显示该文件名。
如果在键入 命令时未给出源程序文件名,则编辑窗口上会显示“$+,表示文件还没有名字,在这种情
况下保存源程序文件时, 会提示输入要保存的源程序的文件名。
编辑窗口用于输入源程序。 是一个全屏幕编辑程序,故可以使用方向键把光标定位到编辑窗口中的任何一
个位置上。 中的编辑键和功能键符合 的标准,这里不再赘述。
源程序输入完毕后,用 -. 打开 . 菜单,用其中的 #!/ 功能将文件存盘。如果在键入 命令时未给出
源程序文件名,则这时会弹出一个“#!/!+窗口,在这个窗口中输入你想要保存的源程序的路径和文件名0本例中为
)*#"*($$#"1。
注意,汇编语言源程序文件的扩展名最好起名为#",这样能给后面的汇编和连接操作带来很大的方便。
3.用 MASM.EXE 汇编源程序产生 OBJ 目标文件
源文件 ($$#" 建立后,要使用汇编程序对源程序文件汇编,汇编后产生二进制的目标文件( &2 文件)。
具体操作如下:
方法一:在 中操作
用资源管理器打开源程序目录 )*#",把 ($$#" 拖到 "#" 程序图标上。
方法二:在 # 命令提示符窗口中操作
选择“开始”→“程序”→“附件”→“命令提示符”,打开 # 命令提示符窗口,然后用 命令转到源程序目录
下,接着输入 "#" 命令:
)3)4回车3
)3*#"4回车3
)*#"3"#"($$#"4回车3
操作时的屏幕显示如图 所示。
![](https://csdnimg.cn/release/download_crawler_static/3506316/bg3.jpg)
图 在 # 命令提示符窗口中进行汇编
不 管 用 以 上 二 个 方 法 中 的 哪 个 方 法 , 进 入 "#" 程 序 后 , 都 会 提 示 让 你 输 入 目 标 文 件 名 ( 567
8!9),并在方括号中显示默认的目标文件名,建议输入目标文件的完整路径名,如: )*#"*($$&2
〈回车〉。后面的两个提示为可选项,直接按回车。注意,若打开 "#" 程序时未给出源程序名,则 "#" 程序会
首先提示让你输入源程序文件名(#: 78!9),此时输入源程序文件名 ($$#" 并回车,然后进行的
操作与上面完全相同。
图 ;有错误的汇编过程例子
如果没有错误,"#" 就会在当前目录下建立一个 ($$&2 文件(名字与源文件名相同,只是扩展名不同)。
如果源文件有错误,"#" 会指出错误的行号和错误的原因。图 ; 是在汇编过程中检查出两个错误的例子。在这个例
子中,可以看到源程序的错误类型有两类:
警告错误0! < 1。警告错误不影响程序的运行,但可能会得出错误的结果。此例中无警告错误。
严重错误0#/ 1。对于严重错误,"#" 将无法生成 &2 文件。此例中有两个严重错误。
在错误信息中,园括号里的数字为有错误的行号(在此例中,两个错误分别出现在第 行和第 行),后面给
出了错误类型及具体错误原因。如果出现了严重错误,你必须重新进入 编辑器,根据错误的行号和错误原因来
改正源程序中的错误,直到汇编没有错为止。
注意,汇编程序只能指出程序的语法错误,而无法指出程序逻辑的错误。
4.用 LINK.EXE 产生 EXE 可执行文件
在上一步骤中,汇编程序产生的是二进制目标文件(&2 文件),并不是可执行文件,要想使我们编制的程序能
够运行,还必须用连接程序($%)把 &2 文件转换为可执行的 文件。具体操作如下:
方法一:在 中操作
![](https://csdnimg.cn/release/download_crawler_static/3506316/bg4.jpg)
用资源管理器打开源程序目录 )*#",把 ($$&2 拖到 $% 程序图标上。
方法二:在 # 命令提示符窗口中操作
选择“开始”→“程序”→“附件”→“命令提示符”,打开 # 命令提示符窗口,然后用 命令转到源程序目录下,
接着输入 $% 命令:
)3)4回车3
)3*#"4回车3
)*#"3$%($$&24回车3
操作时的屏幕显示如图 = 所示。
图 =把 &2 文件连接成可执行文件
不管用以上二个方法中的哪个方法,进入 $% 程序后,都会提示让你输入可执行文件名(>:8),并在方
括号中显示默认的可执行文件名,建议输入可执行文件的完整路径名,如: )*#"*($$〈回车〉。后面的
两个提示为可选项,直接按回车。注意,若打开 $% 程序时未给出 &2 文件名,则 $% 程序会首先提示让你输入
&2 文件名(567":),此时输入 &2 文件名 ($$&2 并回车,然后进行的操作与上面完全相同。
如果没有错误,$% 就会建立一个 ($$ 文件。如果 &2 文件有错误,$% 会指出错误的原因。对于无
堆栈警告(! <:#%<9)信息,可以不予理睬,它不影响程序的执行。如链接时有其它错误。
须检查修改源程序,重新汇编、连接,直到正确。
5.执行程序
建立了 ($$ 文件后,就可以直接在 # 下运行此程序,如下所示:
)3($$〈回车〉
)3
程序运行结束后,返回 #。如果运行结果正确,那么程序运行结束时结果会直接显示在屏幕上。如果程序不
显示结果,我们如何知道程序是否正确呢?例如,这里的 ($$ 程序并未显示出结果,所以我们不知道程序执
行的结果是否正确。这时,我们就要使用 调试工具来查看运行结果。此外,大部分程序必须经过调试阶段才
能纠正程序执行中的错误,调试程序时也要使用 。
实验一 数据传送
一、 实验目的
1. 熟悉 8086 指令系统的数据传送指令及 8086 的寻址方式。
![](https://csdnimg.cn/release/download_crawler_static/3506316/bg5.jpg)
2. 利用 Turbo Debugger 调试工具来调试汇编语言程序。
二、 实验预习要求
1. 复习 8086 指令系统中的数据传送类指令和 8086 的寻址方式。
2. 预习 Turbo Debugger 的使用方法(见附录二):
a) 如何启动 Turbo Debugger;
b) 如何在各窗口之间切换;
c) 如何查看或修改寄存器、状态标志和存储单元的内容;
d) 如何输入程序段;
e) 如何单步运行程序段和用设置断点的方法运行程序段。
2. 按照题目要求预先编写好实验中的程序段。
三、 实验任务
1.通过下述程序段的输入和执行来熟悉 Turbo Debugger 的使用,并通过显示器屏幕观察程序的执
行情况。练习程序段如下:
MOV BL,08H
MOV CL,BL
MOV AX,03FFH
MOV BX,AX
MOV DS)[0020H],BX
2.用以下程序段将一组数据压入(PUSH)堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数
据的变化情况。压栈程序段如下:
MOV AX,0102H
MOV BX,0304H
MOV CX,0506H
MOV DX,0708H
PUSH AX
PUSH BX
PUSH CX
PUSH DX
出栈程序段请自行编写(用不同的出栈顺序)。
3 指出下列指令的错误并加以改正,上机验证之。
(1) MOV [BX],[SI]
(2) MOV AH,BX
(3) MOV AX,[SI][DI]
剩余25页未读,继续阅读
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/239758fe983f4200a0b2d3043bd2aabb_jo_say.jpg!1)
jo_say
- 粉丝: 138
- 资源: 44
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)