COP2000实现补码数的排序.doc_第1页
COP2000实现补码数的排序.doc_第2页
COP2000实现补码数的排序.doc_第3页
COP2000实现补码数的排序.doc_第4页
COP2000实现补码数的排序.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

沈阳航空航天大学 课课 程程 设设 计计 报报 告告 课程设计名称 计算机组成原理课程设计计算机组成原理课程设计 课程设计题目 COP2000 实现补码数的排序实现补码数的排序 院 系 专 业 班 级 学 号 姓 名 指导教师 完成日期 2016 年 1 月 15 日 沈阳航空航天大学课程设计报告 目目 录录 第第 1 章章 总体设计方案总体设计方案 1 1 1设计原理 1 1 2设计思路 1 1 3设计环境 1 第第 2 章章 详细设计方案详细设计方案 3 2 1 算法与程序的设计与实现 3 2 2 流程图的设计与实现 3 第第 3 章章 程序调试与结果测试程序调试与结果测试 5 3 1 程序调试 5 3 2 程序测试及结果分析 5 参考文献参考文献 6 沈阳航空航天大学课程设计报告 第 1 章 总体设计方案 0 第 1 章 总体设计方案 1 1设计原理设计原理 本次课程设计利用的是 COP2000 指令集编程实现的 是对于给定内存单元 00H 0FH 中的 16 个 8bit 补码数 完成从小到大的排序功能 首先利用冒泡排序 法将内存中的 16 个数进行排序 冒泡的原理是先将 16 个数逐一比较 选出最大 的沉底 然后再在剩下的数中依次重复上一步骤 最后利用统计 16 个数中正数 的个数设计循环将负数重新排序 1 2设计思设计思路路 对于补码数 其数有正有负 对于此可以分成两部分 首先是根据数的个数 确定循环次数 对于数一部分是将有符号的数视为无符号的数 对其进行冒泡排 序 另一部分是统计 16 个数中的正数个数设计循环将负数重新排序 1 3设计环境设计环境 利用伟福 COP2000 型计算机组成原理试验仪软件和计算机 在 COP2000 试 验仪软件上编程实现补码的排序 伟福 COP2000 试验仪软件的指令集分为如下大类 算术运算指令 逻辑运 算指令 移位指令 数据传输指令 跳转指令 中断返回指令 输入输出指令 该程序用到的指令集如下 1 算术逻辑运算指令 ADD A II 累加器 A 加立即数 II ADD A R 将寄存器中的数打入到累加器 A 中 AND A II 累加器 A 与立即数 II SUB A II 从累加器中减去立即数后加入累加器 A 中 沈阳航空航天大学课程设计报告 第 1 章 总体设计方案 1 2 数据传输指令 MOV R II 将立即数 II 传送到寄存器 R 中 MOV MM A 将累加器 A 中的值传送到存储器 MM 地址中 MOV A II 将立即数 II 送到累加器 A 中 MOV R A 将累加器 A 中的值送到寄存器 A 中 MOV A R 将寄存器 R 的值送到累加器 A 中 MOV A MM 将寄存器 MM 地址中的值送到累加器 A 中 MOV R A 将累加器 A 的值送到间址存储器中 3 跳转指令 JZ MM 若零标志位置 1 跳转到 MM 地址 JC MM 若进位标志置 1 跳转到 MM 地址 JMP MM 跳转到 MM COP2000 计算机组成原理试验软件截图如图 1 所示 沈阳航空航天大学课程设计报告 第 1 章 总体设计方案 2 图 1 COP2000 计算机组成原理软件 沈阳航空航天大学课程设计报告 附录 3 第 2 章 详细设计方案 2 1 算法与程序的设计与实现算法与程序的设计与实现 本课设采用伟福 COP2000 实验仪软件和计算机实现补码数排序功能 利用 伟福 COP2000 的指令集编程实现 算法描述 首先将 16 个补码数存入到内存中 数据存入内存地址 00H 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH 中 对十六个数进行冒泡排序法排序 冒泡排序法的运算如下 首先比较相邻的元素 如果第一个比第二个打 就交换它俩 然后对每一对 相邻元素进行同样的工作 从开始第一对到结尾最后一对 所以最后一个元素是 最大的数 针对所有的元素重复以上的步骤 除了最后一个 同理下一轮也是通 过相同的方法重复上面操作 到最后每次对越来越少的元素进行比较 直到没有 任何一对数字需要比较 2 2 流程图的设计与实现流程图的设计与实现 1 将十六个补码数存储到内存中如图 2 2 1 所示 图 2 2 1 存数流程图 开始 结束 将 16 个补码数存入到内存 00H 0FH 中 沈阳航空航天大学课程设计报告 附录 4 2 设置冒泡排序循环次数如图 2 2 2 所示 图 2 2 2 设置循环次数流程图 3 将十六个数进行冒泡排序如图 2 2 3 所示 N Y Y N 图 2 2 3 冒泡排序流程图 R0 R1 R2 0 开始 结束 结束 开始 R2 减 1 R0 和 R1 所指的地址加 1 R0 和 R1 内的数据交换 比较 R0 和 R1 的大小 将数据从 00H 01H 中取出并存到寄存器 R0 和 R1 中 冒泡的次数为 15 次 沈阳航空航天大学课程设计报告 附录 5 第 3 章 程序调试与结果测试 3 1 程序调试程序调试 程序中指令出现错误 代码不能正常运行 对其进行反复检查修改以及调试 使其正常工作 3 2 程序测试及结果分析程序测试及结果分析 结果展示 需排序的补码数 22 16 0A 08 12 22 3A 45 5C 6F 80 91 A2 BC BD 03 排序后的补码数 03 08 0A 12 16 22 22 3A 45 5C 6F 80 91 A2 BC BD 图 3 2 1 运行结果图 沈阳航空航天大学课程设计报告 附录 6 参考文献 1 王爱英 计算机组成与结构 第四版 M 北京 清华大学出版社 2006 2 白中英 计算机组成原理 第四版 M 北京 科学出版社 2008 沈阳航空航天大学课程设计报告 附录 7 附附 录 源代码 录 源代码 MOV A 22H MOV 00H A MOV A 16H MOV 01H A MOV A 0AH MOV 02H A MOV A 08H MOV 03H A MOV A 12H MOV 04H A MOV A 22H MOV 05H A MOV A 3AH MOV 06H A MOV A 45H MOV 07H A MOV A 5CH MOV 08H A MOV A 6FH MOV 09H A MOV A 80H MOV 0AH A MOV A 91H MOV 0BH A MOV A 0A2H MOV 0CH A MOV A 0BCH MOV 0DH A MOV A 0BDH MOV 0EH A MOV A 03H MOV 0FH A 输入数据 MOV A 0FH MOV 0F0H A 循环次数 MOV R0 0EFH 结果存入末地址R0 LOOP1 MOV R1 00H 判断首地址 MOV A 0F0H MOV 0F1H A 内层循环次数 LOOP2 沈阳航空航天大学课程设计报告 附录 8 MOV A R1 MOV R2 A 取出值存入R2 MOV A R1 ADD A 01 内存地址 1 MOV R1 A MOV A R2 SUB A R1 比较大小 JC S0 S1 交换 MOV A R1 MOV 0F2H A 保存后一个内存地址的值 MOV A R1 SUB A 01H MOV R2 A 保存前一个内存地址 MOV A R2 MOV 0F3H A 保存前一个内存地址的值 MOV A 0F2H MOV R2 A 后一个内存地址的值存入前一个 MOV A 0F3H MOV R1 A 前一个存入后一个 S0 MOV A 0F1H SUB A 01H 内层循环 1 MOV 0F1H A SUB A 00H JZ S2 内层循环结束 JMP LOOP2 S2 MOV A R1 MOV R0 A OUT 排序最后一位存入 MOV A R0 SUB A 01 MOV R0 A 存数最后一位地址 1 MOV A 0F0H SUB A 01H 外层循环 1 MOV 0F0H A SUB A 00H JZ LAST 循环结束 JMP LOOP1 LAST MOV A 00H MOV 0E0H A 沈阳航空航天大学课程设计报告 附录 9 OVER JMP OVER 沈阳航空航天大学课程设计报告 10 课程设计总结 课程设计总结 通过这次课程设计 我学会了 COP2000 的使用及操作 以及对汇编语言有 了

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论