一、实验目的和要求:
实验目的
计算机控制系统调试程序,实现中断功能,了解中断的工作原理,理解中断过程。
实验要求
1.编写主程序、中断服务子程序,并进行汇编形成机器码程序;
2.单步运行程序,理解程序运行过程中中断的请求、响应、中断服务及返回现象。
二、实验仪器设备(包括软硬件环境、配置):
硬件:pc,存储器,键盘,鼠标,微处理器…
软件:操作系统win10,仿真应用软件
三、实验过程(具体实验内容、步骤和结果):
(一)实验内容
编写主程序、中断服务子程序,调试运行程序。
(二)实验过程
1.编辑汇编源程序
MOV A,#01H
LOOP:
NOP
JMP LOOP
ORG D1H
SUB A,#03
OUT
RETI
- 汇编生成机器代码程序
程序地址 | 机器码 | 反汇编指令 | 指令说明 |
00 | 7C01 | MOV A,#01H | 立即数01H |
02 | E0 | NOP | 空操作 |
03 | AC02 | JMP 02 | 跳转等待中断 |
... | ... | ... | .. |
D1 | 3C03 | SUB A,#03H | 累加器A值减3 |
D3 | C4 | OUT | 数据输出 |
D4 | EC | RETI | 跳出中断,中断返回 |
3.单步运行程序,运行结果:
序号(单步)
PC | ST | A | IR | W | |
1 | 00 | 00 | 00 | 00 | 00 |
2 | 01 | 00 | 01 | 7C | 00 |
3 | 02 | 00 | 01 | 7C | 00 |
4 | 02 | 00 | 01 | AC | 00 |
5 | 03 | 00 | 01 | AC | 00 |
6 | 02 | 00 | 01 | AC | 00 |
7 | D1 | 03 | 01 | B8 | 00 |
8 | D3 | 03 | FE | 3C | 03 |
9 | D4 | 03 | 04 | C4 | 03 |
四、实验分析:
通过此次试验我了解了中断的工作原理是计算技术里中断过程,就是主芯片的外部信号或内部信号,中断了该芯片正在执行的程序,主芯片转而处理由该信号引发的其他程序,结束后再回到中断的“断点”,继续执行原有程序,理解了中断过程;程序结构说明,主程序执行到JMP LOOP暂停,等待中断,按中断建引发中断,执行中断服务程序;中断服务程序保护被中断进程现场(即累加器、寄存器、主程序);然后完成中断服务,恢复现场返回。