计算机组成原理设计一个累加和,组成原理课设关于累加器.doc

组成原理课设关于累加器

沈阳航空航天大学

课 程 设 计 报 告

课程设计名称:计算机组成原理课程设计

课程设计题目:COP2000实现数据累加

院(系):计算机学院

专 业:计算机科学与技术

班 级:

学 号:

姓 名:

指导教师:

完成日期:

目 录

第1章 总体设计方案1

1.1设计原理1

1.2设计思路1

1.3设计环境2

第2章 详细设计方案4

2.1 算法与程序的设计与实现4

2.1.1算法具体描述4

2.2 流程图的设计与实现5

2.2.1流程图具体分析5

第3章 程序调试与结果测试8

3.1 程序调试8

3.2 程序测试及结果分析8

参考文献10

附 录(源代码)11

第1章 总体设计方案

设计原理

实现无符号数的累加功能,计算1+2+…………+99+100。应用累加器和4个寄存器可以实现这个程序。根据该程序可以拓展到对连续内存地址的数据进行累加。连续内存地址的累加与累加相比,需要对于内存地址进行累加并且从内存地址中读数,然后将读出的数据进行累加求和。在累加求和部分,两个程序的原理是相同的。

设计思路

每个运算步骤需要用到累加器A,需要一个寄存器存储100以控制循环,一个寄存器存储从1开始每次加1递增的累加数。由于5050的十六进制是13BA,一个寄存器最大只能存放FF,所以需要用到两个计算器存放累加的结果。

我用R0存储控制循环的数;用R1存放累加数,用R2和R3存放累加和,其中R2存放高位,R3存放低位。

对于连续内存地址数据进行累加时,数据输入,在COP2000软件中,为了直观简便观看调试程序,可用立即数送入;而在硬件测试中,应采用中断方式输入,其优点是可连续输入不同数据,灵活,用户输入数据,如:

LOOP1:

JMP LOOP1

ORG 20H

IN

两种方式产生结果相同。在中断程序中可以加入循环控制数据和内存地址自动累加语句,可以控制输入的数据个数。

连续内存地址累加和数据累加相比,只有数据输入部分不同,最基本的原理是相同的,所以还是用R0存储控制循环的数;用R1存放累加数,用R2和R3存放累加和,其中R2存放高位,R3存放低位。

设计环境

利用伟福COP2000型计算机组成原理实验仪软件和计算机,在COP2000试验仪软件上编程实现数据的累加。伟福COP2000试验仪软件的指令集分为如下大类:算术运算指令、数据传送指令、跳转指令、中断返回指令、输入输出指令。

伟福COP2000计算机组成原理实验仪软件截图如1.3所示:

本程序所用到的相应的指令集

算术逻辑运算指令

SUB A,#II———–从累加器中减去立即数后加入累加器A中

AND A, #II———–累加器A“与”立即数II

ADDC A,R———将寄存器R值加入累加器A中,考虑进位

(2) 数据传送指令

MOV R#II———-将立即数II送到寄存器R

MOV MM, A ———–将累加器A中的值送到存储器MM地址中

MOV A,#II————将立即数II送到累加器A中

MOV RA————将累加器A中的值送到寄存器A中

MOV A,R———–将寄存器R值送到累加器A中

MOV A, MM ———–将存储器MM地址中的值送到累加器A中

MOV @RA————-将累计器A的值送到间址存储器中

(3)跳转指令

JZ MM—————若零标志位置1,跳转到MM地址

JC MM—————若进位标志置1,跳转到MM地址

JMP MM—————跳转到MM

如下为COP2000计算机组成原理实验软件截图:

图 1.3 伟福COP2000计算机组成原理试验仪软件截图

第2章 详细设计方案

2.1 算法与程序的设计与实现

本课设采用伟福COP2000实验仪软件和计算机实现数据累加的功能,利用伟福COP2000的指令集编程实现。

2.1.1算法具体描述

从1累加到100是一个重复一百次的循环,控制循环的条件则必然是一个等于一百的数,每执行一次循环就减一,当此数减到零跳出循环。

本程序的核心思想就是:累加和=累加和+累加数,然后累加数加1。在开始没有进入循环时需要先将1存入寄存器R1,并且将1存入R3,循环的控制数初始值应该是9

相关资源:截取软件够累的-其它工具类资源-CSDN文库

来源:milkLala

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年6月17日
下一篇 2021年6月17日

相关推荐