计算机组成原理实验报告Word格式.docx

上传人:b****6 文档编号:17630985 上传时间:2022-12-07 格式:DOCX 页数:12 大小:22.59KB
下载 相关 举报
计算机组成原理实验报告Word格式.docx_第1页
第1页 / 共12页
计算机组成原理实验报告Word格式.docx_第2页
第2页 / 共12页
计算机组成原理实验报告Word格式.docx_第3页
第3页 / 共12页
计算机组成原理实验报告Word格式.docx_第4页
第4页 / 共12页
计算机组成原理实验报告Word格式.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

计算机组成原理实验报告Word格式.docx

《计算机组成原理实验报告Word格式.docx》由会员分享,可在线阅读,更多相关《计算机组成原理实验报告Word格式.docx(12页珍藏版)》请在冰豆网上搜索。

计算机组成原理实验报告Word格式.docx

的程序,遇到其它字符结束输入过程。

<

1>

在命令行提示符状态下输入:

A2040↙

屏幕将显示:

2040:

从地址2040H开始输入下列程序:

(2040)MVRDR2,0030;

用于判数字符的下界值

MVRDR3,0039;

用于判数字符的上界值

MVRDR6,0041;

MVRDR7,005A;

IN81;

判键盘上是否按了一个键,

SHRR0;

即串行口是否有了输入的字符

SHRR0

JRNC2048;

没有输入则循环测试

MVRDR1,00FF

ANDR0,R1;

清零R0的高位字节内容

CMPR0,R2;

判输入字符≥字符'

JRNC205B;

为否,则转到程序结束处

CMPR7,R0;

JRNC2058;

CMPR0,R3

JRNC2058

CMPR0,R6

JRNC205B

OUT80;

输出刚输入的数字符

JMPA2048;

转去程序前边2048处等待输入下一个字符

RET

2.用A命令来键入键盘上接收字符并显示(关键语句)

In81;

判断键盘上是否按了一个键

In80;

接收该字符

Out80;

在屏幕上显示该字符

SHRR0;

串行口是否有3输入的字符

G2000;

运行程序,用户在光标处输入字符

3.用次数控制在终端屏幕上输入“0”到“9”十个字符。

(关键语句)

MVRDR2;

000A;

送入输出字符个数

DECR2;

输出字符数目减1

JRZ202E;

判10个字符是否输出完成,若完则结束。

心得体会:

1.通过A命令来编写代码,学习并使用了IN80和Out81来接收字符,显示字符并用G命令运行程序,更深入了解了执行命令和单步运行命令。

2.用次数控制输入输出可通过固定总数目以及循环终止条件等,学习了循环输入输出的具体内容,对指令系统深入了解。

3.对思考题的证明。

把“In81;

JRNC2028”三个语句换成4个“MVRDR0,R0”语句,程序执行和输入速度发生变化,但最终仍会显示十个数字,原因是:

逐步判断输入,在修改程序后,程序执行速度快,但输出速度慢。

 

实验2存储器部件实验

通过看懂教学计算机中已经使用的几个存储器芯片的逻辑连接关系和用于完成存储器容量扩展的几个存储器芯片的布线安排,在教学计算机上设计、实现并调试出存储器容量扩展的实验内容。

其最终要达到的目的是:

1.深入理解计算机内存储器的功能、组成知识;

2.深入地学懂静态存储器芯片的读写原理和用他们组成教学计算机存储器系统的方法(即

字、位扩展技术),控制其运行的方式;

思考并对比静态和动态存储器芯片在特性和使用场合等方面的同异之处。

1.要完成存储器容量扩展的教学实验,需为扩展存储器选择一个地址,并注意读写和OE等控制信号的正确状态;

2.用监控程序的D、E命令对存储器进行读写,比较RAM(6116)、EEPROM(28系列芯片)EPROM(27系列芯片)在读写上的异同;

3.用监控程序的A命令编写一段程序,对RAM(6116)进行读写,用D命令查看结果是否正确;

4.用监控程序的A命令编写一段程序,对扩展存储器EEPROM(28系列芯片)进行读写,用D命令查看结果是否正确;

如不正确,分析原因,改写程序,重新运行;

1.检查扩展芯片插座的下方的插针要按下列要求短接:

标有“/MWR”“RD”的插针左边两个短接,标有“/MRD”“GND”的插针右边两个短接。

2.RAM(6116)支持即时读写,可直接用A、E命令向扩展的存储器输入程序或改变内存单元的值。

RAM中的内容在断电后会消失,重新启动实验机后会发现内存单元的值发生了改变。

在5000H~500FH单元中依次写入数据0000H、0001H、...000FH。

从2000H单元开始输入主程序:

MVRDR0,0000

MVRDR2,0010;

R2记录循环次数

MVRDR3,5000;

R3的内容为16位内存地址

STRR[R3],R0;

将R0寄存器的内容放到R3给出的内存单元中

CALA2200;

调用程序地址为2200的延时子程序

