《第六章 中断技术.ppt》由会员分享,可在线阅读,更多相关《第六章 中断技术.ppt(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、微型计算机原理微型计算机原理(第六章)第六章)l主讲教师 赖于树lEmail:重庆三峡学院物理电子工程学院重庆三峡学院物理电子工程学院第六章 中断技术本章内容本章内容6.1 中断的基本概念6.2 IBM-PC微机中断系统6.3 可编程中断控制器8259A6.4 8259A在微机系统中的应用6.1 中断的基本概念本章首页本章首页本章首页本章首页1.什么是中断什么是中断外设中断:外设中断:键盘、打印机、显示器等指令中断:指令中断:INT 10H、INT21H等硬件故障中断:硬件故障中断:奇偶错、电源故障等程序性中断:程序性中断:除法溢出、非法操作码等中断:中断:是指CPU在正常运行程序时,由于内部
2、/外部事件或由程序预先安排的事件,引起CPU中断正在运行的程序,转去为该事件服务。服务完毕,再返回去继续运行被暂时中断的程序的过程。中断服务(处理)程序、断点2.中断源与中断识别中断源与中断识别1 1)中断源:)中断源:发出中断请求的外部设备或引起中断的内部原因2 2)中断识别:)中断识别:确定中断源,实现程序转移向量中断:向量中断:中断向量、中断号查询中断:查询中断:软、硬件查询确定中断源3 3)中断向量与中断向量表)中断向量与中断向量表中断向量:中断向量:中断服务程序入口地址,4个字节(偏移地址、段首址)中断向量表:中断向量表:PA=000H3FFH,256个;存储结构(中断号,顺序)6.
3、1 中断的基本概念(续)本章首页本章首页本章首页本章首页4 4)中断类型号与中断向量指针)中断类型号与中断向量指针类型号:类型号:8位,N=00FFH中断向量指针:中断向量指针:PA=4*N5 5)中断向量的装入)中断向量的装入(填写填写)与修改与修改装入:装入:系统配置和使用的系统软件负责CLI CLD MOV AX,0 MOV ES,AX MOV DI,4*N MOV AX,OFFSET INT_SEV STOSW MOV AX,SEG INT_SEV STOSW STI用串操作指令装入用串操作指令装入用系统功能调用装入用系统功能调用装入(参照修改)用用MOVMOV指令装入指令装入设中断类
4、型号为N,服务程序入口为INT_SEVCLI MOV AX,0 MOV ES,AX MOV DI,4*N MOV AX,OFFSET INT_SEV MOV ES:DI,AX MOV AX,SEG INT_SEV MOV ES:DI+2,AX STI;写入偏移地址;写入段首址中断向量的修改中断向量的修改修改方法与步骤修改方法与步骤 保存原中断向量保存原中断向量 INT 21H 的35H号功能设置新中断向量设置新中断向量 INT 21H 的25H号功能恢复原中断向量恢复原中断向量 INT 21H 的25H号功能使用后恢复 6.1 中断的基本概念(续)本章首页本章首页本章首页本章首页 OLD_OF
5、F DW?OLD_SEG DW?s s MOV AH,35H MOV AL,N INT 21H MOV OLD_OFF,BX MOV OLD_SEG,ES CLI MOV AH,25H MOV AL,N PUSH DS MOV DX,SEG INT_SEV MOV DS,DX MOV DX,OFFSET INT_SEV INT 21H POP DS STI s;定义保存原中断向量的2个字单元;保存原中断向量;设置新中断向量s CLI MOV AH,25H MOV AL,N MOV DX,OLD_OFF MOV DS,OLD_SEG INT 21H;恢复原中断向量获取中断向量获取中断向量(功能号
6、AH=35H)入口参数:AL=类型号 出口参数:ES:BX=中断向量设置中断向量设置中断向量(功能号AH=25H)入口参数:AL=类型号 入口参数DS:DX=中断向量 使用的DOS功能调用6 6)中断优先级排队方式)中断优先级排队方式按优先级排队循环轮流排队7 7)中断嵌套)中断嵌套完全嵌套特定完全嵌套6.2 IBM-PC微机中断系统分类:分类:硬中断(外部中断)、软中断(内部中断)1.硬中断硬中断(NMI和INTR)1 1)不可屏蔽中断)不可屏蔽中断NMINMI本章首页本章首页本章首页本章首页随机性随机性中断号中断号IRQ标准应用标准应用02H08H09H0AH70H71H72H73H74H
7、75H76H77H0BH0CH0DH0EH0FHNMI0128910111213141534567奇偶检验错、I/O检测错中断定时器T0中断键盘输入中断接收从片8259A的中断请求实时钟中断改向INT 0AH(以IR2出现)保留保留保留协处理器中断硬磁盘控制器中断保留串行通信(COM2)中断串行通信(COM1)中断打印机(LPT2)中断软磁盘控制器中断打印机(LPT1)中断系统系统硬中硬中断断不可屏蔽:不可屏蔽:不受IF状态影响类型号固定:类型号固定:02H有效信号:有效信号:上升沿 紧急故障处理:紧急故障处理:RAM奇偶校验错、I/O通道校验错、协处理器运算错协处理器INTNMINMI产生逻
8、辑产生逻辑&PCKIO CHCKNMIDQCLRD7写0A0HRESETCPU作用作用6.2 IBM-PC微机中断系统(续)2 2)可屏蔽中断)可屏蔽中断INTRINTR可屏蔽:可屏蔽:IF=1,开放;IF=0,屏蔽类型号由类型号由8259A8259A提供提供(PC机08H0FH)有效信号:有效信号:高电平 INTR的处理过程开中断,接收请求发2个INTA,取得类型号N(PSW)(SP),IF=TF=0(CS)(SP),(4*N+2)CS(IP)(SP),(4*N)IP执行中断服务程序执行IRET时 (SP)(IP),(SP)(CS)(SP)(PSW)继续运行原程序2.软中断软中断1 1)双字
9、节指令形式的中断)双字节指令形式的中断(INT(INT n)n)ROM-BIOSROM-BIOS中断:中断:INT 10H;INT 16HDOSDOS中断:中断:INT 21H;INT 20H未定义中断:未定义中断:INT 60H;INT 78H 2 2)特殊中断)特殊中断除法溢出中断除法溢出中断(N=0)条件:条件:商超出规定寄存器的表示范围;字(AX),字节(AL)单步中断单步中断(N=1)条件:条件:TF=1;调试工具或程序设置断点中断断点中断(N=3)条件:条件:调试工具中使用PUSHF POP AX AND AH,0FEH(OR AH,01H)PUSH AX POPFTF=0TF=1
10、溢出中断溢出中断(N=4)条件:条件:OF=1且执行INTO指令本章首页本章首页本章首页本章首页6.2 IBM-PC微机中断系统(续)3.硬中断与软中断的比较硬中断与软中断的比较本章首页本章首页本章首页本章首页特点特点软中断软中断硬硬中断中断(INTR)(INTR)随机性、突发性随机性、突发性否是中断响应周期中断响应周期无有类型号的提供类型号的提供指令或固定中断 控制器可屏蔽可屏蔽否是NMINMI具有随机具有随机性性,其他特其他特点同软中断点同软中断4.软中断的应用软中断的应用ROM-BIOSROM-BIOS中断中断DOSDOS中断中断5.中断的处理过程中断的处理过程(INTR)不同中断的处理
11、过程区别:获取类型号的方法不同;另,软中断无申请阶段1 1)中断申请)中断申请2 2)中断响应)中断响应3 3)中断服务)中断服务4 4)中断返回)中断返回CPU执行完每条指令检测INTR;高电平,IF=1,且无DMA请求,当前指令执行完进入响应阶段执行中断服务程序执行到IRET恢复断点,返回原程序中断服务程序的结构中断服务程序的结构 保护现场 STI ;若允许中断嵌套 服务程序主体 恢复现场 中断结束(EOI)命令 IRETCPU连续发出2个INTA负脉冲;取得类型号N;保护断点;查表将中断向量赋予IP、CS;进入中断服务程序6.2 IBM-PC微机中断系统(续)本章首页本章首页本章首页本章
12、首页6.中断响应周期中断响应周期及及INTAINTA的作用的作用两个连续中断应答信号两个连续中断应答信号INTAINTA负负脉冲组成一个中断响应周期脉冲组成一个中断响应周期第第1 1个负脉冲:个负脉冲:第第2 2个负脉冲:个负脉冲:CPU:CPU:LOCK=0;8259A:8259A:IRRi=0;ISRi=1CPU:CPU:LOCK=1;ALE=0;8259A:8259A:类型号 CPU 自动结束方式ISRi=0CLKT1T2T3T4T1T2T3T4类型号ALED07INTALOCK6.3 可编程中断控制器8259A1.1.8259A8259A协助协助CPUCPU完成的工作完成的工作接收和扩
13、充外设的中断请求接收和扩充外设的中断请求(一片可管理8级中断;两级级联最多管理64级)优先级排队管理优先级排队管理(固定优先级、循环优先级)控制中断请求的屏蔽与开放控制中断请求的屏蔽与开放提供中断类型号提供中断类型号(向量中断,还可实现查询中断)本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)2.2.8259A8259A的外部特性和内部结构的外部特性和内部结构1 1)引脚)引脚(28脚)D D0 07 7、CSCS、RDRD、WRWRA A0 0:端口选择信号;输入INTINT :8259A的中断申请;输出;高有效;向CPU发出中断申请INTA:INTA:中断响应;输入
14、;接收CPU的中断响应信号,第2个负脉冲中送出类型号面向面向CPUCPU的信号的信号(14)面向外设的信号面向外设的信号(8)IRIR0 07 7:外设的中断申请;输入;触发方式由编程设定面向同类芯片的信号面向同类芯片的信号(4)CASCAS0 03 3:级联信号;双向;主片向从片发送级联代码SP/EN:SP/EN:主从定义/缓冲器方向;双功能;缓冲方式:输出,控制缓冲器传送方向,非缓冲方式:输入,定义主从片,1:主片,0:从片读/写逻辑数据总线缓冲器D0D7A0IORIOW级联/缓冲比较器CS优先级分析器PRCAS0CAS2CAS1SP/EN正在服务寄存器ISR中断请求寄存器ISR控制逻辑中
15、断屏蔽寄存器IMRIR0IR1IR7INTAINT2 2)内部结构)内部结构本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)中断请求寄存器中断请求寄存器(IRR):8位,寄存有请求的中断级,IRi有请求,IRRi=1正在服务寄存器正在服务寄存器(ISR):8位,寄存正在服务的中断级,IRi被响应且未服务完,ISRi=1,ISR可能多位同时为1中断屏蔽寄存器中断屏蔽寄存器(IMR):8位,寄存中断级的屏蔽情况,IMRi=1,IRi被屏蔽优先级分析器优先级分析器(PR):由IRR、IMR、ISR的状态确定INT引脚的输出;优先级编码器+比较电路何时何时中断嵌套中断嵌套INT
16、AB比较器中断屏蔽寄存器IMRIR0IR1IR2IR3IR4IR5IR6IR7中断请求寄存器IRR中断请求优先级编码器1B0B1B2A0A1A2ISR编码器&D1D0D7D5D4D2D3D6工作原理工作原理本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)级联缓冲器级联缓冲器/比较器比较器:级联时传送级联代码;缓冲方式控制传送方向读写控制逻辑读写控制逻辑:中断类型号的读取不是读写逻辑控制的INTAFFDEH0A1H21H读IMR1010FFDCH0A0H20H读IRR,ISR,查询字0010FFDEH0A1H21H写ICW24,OCW11100FFECH0A0H20H写I
17、CW1,OCW230100TP86ATP86A从片从片主片主片读写操作读写操作A A0 0RDRDWRWRCSCS3.3.8259A8259A的工作方式的工作方式1 1)中断触发方式)中断触发方式2 2)连接系统总线的方式)连接系统总线的方式3 3)中断屏蔽的方式)中断屏蔽的方式4 4)优先级排队的方式)优先级排队的方式5 5)中断结束的方式)中断结束的方式 电平触发:高电平 边沿触发:上升沿 向量中断 查询中断 缓冲方式 非缓冲方式SP/ENSP/EN的的作用作用 常规屏蔽:设置IMR 特殊屏蔽:开放低级中断 固定:IR0最高,IR7最低 轮换 自动轮换 指定轮换 用于非嵌用于非嵌套系统套系
18、统 自动结束方式:第2个INTA后沿自动清除ISRi 非自动结束方式:由程序发EOI命令清除ISRi 不指定EOI 指定EOI EOI命令 固定:IR0最高,IR7最低 轮换 自动轮换 指定轮换 自动结束方式:第2个INTA后沿自动清除ISRi 非自动结束方式:由程序发EOI命令清除ISRi 不指定EOI 指定EOI EOI命令本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)4.4.8259A8259A的编程命令及中断操作功能的编程命令及中断操作功能1 1)ICWICW1 14个初始化命令字(ICW14)、3个操作命令字(OCW13);写入到2个端口中同一端口写入多个命
19、令字的区分方式:设置特征位、规定写入顺序1 1LTIMSNGLIC4特征位特征位:16位机无效,一般写0LTIM:LTIM:触发方式,=0,边沿触发;=1,电平触发 SNGL:SNGL:=0,多片级联;=1,单片系统 ICIC4 4:=0,不写入ICW4;=1,要写入ICW4,16位机要写入ICWICW1 1还实现对还实现对8259A8259A的复位的复位如如PCPC机机:边沿触发,单片MOV AL,13H OUT 20H,AL2 2)ICWICW2 2T7T6T5T4T3A00A01如如PCPC机机:类型号08H0FHMOV AL,08H OUT 21H,AL确定中断类型号的高五位 高五位:
20、ICW2的高五位 低三位:IRi的编码 中断类型号(8位)本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)3 3)ICWICW3 3(级联系统才写入,主、从片格式不同)S7S6S5S4S3S2S1S0如图中所示的级联系统如图中所示的级联系统主片的ICW3=24H 从片1的ICW3=02H从片2的ICW3=05HA01ID2ID1ID0的编码=i,该从片挂在主片的IRi上主片:相应的申请端是否挂接从片 0:IRi上无从片 1:IRi上接有从片Si从片:该从片的识别码ID2ID1ID0A01级联方式的硬件连接级联方式的硬件连接级联方式下工作过程级联方式下工作过程IR0从片1
21、从片28259A(主片)INTINTCAS02CAS02SP/ENSP/ENIR2IR5CAS02AIR6SP/EN+5VINTAINTAINTINTAINTRINTAIR1IR7IR4CIR0IR1IR7BD只有只有A A有申请有申请(与单片系统相同)从片1:IRR=00H 从片2:IRR=00H 主片:IRR6=1,INT=1 收到INTA,主片ISR6=1,送IR6的类型号CPUCPU的操作与单片无任何区别的操作与单片无任何区别本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)4 4)ICWICW4 4A A、B B、C C同时申请同时申请 从片1:IRR7=1 从
22、片2:IRR4=1 主片:IRR6、IRR2、IRR5同时为1,INT=1(转发IR2的请求)第第1 1个个INTA INTA 主片ISRISR2 2=1=1并送IR2的级联代码 从片2与自己的识别码比较不同,无操作 从片1:相同,ISRISR7 7=1=1 第第2 2个个INTAINTA 从片1送出IR7的类型号,主片不送A01BUFM/SAEOISFNMPM 0:8位机系统 1:16位机系统PM 0:非自动结束方式 1:自动结束方式AEOI 0:从片 1:主片M/S BUF1有效 0:非缓冲方式 1:缓冲方式BUF 0:一般完全嵌套 1:特定完全嵌套SFNM特定完全嵌套方式特定完全嵌套方式
23、(用于级联系统的主片)送两个送两个EOIEOI命令命令开放同级和高级中断,上例中,主片若采用特定完全嵌套方式,则允许D打断B的服务从片服务从片服务程序中送程序中送EOIEOI的方法的方法给主片送给主片送EOI的条件的条件:从片从片ISR=00H5 5)OCWOCW1 1(设置IMR)M7M6M5M4M3M2M1M0 0:开放IRi 1:屏蔽IRiMiA01如开放如开放IRIR1 1、IR7IR77 7;屏蔽屏蔽IRIR3 3、IR7IR76 6;其他不变其他不变IN AL,21H AND AL,7DH OR AL,48H OUT 21H,AL ;读取IMR本章首页本章首页本章首页本章首页6.3
24、 可编程中断控制器8259A(续)6 6)OCWOCW2 2(设置优先级轮换、发EOI命令)RSLEOI0 00 0L2L1L0A00 优先级固定轮换自动轮换指定轮换 结束方式自动非自动,用EOI命令清ISRi EOI命令不指定:清除ISR中优先级最高位指定:清除ISR中的指定位特征位特征位 0:优先级不轮换 1:优先级轮换R 0:不对ISR操作 1:清除ISRiEOISL=1,L2 L1 L0的编码有效,与R、EOI配合R=1:L2 L1 L0指定的中断级为最低优先级EOI=1:将ISR中L2 L1 L0指定的位清0如如:不指定不指定EOI EOI MOV AL,20H OUT 20H,AL
25、指定指定EOIEOI(清除ISR4)MOV AL,64H OUT 20H,AL2R R、SLSL、EOIEOI的组合就是的组合就是OCWOCW2 2的命令的命令本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)7 7)OCWOCW3 3(设置特定屏蔽方式、查询式中断、读寄存器选择)ESMMSMM0 01 1PRRRISA00ESMM=1,特定屏蔽方式允许 ESMM=1时有效0:清除特定屏蔽方式SMM1:设置特定屏蔽方式P=1,查询式中断RR=1,读寄存器选择有效 RR=1时有效0:IRRRIS:读寄存器选择1:ISR特征位特征位特定屏蔽方式特定屏蔽方式(开放低级中断)设置
26、方法设置方法:用OCW1屏蔽当前中断用OCW3设置特定屏蔽方式清除方法清除方法:用OCW3清除特定屏蔽方式用OCW1开放当前中断设置后一设置后一直有效直有效,直到清除直到清除CLI IN AL,21H OR AL,08H OUT 21H,AL MOV AL,68H OUT 20H,AL STI CLI MOV AL,48H OUT 20H,AL IN AL,21H AND AL,0F7H OUT 21H,AL STI MOV AL,20H OUT 20H,AL RET ;IMR3=1如在如在IRIR3 3服务程序中使用服务程序中使用;特定屏蔽设置;特定屏蔽清除;IMR3=0;EOI命令IRIR
27、0 02 2开放开放IRIR3 37 7关闭关闭IRIR0 02 2、IRIR4 47 7开放开放 IRIR3 3关闭关闭比IR3优先级低的中断的服务程序必须送指定EOINOTEWhy?本章首页本章首页本章首页本章首页6.3 可编程中断控制器8259A(续)查询式中断查询式中断读寄存器读寄存器不需要接收中断请求,CPU查询8259A,发查询命令(P=1的OCW3)后读查询字(A0=0),再根据查询字内容确定中断源I-W2W1W0查询字格式查询字格式I=1时,W2W1W0是当前有请求的优先级最高的中断级编码0:无中断请求I1:有中断请求读查询字读查询字MOV AL,0CH OUT 20H,AL
28、IN AL,20H;查询命令;读查询字每次读查询每次读查询字需重新送字需重新送查询命令查询命令查询命令查询命令令读寄存令读寄存器无效器无效读读IMR:IMR:直接对A0=1端口进行读读读IRRIRR、ISR:ISR:先选择(RR=1的OCW3)再读选择后一直有选择后一直有效效,直到改变直到改变初始为初始为IRRIRR读读IMR:IMR:IN AL,21H读读IRR:IRR:MOV AL,0AH OUT 20H,AL IN AL,20H读读ISR:ISR:MOV AL,0BH OUT 20H,AL IN AL,20H查询方式的应用查询方式的应用:无中断向量表无INTR或INTA信号级联增加到第3
29、层查询方式不查询方式不用送用送ICWICW2 2?本章首页本章首页本章首页本章首页6.4 8259A在微机系统中的应用1.1.8259A8259A编程命令的使用编程命令的使用ICW:ICW:初始化时,按顺序接收24个OCW:工作过程中,动态控制写ICW1写ICW2写ICW4?写ICW3写ICW4级联系统?准备接收中断YNYN初始化流程初始化流程2.2.8259A8259A初始化编程初始化编程早期早期PCPC机机单片系统单片系统端口地址:20H、21H;边沿触发;完全嵌套;固定优先级;非缓冲;中断类型号:08H0FH8259ASP/EN+5VINT日时钟键盘保留串口2串口1硬盘软盘打印机IR1I
30、R0IR2IR3IR4IR5IR6IR7A0CSINTARDWRINTAIORIOWS0S1S2S0S1S2D07D07INTRCPU总线 控制器MOV AL,13H OUT 20H,AL MOV AL,08H OUT 21H,AL MOV AL,01H OUT 21H,AL;ICW1;ICW2;ICW4初始化编程初始化编程本章首页本章首页本章首页本章首页6.4 8259A在微机系统中的应用(续)286286以上以上PCPC机机双片级联系统双片级联系统从片连在主片的IR2上;主从级联信号互连 端口地址,主片:20H、21H;从片:0A0H、0A1H 边沿触发;完全嵌套;固定优先级;非缓冲;中断
31、类型号,主片:08H0FH;从片:70H77HMOV AL,11H OUT 20H,AL MOV AL,08H OUT 21H,AL MOV AL,04H OUT 21H,AL MOV AL,01H OUT 21H,AL初始化编程初始化编程(主)8259A(主)SP/EN+5VINT日时钟键盘串口2串口1并口2软盘并口1IR1IR0IR2IR3IR4IR5IR6IR7A0CSINTARDWRINTAIORIOWS0S1S2S0S1S2D07D07INTRCPU总线 控制器8259A(从)SP/ENINT实时钟INT 0AH保留保留保留硬盘保留IR1IR0IR2IR3IR4IR5IR6IR7A0
32、CSINTARDWRD07IRQ5IRQ7IRQ2IRQ3IRQ4IRQ6IRQ0IRQ1IRQ15IRQ12IRQ14IRQ11IRQ10IRQ8IRQ9IRQ13MOV AL,11H OUT 0A0H,AL MOV AL,70H OUT 0A1H,AL MOV AL,02H OUT 0A1H,AL MOV AL,01H OUT 0A1H,AL初始化编程初始化编程(从)例题例题6.1 可屏蔽中断服务程序可屏蔽中断服务程序n n在PC机中:n n8259A8259A的的IRQ0IRQ0(向量号为向量号为08H08H)中断请求来自中断请求来自定时器定时器82538253,每隔,每隔55ms55m
33、s产生一次定时中断产生一次定时中断n n该例的该例的 08H08H 号中断服务程序将显示一个字符串,号中断服务程序将显示一个字符串,1010次中断共显示次中断共显示1010个字符串个字符串n n用内存单元(用内存单元(共享变量共享变量)在主程序与外部中断)在主程序与外部中断服务程序之间传递参数:服务程序之间传递参数:中断发生的次数中断发生的次数n n显示信息安排在共同的数据段中显示信息安排在共同的数据段中例题例题6.1 可屏蔽中断服务程序可屏蔽中断服务程序s_segs_seg segment stack segment stack db 256 dup(0)db 256 dup(0)s_seg
34、s_seg ends endsd_segd_seg segment segmentintmsgintmsg db it is A 8259A Interrupt db it is A 8259A Interrupt!,0dh,0ah,0!,0dh,0ah,0countercounter db 0db 0d_segd_seg ends endsc_segc_seg segment segment assume assume cs:c_seg,ss:s_seg,ds:d_segcs:c_seg,ss:s_seg,ds:d_segstart:start:movmov ax,d_segax,d_seg
35、 movmov ds,axds,ax movmov es,axes,ax movmov ax,s_segax,s_seg movmov ss,axss,ax movmov ax,3508h ;ax,3508h ;修改中断向量修改中断向量intint 21h 21hpush push bxbx ;保存偏移地址保存偏移地址push push eses ;保存段基地址保存段基地址clipush ds ;保护保护dsmov dx,offset new08h;中断入口地址中断入口地址mov ax,seg new08hmov ds,ax mov ax,2508hint 21hpop ds in al,21
36、h ;读读IMR push ax and al,0feh ;允许允许IRQ0(接接8253)out 21h,al mov counter,0 ;设置中断次数初值设置中断次数初值 sti ;开中断开中断start1:cmp counter,10 jb start1 ;中断中断10次退出次退出 clipop axout 21h,al pop dspop dxmov ax,2508hint 21hstimov ax,4c00hint 21h例题例题6.1 可屏蔽中断服务程序可屏蔽中断服务程序new08hnew08h proc procstisti ;开中断开中断push axpush ax ;保护寄
37、存器保护寄存器push push bxbxpush push dsds assume assume ds:d_segds:d_segmovmov ax,d_segax,d_seg movmov ds,axds,ax;设置数据段设置数据段DSDS inc counter inc countermovmov si,offsetsi,offset intmsgintmsg;显示信息显示信息call call dpstridpstri movmov al,20h ;al,20h ;送中断结束字送中断结束字out 20h,alout 20h,alpop pop dsds ;恢复寄存器恢复寄存器pop p
38、op bxbxpop axpop axiretiret ;中断返回中断返回new08hnew08h endpendpdpstri proc ;显示字符串子程序显示字符串子程序 push axpush bxdps1:lodsb ;取一字符取一字符cmp al,0 ;判是否结束标志判是否结束标志jz dps2 mov bx,0mov ah,0ehint 10hjmp dps1dps2:pop bxpop axretdpstriendpc_seg ends end start本章首页本章首页本章首页本章首页本章要点本章要点中断、中断向量、向量表的结构、类型号与中断向量的关系中断、中断向量、向量表的结构、类型号与中断向量的关系修改中断向量的方法和步骤修改中断向量的方法和步骤PCPC机中断系统的组成;软中断中几种特殊中断产生的条件机中断系统的组成;软中断中几种特殊中断产生的条件硬中断与软中断的区别硬中断与软中断的区别中断的处理过程;中断响应周期中中断的处理过程;中断响应周期中CPUCPU与与8259A8259A的操作的操作8259A8259A的主要特性的主要特性8259A8259A写入命令字的区分方式;各编程命令的功能写入命令字的区分方式;各编程命令的功能8259A8259A级联方式下的工作过程级联方式下的工作过程8259A8259A的初始化编程的初始化编程