




已阅读5页,还剩73页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理与接口技术 第7章中断技术 主编 周国运机械工业出版社2011 9 本章内容7 1中断基本概念7 2微机中断系统7 3微机中断处理7 4可编程中断控制器8259A7 5中断应用举例 本章以现代微机为对象 讲述中断概念 微机中断系统 中断过程 中断控制器8259A 以及中断的应用 通过本章学习 为理解中断在各种外设中的作用 以及掌握中断在各种微机系统中应用打下基础 7 1中断基本概念 一 中断和断点中断是一种过程 指CPU正常执行的程序被某种临时发生的事件所打断 当前程序暂时停止执行 CPU转去处理所发生的事件 处理完毕再返回继续执行暂时停止的程序 这一过程称为中断 二 中断源和中断类型码三 中断优先级和中断嵌套四 中断服务程序和中断向量 中断请求 中断服务程序 中断前的程序 中断后的程序 断点 7 2微机中断系统 微机中断系统的演变 一是中断系统的结构有较大的变化 使中断能够适用于多CPU 二是中断响应过程中寻找中断服务程序的方法不同 使其适用于虚拟地址 分页方式的存储器管理模式 三是中断源增加了新的内容 就是异常中断 四是增加了外中断 硬中断 的数量 由原来的8个 15个增加到了24个 32个或更多 7 2 1微机中断系统结构 一 早期微机中断系统结构 外中断请求 非屏蔽中断 CPU 指令中断 异常中断 CPU中断逻辑 故障 陷阱 中止 8259A 主片 8259A 从片 可屏蔽中断 外中断请求 7 2微机中断系统 二 现代微机中断系统结构 7 2 2微机中断分类 在80 x86系列微机系统中 最多可以达到256个中断 中断类型 中断号 为0 255 综合考虑中断源的空间位置和随机性 把中断分成三类 外部中断指令中断异常中断这三种中断具有明显的区别 7 2微机中断系统 一 外部中断外部中断也称为硬件中断外中断包括非屏蔽中断NMI和可屏蔽中断INTR非屏蔽中断NMI不受CPU标志寄存器的控制 CPU指定NMI的类型是2 可屏蔽中断INTR受CPU标志寄存器中断允许位IF的控制 可屏蔽中断INTR输入端用于接受所有外设中断的请求 外部中断的发生与外部设备的行为有关 与CPU所运行的程序没有关系 外部中断是随机的 7 2微机中断系统 二 指令中断使用中断指令 INTn 实现 n是中断类型 如INT21H INT16H 各种DOS功能调用 CPU保留的指令中断 类型3 断点中断 执行INT3或INT 类型4 溢出中断 执行INT4或INTO 类型5 检查数组下标超限中断 指令中断有以下特点 不具有随机性 而是主动调用中断服务程序 中断类型号是指令中给出的或隐含的 不受处理器标志寄存器的控制 7 2微机中断系统 三 异常中断CPU在执行指令的过程中 出现错误或其它不正常情况称为异常 分成三种 故障 陷阱和中止 1 故障 fault 异常故障是出现在指令完成之前的异常 并且认为故障一般是可以排除的 故障主要包括触发错误 无效操作码 段不存在 堆栈异常 一般型保护错误及页面出错等 2 陷阱 trap 异常陷阱是在指令完成之后出现的异常 如单步运行 7 2微机中断系统 3 中止 abort 异常中止是由系统硬件故障 系统信息表中的非法数据或数据的不一致性产生的 4 异常中断的特点异常中断具有以下特点 虽然异常中断与所执行的指令有关 但也是随机性的 除了单步中断以外 异常中断类型号是由Intel公司分配确定的 异常中断不受处理器标志寄存器的控制 7 2 3微机中断源 随着微机技术的发展 微机中断的内容 处理的方法 采用的技术都发生了变化 本节介绍微机中断内容的发展变化 主要介绍 PC XT微机的中断高档微机的中断早期微机的外部中断现代微机的外部中断 7 2微机中断系统 一 PC XT微机中断表7 1给出了PC XT微机 包括PC微机 用8088CPU 所管理的中断源 对应的中断号 中断类型和产生中断的条件 7 2微机中断系统 二 高档微机中断表7 2给出了高档微机 80386及以上 所使用的中断源 对应的中断号 中断类型和产生中断的条件 表中给出的是保护模式和虚拟86模式的中断源 7 2微机中断系统 7 2微机中断系统 三 早期微机的外中断表7 3给出了从PC XT到Pentium微机中的外中断源 中断号 以及所连接的8259A 这些中断均由可编程中断控制器8259A管理 7 2微机中断系统 四 现代微机的外中断表7 4给出了现代微机 PentiumII之后 系统中的外中断源 使用高级可编程中断控制器管理外中断 可管理24个或者更多的I O中断 7 3微机中断处理 本节讨论中断过程 包括中断请求 中断响应 中断处理和中断返回4个阶段中断服务程序的调用过程 包括实地址模式和虚拟模式下的调用过程 7 3 1微机中断过程 微机中断过程分为4个阶段 中断请求 中断响应 中断处理和中断返回 中断返回对程序员来说很简单 不再讨论 因此 也经常说中断过程分为三个阶段 中断请求中断响应中断处理 7 3微机中断处理 一 中断请求一个中断的开始源于中断源的请求 不同类型的中断 中断请求的方式不一样 外中断 由设备主动发出了中断请求信号 指令中断 源于执行了INTn指令 异常中断 是由于CPU在运行过程中出现了各种各样的错误 由此而引起异常中断 7 3微机中断处理 二 中断响应1 外中断响应条件 1 可屏蔽外中断的响应条件 没有遇到更高级的可屏蔽中断请求 CPU不是正在执行更高级的中断 且APIC或PIC未向CPU发出中断请求 CPU处于中断允许状态 未遇到总线请求和比可屏蔽中断更高的中断请求 当前指令执行结束 2 非屏蔽中断的响应条件 未遇到总线请求和比本中断更高级的中断请求 当前指令执行结束 7 3微机中断处理 2 中断响应过程 CPU获取中断类型码 即中断号 指令中断 中断号包含在指令中异常中断和非屏蔽中断 中断号由CPU给出可屏蔽中断 中断号由PIC或APIC给出 标志寄存器进栈 断点进栈 对标志寄存器中的IF和TF清0 根据中断号 通过查中断向量表或中断描述符表 找到对应的中断向量 即中断服务程序的入口地址 段地址和偏移地址 装入CS和IP EIP中 使CPU转去执行中断服务程序 7 3微机中断处理 三 中断处理中断处理过程就是执行中断服务程序 不同的中断类型 不同的中断对象 所处理的具体内容不一样 但中断服务程序有相同的结构 如右图所示 7 3 2中断服务程序的调用过程 现代微机有 实地址模式 保护模式和虚拟86模式 三种工作模式 虚拟86模式是在保护模式下的一种8086模拟 相当于保护模式下的一个任务 使现代微机能够运行早期的8086软件 实地址模式是以8086的机制工作 使高档微机以一个高级的8086CPU进行工作 下面分别讨论8086微机 实地址模式和保护模式三种情况在中断时 如何通过中断类型码转入中断服务程序 7 3微机中断处理 一 8086转入中断服务程序的过程1 中断向量表每个中断向量占4个字节 CPU最多管理256个中断 总共占1024个字节 即1KB 2 设置中断向量对n号中断 中断向量在表中位置 段地址为0 偏移地址为n 4 先写中断向量的偏移地址 再写中断向量的段地址 7 3微机中断处理 二 实地址模式下转入中断服务程序的方法实地址模式下转入中断服务程序的方法与8086微机是一样的 发生中断后 根据中断号 在中断向量表中找到中断向量 然后转入中断服务程序 中断向量表和中断向量与8086的也是一样的 7 3微机中断处理 三 保护模式下转入中断服务程序的方法 1 首先从中断控制器PIC或APIC得到中断类型码 2 根据中断类型码 在中断描述符表中找到对应中断号的中断门或陷阱门 异常 描述符 3 从门描述符中找到中断服务程序段的段选择符和段偏移地址 4 根据段选择符 到全局或局部描述符表中读取中断服务程序段的描述符 在描述符中得到中断服务程序段的基地址 5 转入中断服务程序 门是一种转换及跳转机构 7 3微机中断处理 1 中断描述符表中断描述符表中存放的是指示找到中断服务程序的中断门或陷阱门描述符 门描述符在表中也是按中断号从小到大排列 每个门描述符为8个字节 门描述符在表中的偏移与中断号是8倍的关系 保护模式下也是最多管理256个中断 描述符表最大为2KB 中断描述符表的位置和大小 由中断描述符表寄存器IDTR控制 7 3微机中断处理 2 门描述符和程序段描述符 程序段描述符 门描述符 7 4可编程中断控制器8259A 主要特性 识别中断源 判优 提供中断类型码 每片能直接管理8级中断 可编程选择多种工作方式 可级联 最多用9片主从结构管理64级中断 NMOS工艺 单一 5v电源本节讨论8259A的引脚信号 内部结构域工作原理中断管理方式 寄存器及初始化 7 4 18259A引脚信号 分为三类 与CPU的接口信号 D7 D0 A0 INT 与外设的接口信号 IR7 IR0级联接口信号 CAS2 CAS0 7 4 28259A内部结构与工作原理 D0 D7 A0CAS0CAS1CAS2 IR0 IR7 数据总线缓冲器 中断服务寄存器 读 写控制逻辑 级联缓冲 比较器 中断请求寄存器 优先级裁决器 INT 中断屏蔽寄存器 中断控制逻辑 7 4可编程中断控制器8259A 8259A的工作过程 外中断请求 IRn变高 IRR相应位置1 判断屏蔽 判断优先级 中断优先级最高时向CPU发出中断请求信号 CPU响应中断时 向8259A发送两个负脉冲 对第一个负脉冲 8259A把中断服务寄存器ISR中的对应位置1 并把IRR中的相应位清0 对第二个负脉冲 8259A向数据总线发送中断类型码 并且在自动结束中断方式下 第二个脉冲结束时对ISR的相应位清0 7 4 38259A的中断管理方式 8259A的中断管理功能强大 使用灵活 主要涉及6个方面的管理内容 或者叫控制内容 中断触发方式控制中断优先级方式控制中断屏蔽方式控制中断结束方式控制查询方式控制总线连接方式控制每一个方面的控制又有几种形式可供选择 7 4可编程中断控制器8259A 一 中断触发方式 1 高电平触发 2 上升沿触发二 中断优先级方式 1 全嵌套方式 2 特殊全嵌套方式 3 优先级自动循环方式 4 优先级特殊循环方式 7 4可编程中断控制器8259A 三 中断屏蔽方式 1 普通屏蔽方式 2 特殊屏蔽方式四 中断结束方式 1 中断自动结束方式 2 一般中断结束方式 3 特殊中断结束方式 7 4可编程中断控制器8259A 五 中断查询方式是编程查询8259A是否有中断请求 以及中断请求类型码 查询方式可以替代硬件方式向CPU请求和传送类型码 也可以用查询方式扩展更多的8259A 如系统超过9个8259A 1个主片 8个从片 其它的8259A必须用查询方式得到中断请求类型码 六 连接系统总线方式 1 缓冲方式 2 非缓冲方式 7 4 48259A的寄存器及初始化 8259A的寄存器分为两组 一组叫初始化命令字寄存器ICW ICW1 ICW4 ICW是在系统启动时由初始化程序设置 ICW一旦设定 一般在系统工作过程中不再改变 另一组叫操作命令字寄存器OCW OCW1 OCW4 CPU用这些命令字来控制8259A执行不同的操作 如中断屏蔽 中断结束 优先级循环和中断状态的读出 查询 OCW可在初始化之后的任何时刻写入8259A 并可多次设置 7 4可编程中断控制器8259A 7 4可编程中断控制器8259A 一 初始化命令字ICW1 ICW41 芯片特性命令字ICW1D4 D4 1是ICW1的特征位 表示对ICW1操作 LTIM 中断请求信号触发方式 0上升沿 1高电平触发 ADI 8086 8088不用 可为任意值 SNGL 单片 级联方式设置位 0级联 1单片 IC4 指示是否使用ICW4 在8086 8088设为1 7 4可编程中断控制器8259A 2 中断类型码命令字ICW2只需要设置高5位T7 T3 即D7 D3 这5位是中断类型码的高5位 D2 D0可以是任意值 中断类型码的低3位是由中断请求的输入引脚IR0 IR7决定 例如 ICW2为20H 则8259A的IR0 IR7对应的8个中断类型码为20H 21H 22H 23H 24H 25H 26H 27H 7 4可编程中断控制器8259A 3 级联命令字ICW3 SNGL 0时 1 级联时主片命令字ICW3格式S7 S0分别对应主片IR7 IR0引脚是否接有从片8259A 1表示接有从片8259A 0表示没有接从片8259A 2 级联时从片命令字ICW3格式 7 4可编程中断控制器8259A 4 工作命令字ICW4D7 D5 ICW4的标识码 总为0 SFNM 中断嵌套方式设置位 1表示工作于特殊全嵌套方式 0为一般全嵌套方式 BUF 缓冲方式设置位 1缓冲方式 引脚为输出 0工作于非缓冲方式 引脚为输入M S 在缓冲方式下主 片设置位 1表示主片 0为从片 当BUF 0时 M S无意义 AEOI 中断结束方式设置位 1自动中断结束 7 4可编程中断控制器8259A 二 8259A的初始化规则初始化规则如右图例7 1以IBM PC XT微机为例 试对其8259A进行初始化设置 其使用条件为 上升沿触发 单片8259A 写ICW4 优先级为一般全嵌套方式 缓冲方式连接 不自动结束中断 CPU为8086 8088 中断类型码为08H 09H 0AH 0FH 端口地址分别20H 21H 分析 对ICW1 上升沿触发LTIM 0 单片SNGL 1 写ICW4 IC4 1 另ICW1的标志D4 1 所以ICW1 00010011B 13H 7 4可编程中断控制器8259A 对ICW2 中断类型码为08H 09H 0AH 0FH 因此ICW2 00001000B 08H不设置ICW3 单片 对ICW4 优先级为一般全嵌套方式 D4 0 缓冲连接 D3 1 不自动结束中断 D1 0 CPU为8086 8088 D0 1 缓冲方式下的主从标志位M S D2 为1 所以ICW4 00001101B 0DH 初始化程序段 MOVAL 13HOUT20H AL 写ICW1MOVAL 08HOUT21H AL 写ICW2MOVAL 0DHOUT21H AL 写ICW4 7 4可编程中断控制器8259A 三 8259操作命令字OCW1 OCW31 中断屏蔽命令字OCW1M0 M7分别对应中断源IR0 IR7 如某位Mi 1 将屏蔽相应的中断源IRi 反之 Mi 0则清除屏蔽 用OCW1屏蔽某个中断源IR 不应该影响其它中断源IR的屏蔽位 因此 在屏蔽 或开放某中断源 需要先读出OCW1的值 然后对相应位做逻辑1或 或对对相应位做逻辑0与 7 4可编程中断控制器8259A 例7 2若要屏蔽IR1 IR4和IR5引脚上的中断请求 而让其余的中断请求得到允许 试确定其中断屏蔽操作命令字OCW1 并将其写入奇地址21H处 根据题意OCW1 00110010B 32H 写OCW2的指令为 MOVAL 32HOUT21H AL 7 4可编程中断控制器8259A 2 中断结束与优先级循环方式命令字OCW2SL 决定L2 L0位是否有效 SL 1 L2 L0有效L2 L0 当SL 1时 用来指定OCW2的操作作用于哪一级IR L2 L0的值与IR级别对应 即 000 001 010 111分别对应于IR0 IR1 IR2 IR7 R 中断优先级循环方式控制位 R 1为优先级循环方式 当SL 0时为优先级自动循环方式 当SL 1时为优先级特殊循环方式 EOI 中断结束命令位 D4 D3 D4 D3为0是OCW2的特征位 7 4可编程中断控制器8259A 7 4可编程中断控制器8259A 例7 3若某8259A的OCW2设置为11000011B 试分析此操作命令字所确定的操作方式 并将其写入偶地址20H处 根据OCW2的格式 该命令字确定8259A为特殊循环优先级 IR3优先级为最低 从高到低的优先级次序为IR4 IR5 IR6 IR7 IR0 IR1 IR2 IR3 写OCW2的程序指令为 MOVAL 0C3HOUT20H AL 7 4可编程中断控制器8259A 3 屏蔽与读状态命令字OCW3OCW3功能有三 控制8259A的中断屏蔽 设置中断查询方式 设置读8259A内部寄存器命令 ESMM 特殊屏蔽方式允许位 ESMM 1 SMM有效 SMM 特殊屏蔽方式位 1为特殊屏蔽方式 D4 D3 D4 0 D3 1是写OCW3的特征位 RR 读寄存器命令 1允许读IRR和ISR RIS 读IRR或ISR的选择位 1读ISR 0读IRR P 查询方式位 P 0为非查询方式 P 1 7 4可编程中断控制器8259A 命令字OCW3的查询字格式I为中断请求状态标志 0表示无中断请求 1表示有中断请求 W2 W0为中断请求最高级的编码查询方法为 首先对OCW3的P位写1 接着从偶地址口读 读出的便是OCW3的查询字 程序员根据查询字确定是否有中断请求 以及中断请求的编码和中断类型号 进而执行中断服务程序 7 4 58259A的级联 在计算机系统中用一主片8259A与CPU相连 主片8259A的8个中断请求输入引脚如果接有从片8259A 此称为级联 从片最多可以接8个 在级联结构中 从片的INT输出端接至主片的某个IRi输入端 由主片的INT向CPU发中断请求 所有8259A的CAS2 CAS1 CAS0互连 主片为输出信号 从片为输入信号 这三条信号线的编码用于选择从片 级联系统中 各8259A必须各自进行完整的初始化过程 以便设置各自的工作状态 在中断结束时 要发两次EOI命令 分别使主片和相应的从片执行中断结束命令 7 4可编程中断控制器8259A 日时钟键盘串口2串口1并口2软盘并口1 实时钟用户中断保留保留保留协处理器硬盘保留 A0D7 D0INT A0D7 D0INTCAS0CAS1CAS2 去接系统总线 8259A 主片 8259A 从片 Vcc 接译码器 INTR 接译码器 IR0IR1IR2IR3IR4IR5IR6IR7CAS0CAS1CAS2 IR0IR1IR2IR3IR4IR5IR6IR7 图7 20微机中外中断8259A应用示意图 7 5中断应用举例 7 5 1指令中断应用一 指令中断应用程序一个简单的指令中断应用程序 主程序 1 设置中断向量 2 设置DS指向应用程序的数据段 3 指令中断调用 中断服务程序 简单地显示一个字符串 表明进入到了中断服务程序 通过本例 主要是示范中断服务程序的编写方法和中断向量的设置方法 程序如下 7 5中断应用举例 DSEGSEGMENT 定义数据段STRINGDB Thisisinterruptprogram 0AH 0DH 定义字符串数据DSEGENDSCSEGSEGMENT 定义代码段MAINPROCFAR 定义主程序ASSUMECS CSEG DS DSEGMOVAX 0 准备设置中断向量MOVDS AX 中断向量段地址为0MOVAX OFFSETINTERS 取中断服务程序的偏移地址 7 5中断应用举例 MOVDI 0F0H 4 F0H号中断向量所放的首地址MOV DI AX 存中断向量偏移地址MOVAX SEGINTERS 取中断服务程序的段地址ADDDI 2 准备保存中断向量MOV DI AX 保存中断向量段地址MOVAX DSEG 准备程序数据段地址MOVDS AXINT0F0H 指令调用0F0H号中断MOVAX 4C00H 准备返回DOSINT21H 调用DOS功能返回DOS状态MAINENDP 过程结束 7 5中断应用举例 INTERSPROCFAR 定义中断程序MOVDX OFFSETSTRING 调用DOS功能显示字符串MOVAH 9INT21HIRET 中断返回INTERSENDP 过程结束CSEGENDS 程序段结束ENDMAIN 整个程序结束 7 5中断应用举例 二 用DOS功能设置中断向量上面设置中断向量是直接向对应地址写 也可以DOS的25H号功能是设置中断向量 设中断号为n 中断服务程序为INTERS 用25H功能设置中断向量的方法如下 MOVAX SEGINTERS 中断服务程序的段地址送DSMOVDS AXMOVDX OFFSETINTERS 中断服务程序的偏移地址送DXMOVAL n 中断类型号n送ALMOVAH 25H 功能号25H送AHINT21H DOS功能调用 7 5中断应用举例 三 用DOS功能读取中断向量在使用指令中断时 如果是微机系统保留的中断号 应该先将原来的中断向量读出保存起来 然后再设置自己的中断向量 在自己的应用程序结束之前 要恢复系统的中断向量 获取中断向量的DOS功能号为35H 使用格式如下 MOVAL n n为中断类型号MOVAH 35H DOC调用功能号35H送AHINT21H DOS功能调用执行后的返回值为中断类型号n的中断向量 其中段地址在ES中 偏移地址在BX中 7 5 28259A在微机中的应用 自80286微机 PC AT 到Pentium微机系统 都是使用两个级联的8259A 在芯片组中 管理15级外中断 如图7 20所示 系统具有以下特点 端口地址 主片使用20H和21H两个端口 从片使用A0H和A1H两个端口 触发方式 主 从片的中断信号均采用边沿触发 优先级方式 主片采样特殊全嵌套方式 从片采用全嵌套方式 优先级的次序 主片的IR0 IR1 从片的IR0 IR7 主片的IR3 IR7 中断号 设定0 7级对应主片的中断号为08H 0FH 8 15级对应从片的中断号为70H 77H 非缓冲方式连接 7 5中断应用举例 日时钟键盘串口2串口1并口2软盘并口1 实时钟用户中断保留保留保留协处理器硬盘保留 A0D7 D0INT A0D7 D0INTCAS0CAS1CAS2 去接系统总线 8259A 主片 8259A 从片 Vcc 接译码器 INTR 接译码器 IR0IR1IR2IR3IR4IR5IR6IR7CAS0CAS1CAS2 IR0IR1IR2IR3IR4IR5IR6IR7 图7 20微机中外中断8259A应用示意图 7 5中断应用举例 一 初始化程序段先写出来各自的初始化命令字 对主片8259A ICW1 00010001B 11H 边沿触发 级联 写ICW4ICW2 00001000B 08H 起始的中断号为08HICW3 00000100B 04H 主片的IR2引脚接有从片ICW4 00000001B 11H 特殊全嵌套 非缓冲 正常中断结束ICW4 00000001B 01H 全嵌套 非缓冲 正常中断结束 7 5中断应用举例 对从片8259A ICW1 00010001B 11H 边沿触发 级联 写ICW4ICW2 01110000B 70H 起始的中断号为70HICW3 00000010B 02H 接主片的IR2引脚ICW4 00000001B 01H 全嵌套 非缓冲 正常中断结束 7 5中断应用举例 对主片8259A的初始化MPORT0EQU020H 主8259A偶地址端口MPORT1EQU021H 主8259A奇地址端口MOVAL 11HOUTMPORT0 AL 写ICW1NOP 延时MOVAL 08HOUTMPORT1 AL 写ICW2NOP 延时MOVAL 04HOUTMPORTl AL 写ICW3NOP 延时MOVAL 11HOUTMPORT1 AL 写ICW4NOP 延时 7 5中断应用举例 对从片8259A的初始化SPORT0EQU0A0H 从8259A偶地址端口SPORT1EQU0A1H 从8259A奇地址端口MOVAL 11HOUTSPORT0 AL 写ICW1NOP 延时MOVAL 70HOUTSPORT1 AL 写ICW2NOP 延时MOVAL 02HOUTSPORTl AL 写ICW3NOP 延时MOVAL 01HOUTSPORT1 AL 写ICW4NOP 延时 7 5中断应用举例 二 中断屏蔽程序段对中断源的屏蔽操作过程为 首先读出中断屏蔽寄存器OCW1的值 然后对需要屏蔽的位进行或1操作 对需要开放的中断源进行与0操作 设对从片8259A的IR2 IR4 IR7进行屏蔽 对IR0 IR3开放中断 程序段如下 INAL SPORT1ORAL 10010100BANDAL 11110110BOUTSPORT1 AL 7 5中断应用举例 三 从片结束中断程序段在中断服务程序中 对8259A从片中断源 需要结束本中断源的中断 还需要结束主片8259A的中断 程序段如下 MOVAL 20H 结束从片中断服务标志OUTSPORT0 ALMOVAL 00001011B 查从片是否有中断在服务OUTSPORT0 AL 写查询ISR命令于OCW3NOP 延时INAL SPORT0 读中断服务寄存器ISRCMPAL 0 判定是否为0JNZNEXT 不为0表明从片还有中断在服务MOVAL 62H 对主片清除IR2的中断服务标志OUTMPORT0 AL 写主片的OCW2NEXT IRET 7 5 3外中断应用 微机系统没有直接给用户提供外中断信号 用户无法实现由8259A直接控制的外部中断 下面利用1CH号中断来介绍外中断的部分编程和运行观察 1CH号中断每秒钟中断18 2次 每55ms中断一次 它是由定时器 计数器8254定时产生的 原1CH号中断的过程 在8254中断服务程序中的最后 通过1CH号指令中断进入1CH号中断服务程序的 原始的1CH号中断服务程序只有一条 IRET 指令 在BIOS中 7 5中断应用举例 主程序的功能主要有 显示一字符串 Thisismainprogram 读取1CH号的中断向量 用35H号DOS功能 设置中断程序的中断向量 用25H号DOS功能 等待中断 演示中断的发生和处理过程 用BIOS的16H中断等待键盘输入 有按键则向下运行 结束中断和应用程序 恢复原中断向量 用25H号DOS功能 中断服务程序的功能主要有 用到的寄存器进栈保护 每中断18次发出一声响 在屏幕上显示一数字9 寄存器出栈 7 5中断
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025医患纠纷处理协议合同范本
- 2025股权纠纷解决方案合同 私营企业雇佣劳动合同书
- 名贵钟表鉴定师突发故障应对考核试卷及答案
- 竖窑球团焙烧工专业技能考核试卷及答案
- 偏钨酸铵制备工适应性考核试卷及答案
- 2025第四人民医院医疗废物处理设施建设合同
- 2025房地产建筑工程承包合同-现代都市综合体项目
- 2025版外墙漆专业涂装材料购销及施工服务合同
- 2025【合同协议范本】标准医疗器械供货合同模板
- 底座板施工方案
- 保洁三级安全教育培训
- 企业治安防范教育培训
- 五年级冀教版数学下学期应用题专项水平练习题
- 公司事故隐患内部报告奖励机制
- T-SDLPA 0001-2024 研究型病房建设和配置标准
- 2024年中级注册安全工程师《安全生产专业实务(道路运输安全)》真题及答案
- 凝中国心铸中华魂铸牢中华民族共同体意识-小学民族团结爱国主题班会课件
- 湘教版(2024)地理七年级上册全册教案
- 人教版(2024新版)七年级上册生物全册教学设计
- DL∕T 1576-2016 6kV~35kV电缆振荡波局部放电测试方法
- 小学数学速算方法大全
评论
0/150
提交评论