中断实例《计算机组成原理课件》
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
;置中断标志位
delay:
jmp delay
4
int7: …………. mov al,20h out 20h,al
………….. 源自文库n al,21h or al,80h out 21h,al
;发出EOI结束中断 ;关闭IR7中断
5
sti mov ah,4ch int 21h next: iret code ends end start
mov ds,ax
3
mov dx,offset 中断子程序
mov al,0fh
;设中断程序的类型号为0fh
mov ah,25h
int 21h
cli
;清中断标志位
in al,21h
;读中断屏蔽寄存器(21H为中断屏
蔽寄存器)
and al,7fh
;开放IRQ7中断(0为开放中断)
out 21h,al
sti
中断程序的编写步骤:
主程序:(1) 设置中断向量 ( DOS调用 AH=25H )
(2) 设置CPU中断允许位
FLAGS中的IF位=1 允许中断 (STI 开中断) =0 禁止中断 (CLI 关中断)
(3) 设置中断屏蔽位
I/O端口 21H 中断屏蔽寄存器 中断屏蔽位=0 允许中断
=1 禁止中断
76 5 4
中断屏蔽寄存器21H
3210
打
键定
印
时
机
盘器
1
中断处理子程序: (1) 保存工作寄存器 (PUSH) (2) 开中断( STI )
(3) 中断处理功能 (4) 关中断( CLI ) (5) 送中断结束命令( EOI ,仅对硬中断) (6) 恢复工作寄存器( POP) (7) 中断返回( IRET )
76 5 4
中断命令寄存器20H
EOI
3210
MOV AL, 20H
OUT 20H, AL
达到结束中断 的作用。 2
中断程序设计: data segment mess db ‘it is',0AH,0DH,'$' data ends code segment assume cs:code,ds:data start: mov ax,seg 中断子程序
;置中断标志位 ;返回DOS
6
7