《中断实例《计算机组成原理课件》》由会员分享,可在线阅读,更多相关《中断实例《计算机组成原理课件》(7页珍藏版)》请在金锄头文库上搜索。
1、1,中断程序的编写步骤:主程序:(1) 设置中断向量 ( DOS调用 AH=25H )(2) 设置CPU中断允许位FLAGS中的IF位=1 允许中断 (STI 开中断)=0 禁止中断 (CLI 关中断)(3) 设置中断屏蔽位I/O端口 21H 中断屏蔽寄存器中断屏蔽位=0 允许中断=1 禁止中断,2,MOV AL, 20H OUT 20H, AL 达到结束中断的作用。,中断处理子程序: 保存工作寄存器 (PUSH) 开中断( STI ) 中断处理功能 关中断( CLI ) 送中断结束命令( EOI ,仅对硬中断) 恢复工作寄存器( POP) 中断返回( IRET ),3,中断程序设计: dat
2、a segment mess db it is,0AH,0DH,$ data ends code segment assume cs:code,ds:data start: mov ax,seg 中断子程序mov ds,ax,4,mov dx,offset 中断子程序mov al,0fh ;设中断程序的类型号为0fhmov ah,25hint 21hcli ;清中断标志位in al,21h ;读中断屏蔽寄存器(21H为中断屏 蔽寄存器)and al,7fh ;开放IRQ7中断(0为开放中断)out 21h,alsti ;置中断标志位 delay: jmp delay,5,int7: .mov al,20hout 20h,al ;发出EOI结束中断in al,21hor al,80h ;关闭IR7中断out 21h,al,6,sti ;置中断标志位mov ah,4ch ;返回DOSint 21h next: iret code endsend start,7,