教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 互联网资料 >

计算机组成原理实验报告(6)

来源:网络收集 时间:2026-09-15
导读: 若干扩展指令的执行周期微程序 指令 微地址 EI 58H DI 59H IRET 67H 68H SP->AR SP+1->SP MEM->STR CC# INTOLD# 23H 0011 0000 001 000 00H 1110 0000 100 011 DI 30H 0011 0000 100 000 EI 30H 0011 0000 100 000

若干扩展指令的执行周期微程序

指令 微地址 EI 58H DI 59H IRET 67H 68H SP->AR SP+1->SP MEM->STR CC# INTOLD# 23H 0011 0000 001 000 00H 1110 0000 100 011 DI 30H 0011 0000 100 000 EI 30H 0011 0000 100 000 001 000 001 000 010 000 001 000 0000 0000 010 000 100 000 0100 0100 000 001 011 000 0000 0000 000 000 111 000 0000 0000 000 000 110 000 操作功能 下址 CI3~0 SCC3~0 MRW I2~0 I8~3 B口 A口 SST SSH\\SC DC2 DC1 ②设定工作方式

中断实验中的程序执行控制由微程序控制实现,因此,功能开关状态设定为00010,即联机方式下,采用微程序控制器连续运行程序。

③编写显示子程序

本实验中需要通过中断服务程序中的字符显示来查看中断执行情况,字符显示时仍然采用程序查询方式。因此,将各程序段中所需的显示代码作为单独子程序。

该显示子程序保存于2200H单元,代码如下: >A 2200 按回车键

2200:PUSH R0 保护待显示字符所在的寄存器R0 2201:IN 81 查询接口状态,判断字符输出是否完成 2202:SHR R0

2203:JRNC 2201 未完成,则循环等待

2204:POP R0 显示完成,则恢复寄存器,R0出栈 2205:OUT 80 输出R0的值 2206:RET

④编写中断服务程序

P1中断服务程序段入口为2420H,代码如下: 2420:PUSH R0 R0进栈 2421:PUSH R3 R3进栈

2422:MVRD R3,31 将显示字符‘!’的ASCII码送进寄存器R3 2424:JR 2450

P2中断服务程序段入口为2430H,代码如下: 2430:PUSH R0 R0进栈 2431:PUSH R3 R3进栈

2432:MVRD R3,32 将字符‘2’的ASCII码送到寄存器R3 2434:JR 2450

P3中断服务程序段入口为2440H,代码如下: 2440:PUSH R0 R0进栈 2441:PUSH R3 R3进栈

2442:MVRD R3,33 将字符‘3’的ASCII码送到寄存器R3 2444:JR 2450

以上三段代码在完成入口参数设置后,均转入2450单元中执行,该地址中保存中断服务程序的功能代码,具体如下:

>E 2450 按回车键 2450:6E00

2451:MVRD R0,42 将字符‘B’赋值给R0,B即Begin的缩写 2453:CALA 2200 调用子程序,完成显示

2455:MVRD R0,49 将字符‘I’赋值给R0,Interrupt的缩写 2457:CALA 2200 调用子程序,完成显示

2459:MVRR R0,R3 将要显示的字符——R3的内容送到R0 245A:CALA 2200 调用子程序,完成显示 245C:IN 81 判断键盘上是否按了一个键 245D:SHR R0 即串口是否有输入字符 245E:SHR R0

245F:JRNC 245C 若没有等待

2460:IN 80 输入字符到R0,实际读入该字符没有用处 2461:MVRD R0,0045 将字符‘E’赋值给R0,E即End的缩写 2463:CALA 2200 调用子程序,完成显示

2465:MVRD R0,0049 将字符‘I’赋值给R0,Interrupt的缩写 2467:CALA 2200 调用子程序,完成显示 2469:MVRR R0,R3 将R3内容送到R0 246A:CALA 2200 调用子程序,完成显示 246C:POP R3 R3出栈 246D:POP R0 R0出栈 >E 246E 按回车键 246E:0000:EF00

