汇编语言实验指导/报告 - 7 -明
实验二 分支程序设计和DOS调用
一、实验目的
掌握汇编语言中分支程序的设计方法和DOS调用 二、实验内容
1、设变量X为带符号整数,要求:
1)如果X的值大于零,变量Y赋值为l。 2)如果X的值等于零,变量Y赋值为0。 3)如果X的值小于零,变量Y赋值为-1。 2、完成下述工作 注:完成下面的工作需要手动修改源文件中X的初始值,以满足不同条件 1)使用U命令,根据反汇编的程序清单找到DS的段地址 2)使用D命令,观察到数据段中X单元和Y单元的值 3)使用G命令运行程序
4) 使用D命令,观察到数据段中X单元和Y单元的值;反复使用2),3),4)步进行观察。
3、修改程序,显示变量Y的值。 三、 程序清单
按照上述实验过程同学自己设计程序。要求画出流程图,写出程序清单,调试步骤及结果。
1)比较两个无符号数的大小(量个数放在内存S3的连续两个单元中),将大数存入MAX单元中。
2)试编一程序,求三个带符号数据中的最大值,并将最大值存入MAX单元中,设三个带符号数分别在三个变量X,Y,Z中存储。
3)根据MODE单元中编号0-7分别转向L0-L7标号处,执行L0-L7处分别完成显示‘0-7’字符,即当MODE=0时,转向L0标号,完成显示‘0’,当MODE=7时,转向L7标号,完成显示‘7’。
4)根据输入值(0-4)的不同,执行不同的操作,用转移标法编写程序。
- 8 - 汇编语言实验指导/报告
实验三 循环程序设计和DOS调用
一 实验目的
熟悉循环程序的设计方法 二 实验内容
在以BUF为首地址的字节单元中存放CNT个无符号数,找出其中最大数,送入MAX字节单元中:
1)特以BUF为首地址的数据区中存有八个无符号数,分别为l、2、3、100、23、78、90、134。
2) 数据个数求法:数据末地址减去首地址,用符号CNT表示,即CNT=末地址-首地址。
3) 放最大数单元用MAX符号地址表示。
4) 使用U命令,得到反汇编清单,找到DS段地址。 5) 使用D命令,观察数据内容。 6) 使用G命令,运行程序。
7) 使用D命令,看数据段数据变化。
8) 程序运行结果把最大数送入MAX单元。 三、程序清单
(自己编写)
四、程序设计(画出流程图、写出程序清单及调试步骤和结果)
1.统计数据块中正数和负数个数(设有7个数,分别为-32,25,36,-18,-64,0,-3)
2.统计学生成绩,设有10个学生的成绩分别为56,69,84,82,73,88,89,63,100和80分,试编写程序分别统计低于60分,60-69分,70-79分,80-89分,90-99分以及100分的人数,并存放到S5,S6,S7,S8,S9以及S10单元中。
3.在字符串中查找空格字符(ASCII码位20H),找到显示Y,否则显示N。 4.根据键盘输入值N,计算前N项和(N<=10)
分析:这是循环程序,键盘输入值位循环次数,如果输入值是0,则不循环;否则如果输入的是5,则AL=1+2+3+4+5=15,执行5次循环。
相关推荐: