机组实验四报告

更新时间:2024-06-30 22:33:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验题目_基本模型机设计与实现______________________ 1.实验目的与要求:

(1)在掌握部件单元电路实验的基础上,将微程序控制器模块同运算器模块,存储器模块联机,组成一台基本模型计算机。 (2)用微程序控制器控制模型机的数据通路。

(3)通过CPU在构造的模型计算机上运行五条机器指令组成的简单程序,掌握机器指令与微指令的关系,建立利用指令控制整机(输入、输出、运算、存储系统)的概念。 实验要求

记录程序运行过程的数据和结果,按记录填写答题框,完成练习操作题,观察程序的执行过程并记录运行结果。

1.实验方案:

(1)按图连接实验线路,仔细检查无误后通电: (2)用基本的五条机器指令编写实验程序。 程序如下:(地址和内容都是十六进制,机器指令的前4位为操作码。) 地址 内容 助记符 说明

80H R0。数据80H从实验仪左下方“INPUT DEVICE”

00 00 IN R0, 80H

中的8位数据开关D7~D0输入,存入R0寄存器。

01 10 ADD R0, (0A) (R0)+(0A) R0。R0寄存器的内容与存储器

0A地址单

02 0A

元的内容相加,结果存入R0寄存器。

03 20 STA(0B), R0 R0 (0B)。R0寄存器的内容与存入存储04 0B 器0B地址单元。

OUT BUS,

05 30 (0B) BUS。通过总线输出存储器0B地址

(0B)

单元的内容。

06 0B

07 40 JMP 00

00 PC。无条件转移到00地址。

08 00 0A 01 存储器0A地址单元的数据,可自定。 0B 求和结果保存在存储器0B地址单元。

微指令的微代码如下:(内容是十六进制) 十六进制地十六进制地八进制

八进制地址 内容 内容

址 址 地址 00 00 108101 0D 15 018202

01 01 82ED01 0E 02 02 48C000 0F 03 03 04E000 10 04 04 05B000 11 05 05 06A201 12 06 06 019A95 13 07 07 0DE000 14 08 10 011000 15 09 11 83ED01 16 0A 12 87ED01 17 0B 13 8EED01 18 0C 14 96ED01

(3)修改和编写实验仪RAM和ROM数据。 1.实验结果和数据处理: 实验结果记录表: 题 号 选项 ① ② ③ ④ ⑤ 指令 16

17 20 21 22 23 24 25 26 27 30 0FE000 15A000 92ED01 94ED01 17A000 018001 182000 010A07 81D100 100A07 118A06

⑥ ⑦ 输入指令IN A 80H A A A 加法指令ADD B C A A A B A 传送指令STA A B C A 输出指令OUT B A 无条件跳转指令A A JMP

表4.6: 输入数据 程序RAM中0A地址的内运行结果 容 01 05 06 表4.7: 微地址(八进S3 S2 S1 S0 M Cn WE A B C UA5~UA0 制) A9 A8 06 0 1 1 0 0 0 0 1 1 001 101 000 000001 表4.8: 微地址(十六进制) 内容(六位十六进制微地址指令代码) 06 619A01 表4.9:修改后的机器指令成为程序: 地址 内容 助记符 说明

80H R0。数据80H从实验仪左下方“INPUT DEVICE”

00 00 IN R0, 80H

中的8位数据开关D7~D0输入,存入R0寄存器。

01 10 SUB R0, (0A) (R0)-(0A) R0。R0寄存器的内容与存储器

0A地址单

02 0A

元的内容相减,结果存入R0寄存器。

03 20 STA(0B), R0 R0 (0B)。R0寄存器的内容与存入存储04 0B 器0B地址单元。

OUT BUS,

05 30 (0B) BUS。通过总线输出存储器0B地址

(0B)

单元的内容。

06 0B

07 40 JMP 00

00 PC。无条件转移到00地址。

08 00 0A 01 存储器0A地址单元的数据,可自定。 0B 求和结果保存在存储器0B地址单元。

表4.10: 输入数据 程序RAM中0A地址的内容 减法结果 09 05 04 4、结论

(1)上面程序的运行中,每执行完一条机器指令,微地址都要返回

到01,是因为为取下一条指令作准备。

(2)在每一条机器指令的执行过程中,第一个CPU周期,取指令阶

段是由下列微指令组成:01 02。它们完成的操作是:PC AR,M DR,DR IR,PC+1。 (3)程序运行前必须对微地址清零。拨动实验仪右下角清零开关CLR

(1→0→1)后,观看实验仪右上方的微地址显示灯(UA0-UA5)是否全为零,若全为零,则正确,若不全为零,说明有问题,要检查

(4)微指令控制器控制着运算的操作使运算器有条不紊的工作。 (5)经过实验证明,所有的实验结果与理论值一致。

(6)使用单步微指令运行程序,单击该系统第三行的“单步微指令”图标即可。

5、问题与讨论及实验总结

(1)在每次单步执行一条微指令的过程中,都要观察屏幕动态流线

显示的运行结果,根据屏幕显示的结果分析与该条微指令的格式和功能是否一致。若不一致,必须检查原因。

(2)操作过程中输入数据与显示出来的不一致,这往往是因为线路问题。所以接线时要很小心

这次的实验是个综合性的实验,难度比较大,但是我认真听老师的讲解,并根据预习的信息和通过和同学的相互讨论和交流,还是较快的掌握了相关的操作,掌握了运用CPU运行五条机器指令组成的简单程序,掌握机器指令与微指令的关系,建立利用指令控制整机的输入、输出、运算和存储。通过本次实验,我对基本模型机设计与实现有了进一步的了解,理解它的功能特性和使用方法,对整个模型计算机的程序运行有了更全面的了解。这次实验加强了我的理解能力和实验能力,也更加巩固、完善和深化了我的知识体系。 6.思考题:

(1)上面程序的运行中,为什么每执行完一条机器指令,微地址都要返回到01?取指令阶段是由那些微指令组成?它们完成了什么操作?

答:微地址要返回到01,是应为为取下一条指令作准备。在每一条机器指令的执行过程中,第一个CPU周期,取指令阶段是由下列微指令组成:01 02。它们完成的操作是:PC AR,M DR,DR IR,PC+1。 (2)表4.11: 地内助记符 说明 址 容 00 00 IN R0,X X→R0。数据X从实验仪左下方“INPUT DEVICE”的8位数据开关D7-D0输入,存入R0寄存器。 01 00 IN R1,Y Y→R1。数据Y从实验仪左下方“INPUT DEVICE”的8位数据开关D7-D0输入,存入R1寄存器。 02 0A ADD R0,R1 (R0)+(R1) →R0。R0寄存器的内容与R1寄存器的内容相加,结果存入R0寄存器。 03 20 STA(OB),R0→(OB)。R0寄存器的内容存入存储器OBR0 地址单元。 04 0B 05 30 OUT BUS,(OB)→BUS。通过总线输出存储器OB地址(OB) 单元的内容。 06 0B 07 40 JMP 00 00→PC。无条件转移到00地址。 08 00 0A 10 00 X+Y 表4.12: 输入数据 输出结果 88(十六进制) 89(十六进制)

00是转移地址。 OA是存放加数的地址,OA的内容01是加数。可自定。 求和结果保存在存储器00地址单元。

本文来源:https://www.bwwdw.com/article/nly.html

Top