计算机组成原理实验3

上传人:kms****20 文档编号:41300669 上传时间:2018-05-29 格式:DOC 页数:5 大小:965.50KB
返回 下载 相关 举报
计算机组成原理实验3_第1页
第1页 / 共5页
计算机组成原理实验3_第2页
第2页 / 共5页
计算机组成原理实验3_第3页
第3页 / 共5页
计算机组成原理实验3_第4页
第4页 / 共5页
计算机组成原理实验3_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《计算机组成原理实验3》由会员分享,可在线阅读,更多相关《计算机组成原理实验3(5页珍藏版)》请在金锄头文库上搜索。

1、实验三实验三 循环程序实验循环程序实验一、实验类型一、实验类型设计性实验二、实验目的与任务二、实验目的与任务1. 实现内存数据访问。 2. 练习使用循环结构,实现数据排序。三、预习要求三、预习要求1. 预习并掌握循环结构语句控制,实现循环结构的基本指令包括: LOOP、LOOPE/Z、LOOPNE/NZ,亦可采用条件转移指令实现循环。 2. 预习并掌握循环嵌套、多重循环的基本结构。 3. 熟悉排序的基本实现方法,包括选择排序法、冒泡排序法等。四、实验基本原理四、实验基本原理1.多重循环 循环的嵌套:在一个循环体内又完整地包含另一个循环。 (1)在循环嵌套中,内外循环不得交叉;(2)在循环语句与

2、条件转向 语句或无条件转向语句联合使用时,可以循环体内转到循环体外,不允许 从体外转到体内。多重循环时,可以从内循环体转到外循环体,不允许从 外循环转入内循环体。 多重循环结构如图所示:典型程序段如下: 示例 1:示例 2:2.排序方法 (1)冒泡法 这种方法的算法思想为:1)从最后一个数(或第一个数)开始,依次把相 邻两个数进行比较,即第 N 个数与第 N-1 个数比较,第 N-1 个数与第 N-2 个数 比较等,若前者大(第 N-2 个数大于第 N-1 个数) ,则两者交换,否则不交换, 直到 N 个数的相邻两个数都比较完为止。此时,N 个数中的最小数将被排在 N 个数的最前列。2)对剩下

3、的 N-1 个数重复第一步,找到 N-1 个数中的最小数。 3)重复第二步,直到 N 个数全部排序好为止。 (2)选择法 这种方法的算法思想相当于 N 个数中选最小值的重复进行。第一趟,第一 个元素依次和其他所有元素比较,谁小谁往第一位换,经过一趟选择即选出最 小值。下一趟,剩余的元素重复前面的过程,N 个元素经过 N-1 趟选择即全部 排好。五、实验内容五、实验内容1. 用两种方法实现对五个字从大到小排序。 2. 在实现上述基本功能的基础上,尝试用冒泡法实现快排。六、实验步骤六、实验步骤1、利用冒泡法实现对五个字的从大到小排序。 (1)选择新建一个.COM 类型的文件。 (2)在编辑界面中,

4、键入如下图所示参考代码并理解代码含义。(3)点击工具栏的【模拟】按钮,进入调试窗口,单击源代码窗口中变 量定义语句,在汇编窗口中找到变量对应的内存分配单元地址,单击【附加】 按钮,选择【内存】打开查看内存窗口,相关界面如下图所示: 在内存窗口左上角的文本框中变量对应段地址:偏移地址(如图所示,本 程序变量 num 内存地址为0100:001D) ,特别注意,不同程序不同的变量定义汇 编后对应的内存地址是不一样的,请观察后再键入。键入地址后敲回车或点击 【刷新】按钮,即可看到变量对应内存单元的情况。 (4)单步调试并观察寄存器和内存的变化情况,如下图所示为利用冒泡法实 现了5个字的从大到小排序的

5、运行结果。2、尝试利用选择法实现对五个字的从大到小排序。 (相关参考程序见附录 3- 2) 3、在冒泡排序中,当遇到某次排序过程中,无需数据交换的情况时,说明数据 已按要求排好序,可提前结束以加快排序速度。设计程序实现冒泡法快排。 4、亦可尝试其他方法实现数据排序,题目自拟。附录 3-2.asmmov cx, len mov si, offset num lp1: push cx push si mov ax, si lp2: add si, 2 cmp ax, si jae j1 xchg ax, si j1: loop lp2 pop si mov si, ax add si, 2 pop cx loop lp1 jmp $ len equ 5-1 num dw 1,2,3,4,5

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号