2015 年《汇编语言程序设计》第一次上机
一、目的
(1) 学会汇编源程序的编辑、汇编、连接;
(2) 学会使用程序调试工具 TD.EXE;
包括如何观察寄存器中的值;
如何观察标志寄存器中标志位的值;
观察内存中数据存放的地址、存放结果;
程序的单步执行、连续运行等;
断点的设置、取消等
(3) 巩固已学习过的汇编语言程序设计知识,加深对这些知识的理解。
包括 汇编语言源程序的结构;常用的机器指令;常用的 DOS 系统功能
调用;简单的分支循环程序设计。
二、要求
(1) 按汇编语言教学网站上的《2015 实验报告模板》写实验报告。
交打印的纸质档。
三、题目
1、课本 3.11 题(P96-97 )
(1) 指出程序的功能和显示的内容。
注意:一定要先阅读程序,然后,再上机验证阅读理解的结果是否正确。
(2) 若将 NUM 的定义改成如下形式:NUM DB 35
显示的结果是什么?
(3) 若将 NUM 的定义改成如下形式:NUM DB 59
显示的结果是什么?
(4) 若将 NUM 的定义改成如下形式:NUM DB 75
显示的结果是什么?
(5) 修改该程序,使之能够以 16 进制形式显示 NUM 单元中的内容。
特别说明:
该题不用写“设计思想及存储单元分配”(3.1.1) ,不用画流程图(3.1.2)。
只需要给出第(5)小题的源程序(不需要书上的源程序);
要给出书上程序对测例(2),(3),(4)的运行效果截图;以及 (5) 对应的程序,对
(2),(3),(4) 的运行效果截图。
2、设在一个缓冲区 BUF1 中存放了一个串“123GOOD”, 将其以相反顺序拷贝到
另一个缓冲区 BUF2 中。
特别说明:
在实验记录中:要有用 TD 观察程序执行前后的数据区,并且将相应的数据区显示
截图(即显示出原串的 ASCII,以及倒序后的串的 ASCII)。
要有整个程序运行效果的截图。
要写“设计思想及存储单元分配”(3.1.1) ,但不用画流程图(3.1.2)。
3、从键盘输入两串字符分别存入 BUF1 和 BUF2 区,比较两串内容是否相等,
相等显示“SAME !”, 不相等显示“NO
要求:(1) 使用 10 号功能调用输入字符串;
SAME !”。
(2) 使用 9 号功能调用输出提示信息(如 Input String 1:);
(3) 使用 TD,观察字符串的存放结果
测试例子编号
1
2
3
4
串 1
abc
abcde
abc
abc
特别说明:
串 2
abc
abc
abd
bbc
严格按照实验报告规范,所有的要素都齐全。
4、选做题
输入一个数字串,输出其英文单词串。
例如:Input: 123
Translation: one two three
特别说明:
要写“设计思想及存储单元分配”(3.1.1), 不用画流程图。
要有程序清单,最好有适当的注释。
要有程序运行效果截图。