微机实验课-实验二循环程序设计

微机实验课-实验二循环程序设计

William 2018年11月

一、实验介绍

         本次实验是使用汇编程序,实现复制和循环程序的设计,并在DOS环境下验证。实验要求有两个,如下。

1.复制:要求将first行中的非负数复制到second行,画出流程图并编写程序。利用DEBUG调试正确。

2.排序:要求将second行中的数据按升序重新排列,画出流程图并编写程序。利用DEBUG调试正确。

程序模块给定如下。

微机实验课-实验二循环程序设计_第1张图片

二、实验操作

1.复制程序设计

        按照实验报告要求,添加汇编程序,参考程序设计如下。

微机实验课-实验二循环程序设计_第2张图片

结合实验一的内容,保存为“shiyan21.asm”,进入DOS环境,进行如下操作。

微机实验课-实验二循环程序设计_第3张图片

先-t执行两次,观察数据段初始化时的数据存储形式。特别是负数的存储形式,如第一个(-8)的十六进制为(F8H),最后一个(-4)的存储形式为(FCH),见下图。

微机实验课-实验二循环程序设计_第4张图片

然后使用 – u 命令,找到程序最后一行的地址,如下图,为 076e:001e

微机实验课-实验二循环程序设计_第5张图片

执行全部程序,再查看DS段内容,看是否实现复制功能。如下图,正确完成①。

微机实验课-实验二循环程序设计_第6张图片

2.循环程序设计

         题目分析:首先需完成第1步,将正数放在second行,然后对second行进行排序。采用冒泡排序,依次比较数据。完整的参考程序设计如下。

微机实验课-实验二循环程序设计_第7张图片

将上述文件命名为shiyan22.asm文件,并进行汇编,进入debug模式,操作如下图。

微机实验课-实验二循环程序设计_第8张图片

然后查看程序结果。执行-u命令两次,找到程序最后一行的地址,如下图,此时为 076E:003F 。

微机实验课-实验二循环程序设计_第9张图片

先-t两次,观察初始化时,DS段中数据的存储形式,如下图。

微机实验课-实验二循环程序设计_第10张图片

然后将程序执行完后,再观察数据,验证程序设计的正确性。

微机实验课-实验二循环程序设计_第11张图片

结合1中的second行数据,可以验证,排序正确,到此,完成整个实验二的设计内容。

若有疑问,请留言,或加笔者的扣扣1021100382~

 

你可能感兴趣的:(微机原理实验课)