INCR0;

R0加1

INCR3;

R3加1

DECR2;

R2减1

JRNZ2006;

R2不为0跳转到2006H

RET

从2200H单元开始输入延时子程序:

PUSHR3

MVRDR3,FFFF

DECR3

JRNZ2203

POPR3

1.RAM内存单元的值,断电后会改变。

在使用RAM时,每次断电重启后都要重新输入程序修改内存单元的值。

2.EPROM芯片,断电重启后,用D命令查看内存单元内容,发现数值未改变。

A命令适用于单字节写入,与E命令有差异。

实验3I/O口扩展实验

学习串行口的正确设置与使用。

1.为扩展I/O口选择一个地址,即将与COM2口相连的8251的/CS与标有I/O/CS的一排插孔中的一个相连;

2.将COM2口与终端或另一台运行有PCEC16的PC机的串口相连;

3.用监控程序的A命令,编写一段小程序,先初始化COM2口,在向COM2口发送一些字符,也可从COM2口接收一些字符,或实现两个串口的通信;

1.为扩展I/O口选择一个地址:

将与COM2口相连的8251的/CS与标有I/O/CS的插孔中地址为A0~AF的一个相连;

2.将教学机COM1口与一台PC机相连,在PC机上启动PCEC16.EXE;

3.断开COM1与PC的串口线,将其连接到另一台PC机或同一台PC的另一个串口,同样启动PCEC16.EXE;

4.用另一根串口线将COM2口和第一台PC或同一台PC的另一个串口相连;

5.在与COM1相连的PCEC上输入程序,这是主PCEC可以输入输出,和COM2连接的是从PCEC只作输出;

6.用A、E命令编程进行COM2口的操作。

1)程序1:

COM2口初始化

从2000H单元开始输入下面的程序

2000:

MVRDR0,004E;

给R0赋值004E

2002:

OUTA1;

将R0的值输出到COM2口的8251中的寄存器中

2003:

MVRDR0,0037;

给R0赋值0037

2005:

2006:

2)程序2:

从COM2口输入数据,然后在与COM1口相连的PC上显示出数据。

从2040H单元开始输入下面的程序

INA1;

2041:

SHRR0;

2042:

SHRR0

2043:

JRNC2040;

2044:

INA0;

从COM2口读入字符到R0

2045:

OUT80;

将该字符从COM1口输出

2046:

3)程序3:

从COM1口接收数据,发送到与COM2口相连的PC机上回显。

从2060H单元开始输入下面的程序

IN81;

判键盘上是否按了一个键,

2061:

即串行口是否有了输入的字符

2062:

2063:

JRNC2060;

没有,则循环等待

2064:

IN80;

接收字符

2065:

OUTA0;

将从键盘输入的字符输出到另一串口。

2066:

1.在进行实验箱与两台PC机连接时,由于设备及配置环境的不熟悉等原因,导致连接不成功。

设置属性中的解决类似问题。

2.每次按下“RESET”键后,需在对COM2进行读写操作前,都会进行初始化操作。

3.本次实验的主要困难时两台PC机与实验箱的联机,需要多加熟悉和操作才能掌握。

实验4中断实验

学习和掌握中断产生、响应、处理等技术。

1.扩展中断隐指令,为中断隐指令分配节拍。

中断隐指令用到12个节拍,为了和一般指令相区别,应将其节拍T3设计为1。

注意:

在扩展中断隐指令时要用到DC1、DC2的译码信号。

2.扩展开中断指令EI、关中断指令DI、中断返回指令IRET。

3.确定中断向量表地址。

中断向量的高12位由开关确定为(001001000000)。

三级中断对应的中断向量为2404H、2408H、240CH。

当有中断请求且被响应后,将执行存放在该中断的中断向量所指向的内存区的指令。

3.填写中断向量表。

在上述的2404H、2408H、240CH地址写入三条JR转移指令,JR指令的OFFSET是偏移量,其值是要转向的地址的值减去该条转移指令的下一条指令的地址的值得到的,该值的范围在-128~+127之间。

但在PCEC16中输入时,用户不需要计算偏移量,直接输入要转向的绝对地址即可。

4.编写中断服务程序。

中断服务程序可以放在中断向量表之后,中断服务程序可实现在程序正常运行时在计算机屏幕上显示与优先级相对应的不同字符。

5.写主程序。

可编写一死循环程序,要求先开中断。

1.扩展中断隐指令和开、关中断指令、中断返回指令,为他们分配节拍并给出各节拍对应的控制信号。

2.任意选择几条指令观察指令执行及转中断执行的节拍和各节拍对应的控制信号.

置控制开关为11110(单步、手动置指令、组合逻辑、联机、16位)。

3.填写中断向量表。

4.编写中断服务程序。

5.输入子程序,编写主程序。

6.运行主程序。

从2404H单元开始输入下面的程序

(2404)JR2420;

跳转到中断服务程序

(2408)JR2430;

