COP2000实现无符号数的累加.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目 录 第1章 总体设计方案 1 1.1 设计原理 1 1.2 设计思路 1 1.3 设计环境 1 第2章 详细设计方案 3 2.1 算法与程序的设计与实现 3 2.2 流程图的设计与实现 4 第3章 程序调试与结果测试 5 3.1 程序调试 5 3.2 程序测试及结果分析 5 参考文献 7 附 录(源代码) 8 第1章 总体设计方案 设计原理 本次课程设计的任务是利用COP2000指令集进行编程,实现对给定内存中的16个8bit无符号数进行累加,将结果存入指定内存单元中。因为给的是8bit的无符号数,所以每一个数的并表示范围是0~255,没有正负号之分,故可以直接进行加法运算,如果结果溢出,就将其的进位标记下来,取一个指定内存单元进行存储进位的次数。当累加结束时,一个指定内存单元内存储着进位的次数,一个指定内存单元内存储着8bit的数据,将两个内存单元中的数据聚合观察处理即可得到真正的累加结果。 设计思路 首先将指定的16个8bit数据存入内存单元00H~0FH,然后将它们累加,累加得数存入内存单元F0H,并记录进位,进位次数存入F1H,最后得到的F0H和F1H两个内存单元的数据即是累加结果。 设计环境 伟福COP2000实验环境介绍 利用伪福COP2000型计算机组成原理试验仪软件和计算机,在COP2000试验仪软件上编程实现无符号数的累加。 2. 所用到的核心指令介绍 (1)算术逻辑运算指令 ADDC A,MM 将存储器MM地址的值与进位加入累加器A中 (2)数据传送指令 MOV A,#Ⅱ 将立即数Ⅱ送到累加器A中 MOV MM,A 将累加器A的值送到存储器MM中 (3)跳转指令 JC MM 若进位标志置1,跳转到MM地址 JMP LOOP 跳转到LOOP 3.COP2000计算机组成原理实验软件截图如图1.1所示 图1.1 第2章 详细设计方案 2.1 算法与程序的设计与实现 本次课程设计采用伟福COP2000实验仪软件和计算机实现无符号数的累加功能,采用伟福COP2000的指令集编程实现。 算法描述如下: 将16个8bit的无符号数存储到指定内存单元中 将16个无符号数存入到内存中,数据存入到地址00H~0FH。 利用跳转的方式视线无符号数的累加 先将00H和01H相加,若是有进位,则把进位存入R0,也就是R0加一。若是没有进位,则跳过进位存储语句。以此类推,最后得到的进位次数存放在R0,8bit数存在R1,把R0的数据转入0F0H,再把R1的数据转入0F1H,即可完成功能的实现。 2.2 流程图的设计与实现 1.将16个8bit无符号数存储到内存中,如图2.2.1所示。 图2.2.1 2.无符号数两两相加的过程如图2.2.2所示。 图2.2.2 第3章 程序调试与结果测试 3.1 程序调试 问题1:若是直接将累加的数据直接存入0F0H~0F1H,则会显示软件内存不够 解决方法:先把数据存入R0和R1,最后再进行数据转移。 3.2 程序测试及结果分析 数据测试1:16个无符号数皆为255,即FF 测试结果: 0F0H为0F, 0F1H为F0 如图3.2.2所示。 图3.2.2 数据测试2:16个无符号数皆为1 测试结果:0F0H为00,0F1H为10 如图3.2.3所示。 图3.2.3 参考文献 [1] 唐朔飞.计算机组成原理(第二版)[M].北京:高等教育出版社,2008 [2] 王爱英.计算机组成与结构(第四版)[M].北京:清华大学出版社,2006 [3] 白中英.计算机组成原理(第四版)[M].北京:科学出版社,2008 附 录(源代码) MOV A,#1 MOV 00H,A MOV A,#1 MOV 01H,A MOV A,#1 MOV 02H,A MOV A,#1 MOV 03H,A MOV A,#1 MOV 04H,A MOV A,#1 MOV 05H,A MOV A,#1 MOV 06H,A MOV A,#1 MOV 07H,A MOV A,#1 MOV 08H,A MOV A,#1 MOV 09H,A MOV A,#1 MOV 0AH,A MOV A,#1 MOV 0BH,A MOV A,#1 MOV 0CH,A MOV A,#1 MOV 0DH,A MOV A,#1 MOV 0EH,A MOV A,#1 MOV 0FH,A MOV A,#0 MOV R0,A MOV R1,A MOV A,00H ADDC A

文档评论(0)

gangshou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档