计算机组成原理设计报告(2).doc_第1页
计算机组成原理设计报告(2).doc_第2页
计算机组成原理设计报告(2).doc_第3页
计算机组成原理设计报告(2).doc_第4页
计算机组成原理设计报告(2).doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

计算机组成原理课程设计报告 课程设计题目:微程序设计 学 号:姓 名:专 业:班 级:指导教师: 2012年 6月 27日目录1.实验题目.32.实验时间.33.实验地点.34.实验目的.35.实验装置组成.36.指令系统汇编.97.主要代码及结果.128.试验程序样例.149.实验小结.181、 实验题目:1、运用模型机指令系统编写程序完成20以内的奇数和偶数相加之和,将结果存放在指定的存储器单元中。2、编写程序将56和78两个数的各位相互组合成不同的数,存放到存储器中。(如57、58、76、85、86等)例程1给R0、R1、R2、R3各赋一初值,然后对它们进行一系列算术/逻辑运算,观察各寄存器的变化情况。例程2给R0、R1、R2、R3各赋一初值,然后对它们同立即数进行一系列算术/逻辑运算,观察各寄存器的变化情况。例程3给R0、R1、R2、R3各赋一初值,然后对它们进行一系列移位循环操作,观察各寄存器的变化情况。2、 实验时间:2012年6月25日到2012年6月28日3、 实验地点:信工楼3094、 实验目的:1、熟悉本模型机的指令系统,理解各条指令的功能和用途。2、打开实验例程,熟悉软件操作,根据程序执行流程观察寄存器和存储器单元的变化情况,连接串行口连通模型机,观察模型机中数据流向和程序执行的同步情况。3、利用本模型机的指令系统,自行编制一些小的程序,调试并运行。5、 实验装置组成:(一)硬件部分实验装置是为计算机组成原理的工作流程专门设计的。它能够让学生通过手动和自动的操作弄清和掌握计算机工作的基本原理。实验模块由手动实验部分和程序实验部分组成。手动实验主要完成计算机各个组成部分的原理实验,包括数据流程、运算器执行、存储器和外设之间的数据交换等部分,通过组合变化各个输入信号,进一步理解计算机各个部件的执行过程和工作原理,手动实验在本指导书的前面部分已经作了详细介绍。程序实验主要包括:数据传输程序各种运算程序控制转移程序数码转换程序(二)软件部分软件系统由编辑程序、编译程序、程序执行、调式程序几个部分组成,完成由源程序输入、语法分析排错、指令汇编、应用程序调试的全过程。软件系统采用集成化的窗口,各种软件功能分类设置在程序中,可以根据程序实验过程的需要随意组合使用。软件系统的主窗口界面如下图所示:图1 软件系统主窗口界面二、软件使用说明(一)界面说明图2 界面说明标识软件系统采用集成化的窗口,各种软件功能分类设置在程序中,软件系统的主窗口界面如上图所示,现将界面各组成部位说明如下:1 寄存器 在程序执行过程中,观察各寄存器的值2 存储器 在程序执行过程中,观察各存储器的值3 信息 显示当前指令对应的微程序4 编辑源程序 从汇编状态或运行状态返回到编辑源程序状态5 汇编 对编辑好的源程序进行汇编连接6 程序复位 让程序指针指向程序的第一条指令7 运行 运行已通过汇编连接的程序8 停止 停止程序的运行9 单步 单步运行程序(逐条指令执行)10 单拍 单拍运行程序(逐条微指令执行)11 设置/取消断点 设置/取消断点,调试程序时用12 连接/断开串行口 连接/断开串行口,连通/断开程序和模型机通信13 源程序编辑区 在该区域内编辑源程序14 寄存器/存储器显示区显示各寄存器/存储器的值15 微程序显示区 显示当前指令对应的微程序(二)编辑程序编辑源程序采用文本的编辑方式,按照给定的模型机指令系统,用汇编语言格式编辑程序,对所编辑的程序进行语法分析,纠错处理。编辑程序主要实现如下的操作流程:图3 编辑源程序流程图4 新建编辑窗口(三)汇编程序汇编程序先对源程序进行语法检查,排除源程序中的语法错误,再将源程序编译为机器码,在调试的窗口中显示指令行、机器码、助记符等信息。图5 汇编出错提示信息图6 内存地址、助记符和机器码(四)运行方式程序的运行有单拍、单步和连续执行三种方式。单拍方式是逐条执行微程序中的微指令,屏幕显示信息(微指令、积存器和存储器状态)与实验板显示信息(微指令对应的数据流向以及相应的控制信号)互相配合,可以将单拍微指令执行的结果从不同角度显示出来,以便观察。单步方式是一条一条指令执行的过程,每条指令执行后,将内存和寄存器中的变化显示出来。连续执行将一段程序执行的功能表现出来,在连续执行调试中可以采用设置断点的方法,分模块或分段地进行程序调试。(五)跟踪调试程序执行的调试方法可按调试的目的考虑,一般有以下几种情况:(1)为了掌握一般指令执行过程。采用单拍和单步,结合实验板观察有关的变化。图7 单拍或单步运行(2)为观察寄存器的变化。采用单步和连续执行,打开寄存器窗口观察寄存器变化。图8 观察寄存器变化(3)为了观察内存的变化。采用单步和连续执行,打开内存窗口观察内存变化。图9 观察存储器变化(4)为了调试一段条件转移程序。可以在不同转移目标点设置断点,观察其转移情况。图10 设置断点六、指令系统汇编(一)模型机指令系统序号类型汇编助记符指令格式指令状态位注 释操作码源目第二字节长度1算逻运算 一类ADD RD,RS0001RSRD1Z,C,E,V,NRD(RD)+(RS)2ADC RD,RS0010RSRD1Z,C,E,V,NRD(RD)+(RS)+CY3SUB RD,RS0011RSRD1Z,C,E,V,NRD(RD)-(RS)4SBC RD,RS0100RSRD1Z,C,E,V,NRD(RD)-(RS)-CY5MUL RD,RS0101RSRD1Z,C,E,V,NRD(RD)*(RS)6AND RD,RS0110RSRD1ZRD(RD)and(RS)7OR RD,RS0111RSRD1ZRD(RD)or(RS)89算逻运算 二类ADD RD,#IMM101000#IMMRD#IMM2Z,C,E,V,NRD(RD)+#IMM10ADC RD,#IMM101001#IMMRD#IMM2Z,C,E,V,NRD(RD)+#IMM+CY11SUB RD,#IMM101010#IMMRD#IMM2Z,C,E,V,NRD(RD)-#IMM12SBC RD,#IMM101011#IMMRD#IMM2Z,C,E,V,NRD(RD)-#IMM-CY13CMP RD,#IMM101100#IMMRD#IMM2Z,C,E,V,NPWS(RD)-#IMM,比较不改变寄存器14AND RD,#IMM101101#IMMRD#IMM2ZRD(RD)AND #IMM15OR RD,#IMM101110#IMMRD#IMM2ZRD(RD) OR #IMM16MOV RD,#IMM101111#IMMRD#IMM2ZRD-#IMM1718移位循环 三类SRR RD 100000RD1Z,C右一位,带进位位循环19SRL RD 100001RD1Z,C左一位,带进位位20CLR RD100010RD1Z清零21COM RD100011RD1Z,C取反操作22INC RD100100RD1ZRDRD+123DEC RD100101RD1ZRDRD-1242526传数类指令 四类LD RD,MEM110000RDMEM2直接寻址,RDMEM27ST MEM,RS110010RSMEM1直接寻址,MEMRS28LD RD,(MEM)110001RDMEM2间接寻址,RD(MEM)29ST (MEM),RS110011RSMEM2间接寻址,(MEM)RS30IN RD,PORT110100RDPORT2将数据输入接口输入到RD31OUT PORT,RS110101RSPORT2将RS数据输出到数据接口32MOV RD,RS110110RDR01寄存器寻址,RD(R0)3334转移类指令 五类JNZ ADDR11101000ADDR2结果不为零,转移35JZ ADDR11101001ADDR2结果为零,转移36JNC ADDR11101010ADDR2进位不为零,转移37JC ADDR11101011ADDR2进位为零,转移38JNE ADDR11101100ADDR2不等,转移39JE ADDR11101101ADDR2相等,转移40JO ADDR11100110ADDR2溢出,转移41JNO ADDR11100111ADDR2溢出,转移4243JMP ADDR11110001ADDR2转移44其它4546NOP11110100空操作474849HALT11111111停机操作(二)模型机指令码1、指令码一类76543210 双寄存器运算操作码源寄存器的寄存器ADDADCSUBSBC0xxxrsrdMULANDMULMOV二类其他指令76543210操作码的寄存器SHRSRLROLRCR100XXXrdDECINCPUSHPOP 三类寄存器与立即数运算76543210操作码的寄存器ADDADCSUBSBC101XXXrdCMPANDORMOVIMM四类传数类指令76543210操作码的寄存器MOVMOVMOVMOV110XXXrdINOUT(MEM) / (MEM)五类转移类指令76543210操作码JNZJNCJNEJNVDISP111XXXXXJZJCJEJVADDRDISP / ADDRCALLJMPJMPHALTNOP2、寄存器和状态位说明序号rd,rs寄存器名100R0状态位(PWS)7654210201R1NEVCZ310R2负数等溢出进位零411R33、数据格式7654210#IMM,DISP相对转移符号尾数七、主要代码及结果1、运用模型机指令系统编写程序完成20以内的奇数和偶数相加之和,将结果存放在指定的存储器单元中。 MOV R2,#0H MOV R3,#0H MOV R0,#0H L1: ADD R0,#01H MOV R1,R2 ADD R1,#01H CMP R1,#00H JZ L2 ADD R3,R0 JMP L3 L2: ADD R2,R0 L3: CMP R0,#14H JNZ L1 L4: JMP L4实验结果:2、编写程序将56和78两个数的各位相互组合成不同的数,存放到存储器中。(如57、58、76、85、86等) 主要代码: MOV R0,#56HMOV R1,#78HMOV R2,R0MOV R3,R1ADD R0,#0F0HADD R1,#0FHADD R0,R1AND R2,#0FHADD R3,#0F0H ADD R3,R2实验结果:八、试验程序样例例程1给R0、R1、R2、R3各赋一初值,然后对它们进行一系列算术/逻辑运算,观察各寄存器的变化情况。Exmp1.asmMOV R0,#05HMOV R1,#06HMOV R2,#07HMOV R3,#08HADD R1,R0SUB R1,R2MUL R2,R3AND R3,R1OR R2,R0L1:JMP L1结果:例程2给R0、R1、R2、R3各赋一初值,然后对它们同立即数进行一系列算术/逻辑运算,观察各寄存器的变化情况。Exmp2.asmMOV R0,#0FEHMOV R1,#06HMOV R2,#07HMOV R3,#08HADD R0,#05HADC R3,R2SUB R3,#02HAND R3,#66HOR R1,#0F9HL1:JMP L1结果:例程3给R0、R1、R2、R3各赋一初值,然后对它们进行一系列移位循环操作,观察各寄存器的变化情况。Exmp3.asmMOV R0,#05HMOV R1,#06HMOV R2,#07HMOV R3,#08HSRR R0SRL R1CLR R2COM R3INC R2DEC R1L1:JMP L1结果:九、实验小结 经过一周的组成原理课程设计,让我深刻体会到,学习的时光很短,只有不断加强自己的知识水平,才能在较短时间内完成课程设计的要求。同时,也在实验中感受到学习的无限乐趣,在老师的指导及同学的讨论中

温馨提示

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

评论

0/150

提交评论