(240C)JR2440;

用A、E命令从2420H单元开始输入下面的程序(标有*的语句表示要用E命令输入)

2420:

PUSHR0;

R0进栈

2421:

PUSHR3;

R3进栈

2422:

MVRDR3,31;

将字符‘1’的ASCII码送寄存器R3

2424:

JR2450

2430:

2431:

2432:

MVRDR3,32;

将字符‘2’的ASCII码送寄存器R3

2434:

2440:

2441:

2442:

MVRDR3,33;

将字符‘3’的ASCII码送寄存器R3

2444:

*2450:

EI;

开中断(指令编码:

6E00)

2451:

MVRDR0,0042;

将字符“B”赋值给R0,B即Begin的缩写。

2453:

调用子程序,完成显示

2455:

MVRDR0,0049;

将字符“I”赋值给R0,I即Interrupt的缩写。

2457:

2459:

MVRRR0,R3;

将R3的内容送R1

245A:

245C:

判键盘上是否按了一个键

245D:

即串口是否有了输入字符

245E:

245F:

JRNC245C;

若没有,等待

2460:

输入字符到R0

2461:

MVRDR0,0045;

将字符“E”赋值给R0,E即End的缩写。

2463:

2465:

将字符“I”赋值给R0,I即Interrupt的缩写

2467:

2469:

246A:

246C:

POPR3;

R3出栈

246D:

POPR0;

R0出栈

*246E:

IRET;

中断返回

用A命令从2200H单元开始输入下面的子程序

2200:

2201:

查询接口状态,判字符输出完成否

2202:

2203:

JRNC2201;

未完,循环等待

2204:

2205:

输出R0的值

2206:

编写主程序:

从地址2000H开始输入下列程序:

*2000:

EI

2001:

MVRDR0,0036;

将字符‘6’的ASCII码送寄存器R0

2003:

输出该字符

2005:

MVRDR0,4000;

延时子程序

2007:

DECR0

2008:

JRNZ2007

2009:

JR2001;

跳到2001循环执行该程序

200A:

1.当屏幕连续显示“6”时,按下不同级别的中断按钮,都可以不同程度地中断显示,其中1,2级中断后,可再次显示,最高级中断后不可再次显示“6”。

2.中断存在一定的优先级,最高级中断会彻底中断程序运行,同时,低级中断不会影响高级中断。

3.中断优先级有广泛应用,要通过操作和实践充分理解中断。

实验5脱机运算器实验

深入了解AM2901运算器的功能与具体用法,4片AM2901的级连方式,深化运算器部件的组成、设计、控制与使用等诸项知识。

实验说明:

脱机运算器实验:

是指让运算器从教学计算机的整机中脱离出来,此时,它的全部控制与操作均需通过两个12位的微型开关来完成,这就谈不上执行指令,只能通过开关、按键控制教学机的运算器完成指定的运算功能,并通过指示灯观察运算结果。

一.12位微型开关的具体控制功能分配如下:

A口、B口地址:

送给AM2901器件用于选择源与目的操作数的寄存器编号;

I8-I0:

选择操作数来源、运算操作功能、选择操作数处理结果和运算器输出内容的3组3位

的控制码;

SCi、SSH和SST:

用于确定运算器最低位的进位输入、移位信号的入/出和怎样处理AM2901产生的状态标志位的结果。

1.将教学机左下方的5个拨动开关置为1XX00(单步、16位、脱机);

先按一下“RESET”

按键,再按一下“START”按键,进行初始化。

2.接下来,按下表所列的操作在机器上进行运算器脱机实验,将结果填入表中:

其中D1取

为0101H,D2取为1010H;

通过3个12位的红色微型开关向运算器提供控制信号,通过16位数据开关向运算器提供数据,通过指示灯观察运算结果以及状态标志。

实验结果:

运算

I8-I0

SST

SSH

SCi

B

A

压START前

压START后

ALU

CZVS

输出

*D1+0->

R0

011000111

001

00

0000

不用

0101

随机

*D2+0->

R1

0001

1010

R0+R1->

011000001

1111

2121

RO-R1->

011001001

01

F0F1

1000

R1-R0->

0F0F

0E0E

R0∨R1->

011011001

R0∧R1->

011100001

R1->

011110001

(R0

R1)->

011111001

FEFE

1001

2*R0->

111000011

FDFC

R0/2->

101000011

7EFE

1.通过这次实验,了解了AM2901运算器的功能与具体用法,以及4片AM2901的级连方式,深化运算器部件的组成、设计、控制与使用等诸项知识。

2.通过本次实验,明白了当运算器从教学计算机的整机中脱离出来时,它的全部控制与操作是由两个12位的微型开关来完成的,而不是用执行指令,而是通过开关、按键控制教学机的运算器完成指定的运算功能,并通过指示灯来观察运算结果。

3.在做本次实验的过程中,发现实验结果与课本上实验结果有出入,上面表格中为修改后的正确实验结果。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1