COP2000实现原码一位除法.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
COP2000实现原码一位除法

沈阳航空航天大学 课 程 设 计 报 告 课程设计名称:计算机组成原理课程设计 课程设计题目:COP2000实现原码一位除法 院(系):计算机学院 专 业:计算机科学与技术 班 级学 号:2012040101012 姓 名:程院 指导教师:杨华 完成日期:2015年01月15日 目 录 第1章 总体设计方案 2 1.1设计原理 2 1.2设计思路 2 1.3设计环境 2 第2章 详细设计方案 4 2.1 总体方案的设计与实现 4 2.1.1总体方案的逻辑图 4 2.1.2算法流程图 5 2.2 功能模块的设计与实现 6 2.2.1 模块的设计与实现 6 第3章 验证测试 9 3.1 验证测试 9 参考文献 10 附录(源代码)…………………………………………………………………………11 第1章 总体设计方案 1.1设计原理 原码一位除,即两个原码数相除,商的符号为除数和被除数的符号异或值。采用汇编语言实现定点原码一位除法器,算法为恢复余数法。利用恢复余数的方法来进行运算。 1.2设计思路 算法为恢复余数法,先用被除数减去除数,如果结果为正数商1,然后左移,如果是负数商0然后加上Y的补,继续运算。 实验开始时将实验数据从实验箱的开关输入到R0,R1,R2三个寄存器中,R0为被除数,R1为除数,R2为商。运算过程采用恢复余数法。主要判断被除数减去除数的商值。如果为负,商0然后加除数然后左移。如果商值为正商1,左移。数据都存放在寄存器中,最后结果在OUT寄存器中显示。 1.3设计环境 COP2000 模型机包括了一个标准CPU 所具备所有部件,这些部件包括:运算器ALU、累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。其中运算器和中断控制电路以及跳转控制电路用CPLD 来实现,其它电路都是用离散的数字电路组成。微程序控制部分也可以用组合逻辑控制来代替。 模型机的指令码为8 位,根据指令类型的不同,可以有0 到2 个操作数。指令码的最低两位用来选择R0-R3 寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。 ADD A, R?------------将寄存器R?的值加入累加器A中 ADD A,#II---------- 立即数#II加入累加器A中 SUB A,#II-----------从累加器中减去立即数后加入累加器A中 AND A,#II-----------累加器A“与”立即数II (2)数据传送指令 MOV A,R?------------将寄存器R?的值送到累加器A中 MOV R?,#II------------将立即数II存放到寄存器R?中 MOV R?,A------------将累加器A中的值送到寄存器A中 (3)移位指令 RR A----------------累加器A右移 RL A----------------累加器A左移 (4)跳转指令 JZ MM---------------若零标志位置1,跳转到MM地址 JMP MM---------------跳转到MM (5)位运算 AND A,R?------------累加器A“与”寄存器R?的值 (6)输入输出 OUT--------------------将累加器A中数据输出到输出端口 第2章 详细设计方案 2.1 总体方案的设计与实现 定点原码一位除,算法为恢复余数法,当余数为负时,需加上除数,将其恢复城原来的余数。商值的确定是通过比较被除数和除数的绝对值的大小,即x”-y”实现的,而计算机内只设加法器,所以需要将x”-y”操作变为|x|补+|y|补得操作。 2.1.1总体方案的逻辑图 图2.1 如上逻辑框图2.1.1中所示,R0、R1、R2均是8位的寄存器。R0是被除数,R1是除数,R2为商。其结果在OUT中输出。 2.1.2算法流程图 图2.2 算法流程图 算法流程图如图2.3所示。除法开始前,R2寄存器被清0,准备接收商,被除数的原码放在R0寄存器中,除数的原码放在R1寄存器中,计数器R3中存放需要移位的次数。除法开始后,首先判断除数是否为

文档评论(0)

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

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

1亿VIP精品文档

相关文档