⑤填写中断向量:根据系统的硬件连接,P1,P2,P3的中断向量地址分别为

2404H,2408H和240Ch,这三个地址中应写入一下三条指令:

A 2404 按回车键 2404:JR 2420 A 2408 按回车键 2408:JR 2430 A 240C 按回车键 240C:JR 2440

⑥编写主程序

主程序应开中断,等待中断请求的到来,并同时循环显示字符‘6’。主程序存放于2000H中,代码如下:

>E 2000 按回车键 2000:6E00 >A 2001 按回车键

2001:MVRD R0,0036 将字符‘6’的ASCII码送到寄存器R0 2003:CALA 2200 输出该字符 2005:MVRD R0,4000 延时子程序 2007:DEC R0 2008:JRN2 2007

2009:JR 2001 跳到2001循环执行该程序

200A:RET 200C:按回车键

⑦运行主程序,等待响应中断

在监控状态命令行,使用G命令执行主程序:>G 2000 按回车键 a.无中断请求

在没有任何中断请求时,主程序的运行结果是:在屏幕上连续显示字符‘6’。 b.单级中断

主程序运行过程中,按下P1按键,则进入P1的中断服务程序,屏幕上会中断字符‘6’的显示,显示字符串‘B11’,然后等待按键,屏幕上状态无变化。

此时,按下P2按键,则中断P1的服务程序,执行P2的中断服务程序,屏幕上显示字符串‘B12’,等待按键。再按下P3键,再次发生中断嵌套,屏幕上显示字符串‘B13’,等待按键。 5、 实验结果及总结

按照实验要求,输入相关操作命令后,在无中断请求的情况下,屏幕上连续地显示字符‘6’,如果,在主程序运行过程中,按下P1按键,则进入P1的中断服务程序,屏幕上会中断字符‘6’的显示,显示字符串‘BI1’,然后等待按键,屏幕上无变化。

通过本次实验,使我了解到了中断实验的相关操作命令和中断工作的原理及处理过程,也掌握了中断产生、中断响应和中断处理等技术。

实验八 中断实验(二)

1、 实验目的

①加深理解计算机体系中断工作的原理及处理过程。 ②学习和掌握中断的产生、中断响应、中断处理等技术。

③实现主程序的控制功能:在屏幕上循环显示数字字符“6”,并可随时接受

中断请求。

④了解中断服务的功能。

2、 实验要求

①在实验前,应该先做好相关的预习工作,理解TEC-XP教学机的中断实现

原理。

②熟悉TEC-XP教学机的指令系统,能够编写完成中断功能的汇编程序。 ③在实验过程中,应该认真按照实验要求,正确写入相关的操作命令。 ④编写主程序和三个中断服务程序,并在主程序执行过程中按下按键产生中断请

求,观察中断服务和现象。 3、 实验原理

TEC-XP教学机中提供给用的外部中断源有三个,由教学机面板右下方的是哪个无锁按键作为其硬件中断源,从右到左依次简称为P1,P2,P3中断源。TEC-XP在响应这三个中断源的中断请求时,采用的是向量地址转移法,即中断的请求可通过硬件电路产生一个硬件地址,在该地址中存放一条转移指令,执行该指令即可转入对应的中断服务程序。

P1,P2,P3的中断向量地址由TEC-XP的内部结构确定,分别为2420H、2430H、2440H,用户中断使用时,应在对应地址中写入转移指令,从而转向用户自定义的中断服务程序。 4、 实验步骤

①设定工作方式

中断实验中的程序执行控制由微程序控制实现,因此,功能开关状态设定为00010,即联机方式下,采用微程序控制器连续运行程序。

②编写显示子程序

本实验中需要通过中断服务程序中的字符显示来查看中断执行情况,字符显

…… 此处隐藏:1622字,全部文档内容请下载后查看。喜欢就下载吧 ……
计算机组成原理实验报告(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/445958.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)