面向对象程序设计课程设计划书模板.docx
- 文档编号:6513449
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:14
- 大小:149.16KB
面向对象程序设计课程设计划书模板.docx
《面向对象程序设计课程设计划书模板.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计课程设计划书模板.docx(14页珍藏版)》请在冰豆网上搜索。
面向对象程序设计课程设计划书模板
课程设计(大作业)报告
课程名称:
计算机组成原理
设计题目:
复杂模型机实验
院系:
信息技术学院
班级:
09计算机科学与技术本1班
设计者:
李娜
学号:
20091101139
指导教师:
王玉见
设计时间:
2011-5-30至2011-6-3
昆明学院
昆明学院课程设计(大作业)任务书
姓名:
李娜院系:
信息技术学院
专业:
计算机科学与技术学号:
20091101139
任务起止日期:
2011年5月30至6月3
课程设计题目:
复杂模型机实验
课程设计要求:
(1)在掌握单元电路实验的基础之上,将微程序设计模块与运算器模块存储器模块结合在一起,进一步将其组成系统,够着一台复杂模型机。
(2)微程序控制器来控制模拟机的数据通道。
(3)为其定义指令,并编写相应的微程序,通过联机调试,观察计算机的执行指令,从取指令,指令译码,执行指令等过程中数据通路内数据的流动情况
,进一步掌握整机概念。
(4)动手操作实验设备,掌握微程序的实际思路与想法
。
(5)该模拟机由运算器寄存器译码电路存储器存储微指令uongde控制存储器组成,并能实现一些机器指令,因此根据设计好的机器指令程序,实现出输入、输出、存储器读写和简单的控制指令。
(6)整机调试
工作计划及安排
1、2011年5月30日早上在惟实楼3302机房,在老师的指导下进行了基本模型机实验为复杂模型机实验奠定基础。
2、2011年5月30日下午在图书馆查资料与同学探讨,为实验做准备。
3、2011年5月31日早上在惟实楼3302机房,跟指导老师做实验。
4、2011年5月31日下午实验过程结束,做实验总结。
5、2011年6月1日在老师的指导下又去重新做了一遍实验,对实验步骤更加清楚。
6、2011年6月2日,写实验报告。
7、2011年6月3日交实验报告
指导教师签字
年月日
课程设计(大作业)成绩
学号:
20091101139姓名:
李娜指导教师:
王玉见老师
课程设计题目:
复杂模型机实验
总结:
本次课程设计是在王玉见老师的帮助和指导下,以及一个组员的积极配合,通过大家共同的努力,实现了课程设计。
通过几天紧张有序的课程实践,不仅让我们对复杂模型机和微程序的编辑写入有了进一步的了解,辅助了课堂书本的学习,更加生动直观的为我们展示了模型机的工作原理,程序是如何运行的,实际体验,这些深化和巩固了自己的知识结构,同时本次实验对我们耐心和认真度得一个考验,因为本实验有这大量的线路连接,如果某一根线界限错误或者接触不良都会影响到实验结果。
通过这次实验,使我懂得,只要自己在每一次实践中都能仔细认真思考,能亲自动手,课程设计中遇到的问题都能迎刃而解,每个同学都要多操作演示,理解各步骤的意义,只有多操作才能从中发现问题,及时解决问题,从而更好的掌握实验的基本原理。
课程设计的目的除了工作量和设计量之外,更重要的是去认真对待,通过设计实践对知识有更深刻的认识,并从中学到书本上学不上的知识。
指导教师评语:
成绩:
填表时间:
指导教师签名:
课程设计(大作业)报告
1课程设计介绍1
1.1课程设计内容1
1.2课程设计要求1
2总体设计2
3调试与性能分析6
4参考文献8
附录(程序清单)10
1、课程设计介绍
一.实验目的
综合运用所学计算机原理知识,设计并实现较为完整的模型计算机。
二.实验设备
1.ZYE1601B计算机组成原理教学实验系统一台,排线若干。
2.PC机一台。
三.数据格式及指令系统
1.数据格式
模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下:
数据位数
D7
D6D5D4D3D2D1D0
用途
符号
尾数
其中第7位为符号位,数值表示范围是:
-1≤X<1。
2.指令格式
模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O指令、访问存储器、转移指令和停机指令。
(1)算术逻辑指令
设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:
数据位数
D7D6D5D4
D3D2
D1D0
用途
操作码(OP-CODE)
源寄存器(RS)
目的寄存器(RD)
规定:
选中的寄存器(RS或RD)
R0
R1
R2
寄存器的编码
00
01
10
算术逻辑指令的名称、功能和具体格式见表2—3。
(2)访存指令及转移指令
模型机设计2条访存指令,即存数(STA)、取数(LD),2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC),指令格式为:
数据位数
D7D6
D5D4
D3D2
D1D0
D7……D0
用途
00
寻址模式M
操作码OP-CODE
目的寄存器编码RD
位移量D
其中,OP-CODE为操作码,rd为目的寄存器地址(LD、STA指令使用)。
D为位移量(正负均可),M为寻址模式,其定义如下:
寻址模式M
有效地址E
说明
00
D
直接寻址
01
(D)
间接寻址
10
(RI)+D
RI变址寻址
11
(PC)+D
相对寻址
本模型机规定变址寄存器RI指定为寄存器R2。
(3)I/O指令
输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:
数据位数
D7D6D5D4
D3D2
D1D0
用途
操作码(OP-CODE)
地址(addr)
目的寄存器(RD)
其中,在IN指令中,addr=01,选中“INPUT”中的开关组作为输入设备,在OUT指令中,addr=10时,表示选中“OUTPUTUNIT”中的数码块作为输出设备。
(4)停机指令
指令格式如下:
数据位数
D7D6D5D4
D3D2
D1D0
值
0110
00
00
HALT指令,机器码为60H,用于实现停机操作。
3.指令系统
复杂模型机共有16条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其它指令1条。
表2-3列出了各条
表2-3 复杂模型机指令系统
助记符
指令格式
指令长度(字节数)
指令功能
第一字节
第二字节
CLRrd
011000rd
无
1
0→RD
MOVrs,rd
1000rsrd
无
1
RS→RD
ADCrs,rd
1001rsrd
无
1
RS+RD+cy→RD
SBCrs,rd
1010rsrd
无
1
RS-RD-cy→RD
INCrd
1011××rd
无
1
RD+1→RD
ANDrs,rd
1100rsrd
无
1
RS^RD→RD
COMrd
1101××rd
无
1
→RD
RRCrs,rd
1110rsrd
无
1
RS带进位循环右移一位,然后RS→RD
RLCrs,rd
1111rsrd
无
1
RS带进位循环左移一位,然后rs→RD
LDAM,D,rd
00M00rd
D
2
有效数据E→RD
STAM,D,rd
00M01rd
D
2
RD→有效地址E
JMPM,D
00M1000
D
2
有效数据E→PC
BZCM,D
00M00rd
D
2
当CY=1或ZI=1时,有效数据E→PC
INrd
010001rd
无
1
INPUT设备的数据→RD
OUTrd
010110rd
无
1
RD→OUTPUTUNIT
HALT
01100000
无
1
停机
四.总体设计
复杂模型机的数据通路框图如图2-7。
根据机器指令系统要求,设计微程序流程图及确定微地址,如图2-8。
图2-7 复杂模型机数据通路框图
按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表转换为联机操作时的十六进制格式文件。
微程序
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
控制信号
S3
S2
S1
S0
M
CN
RD
M17
M16
A
B
P
uA5
uA4
uA3
uA2
uA1
uA0
A字段
B字段
P字段
15
14
13
控制信号
12
11
10
控制信号
9
8
7
控制信号
0
0
0
0
0
0
0
0
0
0
0
1
LDRi
0
0
1
RS_G
0
0
1
P1
0
1
0
LDDR1
0
1
0
RD_G
0
1
0
P2
0
1
1
LDDR2
0
1
1
RI_G
0
1
1
P3
1
0
0
LDIR
1
0
0
299_G
1
0
0
P4
1
0
1
LOAD
1
0
1
ALU_G
1
0
1
AR
1
1
0
LDAR
1
1
0
PC_G
1
1
0
LDPC
五.实验步骤
1.根据复杂模型机的指令系统,编写实验程序。
实验例程如下:
本实验完全使用寄存器操作。
程序首先从数据输入开关采集数据放入R0中,经循环左移两次放入R1中。
然后再次从数据输入开关采集数据放入R0中,经循环右移一次与R1中的数据相加,其结果送到R1中,然后判断加法的结果是否有进位或为全零,若是就循环运行,否则,输出结果到数码管上显示。
实验的机器指令程序如下:
地址 内容 助记符 说明
00 44 IN R0 ;INPUT数据→R0,第一次采集数据(设输入数据为14H)
01 F0 RLCR0,R0 ;R0带进位左循环移位一次
02 F1 RLCR0,R1 ;第二次左移后保存到R1中
03 44 IN R0 ;输入开关数据→R0,第二次采集数据(设输入数据 仍为14H)
04 E0 RRC R0,R0 ;R0带进位右循环移位一次
05 91 ADC R0,R1 ;两数据相加
06 0C BZC 00 ;若有进位或结果为零,则跳到00地址单元
07 00
08 59 OUT R1 ;R1→OUTPUTUNIT显示;
09 60 HALT ;停机
以上程序的机器指令如下:
$P0044$P01F0$P02F1$P0344$P04E0$P0591$P060$P0700$P0859$P0960
微程序
$M00018108$M0101ED82$M0200C050$M0300A004$M0400E0A0$M0500E006$M0600A007$M0700E0A0$M0801ED8A$M0901ED8C$M0A00A03B$M0B018001$M0C00203C$M0D00A00E$M0E01B60F$M0F95EA25$M1001ED83$M1101ED85$M1201ED8D$M1301EDA6$M14001001$M15030401$M16018016$M173D9A01$M18019201$M1901A22A$M1A01B22C$M1B01A232$M1C01A233$M1D01A236$M1E318237$M1F318239$M20009001$M21028401$M2205DB81$M230180E4$M24018001$M2595AAA0$M2600A027$M2701BC28$M2895EA29$M2995AAA0$M2A01B42B$M2B959B41$M2C01A42D$M2D05AB6E$M2E0DAA2F$M2F01AA30$M300D8171$M31959B41$M32019A01$M3301B435$M3405DB81$M35B99B41$M360D9A01$M37298838$M38019801$M3919883A$M3A019801$M3B070A08$M3C068A09
2.按图2-9连接实验线路,仔细检查线路无误后接通电源。
(图中箭头表示需要接线的地方,接总线和控制信号时要注意高低位一一对应,可用彩排线的颜色来进行区分)
3.写程序
对于本实验箱可以用两种方法来写入程序。
方法一:
联机读/写程序
按照规定格式,将机器指令及微指令编辑成十六进制的规定格式文件,已经在前面列出。
使用联机软件的文件装载将实验程序和微程序下载到实验箱中,并用软件的读出功能进行检查。
本实验参考程序对应的文件名为“复杂模型机.TXT”(联机软件的使用方法参看附录2)。
方法二:
手动写入
接线图
(1)先将机器指令对应的微代码正确地写入28C16中,可以参照实验1.7微程序控制器的组成与微程序设计实验中微代码的写入方法,将本实验对应的微代码写入E2PR0M芯片中,对照前面的微程序内容校验正确后就可使用。
(2)使用控制台WRITE和READ微程序进行机器指令程序的手动装入和检查,其操作如下:
A.使SIGNALUNIT单元的SP03为“STEP”状态,SP04为“RUN”状态,CONTROLUNIT的开关SP05处于“NORM”状态,开关SP06处于“RUN”状态。
B.拨动SWITCH单元的总清开关CLR(1→0→1),微地址寄存器清零,程序计数器清零。
然后使SWITCH单元的SWB、SWA开关设置为“01”,按动一次CONTROLUNIT的触动开关START,微地址显示灯显示“001001”,再按动一次START,微地址灯显示“001100”,此时数据开关的内容置为要写入的机器指令,按动两次START键后,即完成该条指令的写入。
若仔细阅读WRITE的流程,就不难发现,机器指令的首地址总清后为零,以后每个循环PC会自动加1。
所以,每次按动START,只有在微地址灯显示“001100”时,才设置内容,直到所有机器指令写完。
C.校验。
拨动SWITCH单元的总清开关CLR(1→0→1),微地址清零。
PC程序计数器清零,然后使SWITCH单元的开关SWB、SWA为“00”,按动CONTROLUNIT的触动开关START,微地址灯将显示“001000”,再按START,微地址灯显示为“001010”,第三次按START,微地址灯显示为“111011”,再按START后,此时OUTPUT单元的数码管显示为该首地址中的内容。
不断按动START,以后每个循环PC会自动加1,可检查后续单元内容。
每次在微地址灯显示为“001000”时,是将当前地址中的机器指令写入到输出设备中显示。
4.运行程序
方法一:
联机运行程序
首先使各个开关的状态为:
SIGNALUNIT中的SP03开关设置为“STEP”状态。
SP04开关设置为“RUN”状态;CONTROLUNIT的开关SP05处于“NORM”状态,SP06处于“RUN”状态;SWITCH单元的开关SWB、SWA为“11”。
使SWITCH单元的总清开关CLR(1→0→1)清零后,程序首址为00H。
通过联机软件进入调试界面(其操作方法参见附录2系统联机操作软件说明),可以通过调试程序的操作界面控制程序的运行,同时观察运行过程和结果。
方法二:
手动运行程序
(1)单步运行程序
A.使CONTROLUNIT的开关SP05处于“NORM”状态,SP06处于“RUN”状态,SIGNALUNIT中的SP03为“STEP”状态,SP04为“RUN”状态,SWITCH单元的开关SWB、SWA为“11”。
B.拨动SWITCH单元的总清开关CLR(1→0→1),微地址清零,程序计数器清零,程序首址为00H。
C.单步运行微指令,每按动一次CONTROLUNIT的START触动开关,即单步运行一条微指令。
对照微程序流程图2-8,观察微地址显示灯MA5-MA0是否和流程一致。
D.当运行结束后,可检查运行结果是否和理论值一致。
如果运行结果保存在RAM的某一个单元中,则可以使用手动写入中的校验方法将其读出。
(2)连续运行程序
A.使CONTROLUNIT的开关SP05处于“NORM”状态,SP06处于“RUN”状态,SIGNALUNIT中的SP03为“RUN”状态,SP04为“RUN”状态,SWITCH单元的开关SWB、SWA为“11”。
B.拨动SWITCH单元的总清开关CLR(1→0→1),微地址及程序计数器清零,然后按动CONTROLUNIT的START触动开关,系统连续运行程序,稍后将SIGNALUNIT中的SP04拨至“STOP”时,系统停机。
C.停机后,可检查运行结果是否正确。
如果运行结果保存在RAM的某一个单元中,则可以使用手动写入中的校验方法将其读出。
4、参考文献
计算机组成原理作者:
谭浩强
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 课程 计划书 模板