中断实验报告报告

  • 格式:pdf
  • 大小:141.74 KB
  • 文档页数:5

下载文档原格式

  / 5
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中断试验试验报告

班级:电信1001 姓名:张贵彬学号:201046830213

一、实验目的

1、掌握PC机中断处理系统的基本原理。

2、学会编写中断服务程序。

二、实验原理与内容

1、实验原理

PC机用户可使用的硬件中断只有可屏蔽中断,由8259中断控制器管理。中断控制器用于接收外部的中断请求信号,经过优先级判别等处理后向CPU发出可屏蔽中断请求。IBMPC、PC/XT机内有一片8259中断控制器对外可以提供8个中断源:

中断源中断类型号中断功能

IRQ0 08H 时钟

IRQ1 09H 键盘

IRQ2 0AH 保留

IRQ3 OBH 串行口2

IRQ4 0CH 串行口1

IRQ5 0DH 硬盘

IRQ6 0EH 软盘

IRQ7 0FH 并行打印机

8个中断源的中断请求信号线IRQ0~IRQ7在主机的62线ISA总线插座中可以引出,系统已设定中断请求信号为“边沿触发”,普通结束方式。对于PC/AT及286以上微机内又扩展了一片8259中断控制,IRQ2用于两片8259之间级连,对外可以提供16个中断源:

中断源中断类型号中断功能

IRQ8 070H 实时时钟

IRQ9 071H 用户中断

IRQ10 072H 保留

IRQ11 O73H 保留

IRQ12 074H 保留

IRQ13 075H 协处理器

IRQ14 076H 硬盘

IRQ15 077H 保留

TPC-USB实验板上,固定的接到了3号中断IRQ3上,即进行中断实验时,所用中断类型号为0BH。

2、实验内容

实验电路如图9-1,直接用手动产单脉冲作为中断请求信号(只需连接一根导线)。要求每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt!”,中断10次后程序退出。

三、实验电路图

四、实验流程图是开始

设置中断向量(IRQ3)

允许中断(IRQ3)

设置中断次数计数器

循环等待开始

显示响应中断的提示信息

发出中断结束命令

计数器减1

关闭中断(IRQ3)开中断

返回DOS 为0吗?中断返回

N Y

五、实验程序

data segment

mess db'TPCA interrupt!',0dh,0ah,'$' data ends

code segment

assume cs:code,ds:data

start:

mov ax,cs

mov ds,ax

mov dx,offset int3

mov ax,250bh

int21h

in al,21h

and al,0f7h

out21h,al

mov cx,10

sti

ll: jmp ll

int3:

mov ax,data

mov ds,ax

mov dx,offset mess

mov ah,09

int21h

mov al,20h

out20h,al

loop next

in al,21h

or al,08h

out21h,al

sti

mov ah,4ch

int21h

next: iret

code ends

end start

六、实验结果

七、思考

修改中断服务程序,在屏幕上显示0、1、2、3、,,触发一次,显示一个。data segment

mess db 'TPCA interrupt!',0dh,0ah,'$'

data ends

code segment

assume cs:code,ds:data

start:

mov ax,cs

mov ds,ax

mov dx,offset int3

mov ax,250bh

int 21h

in al,21h

and al,0f7h

out 21h,al

mov cx,10

sti

ll: jmp ll

int3:

mov ax,data

mov ds,ax

mov dx,offset mess mov ah,09

int 21h

mov al,20h

out 20h,al

loop next

in al,21h

or al,08h

out 21h,al

sti

mov ah,4ch

int 21h

next: iret

code ends

end start