深圳大学:中断实验演示与操作系统模拟

需积分: 0 8 下载量 108 浏览量 更新于2024-08-04 收藏 3.16MB DOCX 举报
本篇文档是深圳大学计算机科学与技术专业的计算机系统1课程的实验报告,主题为"中断实验"。实验旨在让学生理解并实践中断处理在计算机系统中的作用,特别是如何通过中断来实现输入输出操作对程序执行的暂停和恢复。实验使用LC-3这种特定的处理器进行操作。 实验内容分为两部分:用户程序和键盘中断处理程序。用户程序设计为间隔性输出字符串"ICS",通过嵌套一个延时子程序DELAY,确保输出节奏适中。程序中包含了计数代码,每当计数器从2500递减到0时,才会输出一行。这个延迟子程序利用了存储寄存器和循环结构来实现计时功能。 键盘中断处理程序是实验的核心部分,它接收用户按下回车键(ASCII码0A)前的输入,并将其重复打印10次。在LC-3环境下,由于缺乏操作系统支持,学生需要手动处理中断上下文的保存和恢复,包括使用DSR(数据存储器寄存器)进行字符读取,以及管理寄存器状态,确保在中断处理结束后能正确地返回用户程序。 在没有操作系统的情况下,实验要求学生模拟操作系统的行为。首先,他们需要在用户程序中初始化R6寄存器为X3000,表示栈为空,因为在中断发生前通常操作系统会自动保存这些信息。其次,学生需要创建一个中断向量表,将键盘中断处理程序的地址存储其中,初始地址设为X01。这表明他们需要编写和配置中断服务程序,并理解中断向量表在硬件和软件交互中的作用。 整个实验不仅考察了学生的汇编语言编程能力,还涉及了中断处理机制、程序控制流管理和系统级编程的基本概念,对学生深入理解计算机系统内部的工作原理具有重要意义。提交报告的时间限制在实验后两天内,体现了学习过程中的实践性和紧迫性。