第12章 中断 罗文坚 中国科大 计算机学院 http://staff.ustc.edu.cn/~wjluo/mcps/

Slides:



Advertisements
Similar presentations
第1章第1章 PC/AT 系統 1 Chapter 1 Chapter 1 PC/AT 系統 001.
Advertisements

第二框 生命科技与生命伦理.
第八章 给产品定价 学习目标: 理解三种定价的基本方法,重点掌握损益平衡法; 掌握定价策略; 了解价格调整。
門神 在傳統觀念中,門是居住環境中與外界相通的出入口,具有重要的屏障作用。門神顧名思義就是護宅守門的神仙,每逢過年,上至天子百官下至普通百姓,家家戶戶必在門上張貼門神,以保一家平安。 門神種類主要有宅第大門上將軍武門神、內室門戶上祈福文門神,還有童子門神、仙子門神等,形象豐富多樣,皇家貴戚還往往在畫上瀝粉貼金,十分吉祥喜慶。
恒泰期货研究所2016年 期债暴跌告一段落,短期波动降低 国债期货周报
第2章 微处理器 2.1 概述 /8086微处理器 微处理器 X86/Pentium微处理器
第二节 留 数 一、留数的引入 二、利用留数求积分 三、在无穷远点的留数 四、典型例题 五、小结与思考.
输入输出程序设计 输入输出的基本概念 无条件方式输入输出 查询方式输入输出 中断方式输入输出.
第3章 奔腾系列微处理器.
第三单元 单元写作学案 确立自信 学习反驳.
闲言碎语.
二十 石钟山记.
第10章 DOS功能调用与BIOS中断调用.
第七章 异常控制流 CPU控制流的概念 进程上下文切换 异常和中断的基本概念 异常和中断的响应和处理
第十二章 DMA控制器 12.1 概述 A DMA控制器 A的应用.
第一章 语言文字运用 专题五  挖掘隐含信息,准确实现图文转换.
第一章 计算机基础知识 第一节 计算机概述 一、计算机的基本组成和工作原理 二、有关术语 三、计算机发展简史 四、微型计算机概述
第5章 输入输出与接口技术.
第五章 总线 及其形成 本节课之前,大家学习了:
第五章 微处理器总线操作与时序 三、总线时序 一、 8086/8088引脚 二、最小模式和最大模式.
汇编语言与接口技术 教师:范新民.
输入/输出及接口 输入/输出的传送方式 中断技术 80x86/Pentium中断系统 8259A可编程中断控制器 中断程序设计
项目2 2个LED发光二极管控制 知识与能力目标 熟悉单片机的I/O口功能与特性。
第8章 现代微型计算机 x86系列微处理器 8.2 微型计算机体系结构 8.3 存储管理技术 8.4 多任务管理与I/O管理
第一章 概述.
9.1 可编程并行输入/输出接口芯片8255A 9.2 可编程计数器/定时器 可编程串行输入/输出接口芯片8251A
3.3.5 程序控制指令 控制转移指令分为: 转移指令 循环控制指令 调用和返回指令 中断指令.
第7章 中断与异常.
汇编语言程序设计 Assembly Language Programming
第三章 寻址方式与指令系统 3.1 寻址方式 一条指令通常由两大部分构成: 操作码 操作数
微机原理与接口技术 第2章 8086系统结构 朱华贵 2015年09月17日.
输入输出与中断 主要内容 CPU与外设之间数据传送方式 中断技术 8086中断系统和中断处理.
第2章 16位和32位微处理器 位微处理器8086/ 位微处理器80386
第5章 输入输出与接口技术.
第八章 输入输出程序设计 总线 CPU MEM I/O接口 I/O设备.
微机原理及应用 主讲:郑海春.
第一章 8086程序设计 第二章 MCS-51程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口
第8章 PCH中的常规接口.
单片机原理及应用 ——基于Proteus与Keil C 哈工大出版社
本 章 重 点 单片机的简单I/O扩展 8255A可编程并口芯片 8279可编程键盘/显示器接口芯片 单片机键盘接口技术
单片机原理 单 片 机 单片机接口技术 单片机应用技术.
第二章 8086/8088系统结构 主要内容 8086/8088微处理器的内部结构 8086/8088 CPU 的引脚与功能
校 園 雲端輸出管理系統 新印科技股份有限公司 聯絡人:伍宏一 電 話: /
1.3 微型计算机的结构和工作原理.
第 13 章 中断系统.
第2章 单片机系统组成原理 2.1 MCS-51单片机组成原理 2.2 单片机复位电路设计 2.3 MCS-51存储器配置
本 章 重 点 单片机的结构特点 单片机的存储器特点 I/O端口的特点 CPU时序 课时安排:3个课时.
第一节 大数定律 一、问题的引入 二、基本定理 三、典型例题 四、小结.
3.4.5 控制转移指令(Control transfer instructions) (一)、控制转移指令概述
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月19日.
第五章:输入输出基本技术 主讲教师:范新民.
第二章 8086微处理器. 第二章 8086微处理器 微处理器的基本结构 8086微处理器的主要特性和内部结构 8086CPU的工作模式和引脚信号 8086的存储器管理 8086的总线操作和时序.
第4章 汇编语言程序格式  汇编程序功能  伪操作  汇编语言程序格式  汇编语言程序的上机过程.
第九章 微处理器外部结构和总线操作时序.
单片机系统设计 教师:朱华贵 2016年03月01日
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
第九章 BIOS和DOS中断 在存储器系统中,从地址0FE000H开始的8K ROM(只读存储器)中装有BIOS(Basic Iuput /output System)例行程序。驻留在ROM中的BIOS给PC系列的不同微处理器提供了兼容的系统加电自检,引导装入,主要I/O设备的处理程序以及接口控制等功能模块来处理所有的系统中断。使用BIOS功能调用,给程序员编程带来很大方便,程序员不必了解硬件操作的具体细节,直接用指令设置参数,然后中断调用BIOS中的子功能,所以利用BIOS功能编写的程序简洁,可读性好,
第2章 80x86计算机组织  计算机系统  存储器  中央处理机  外部设备.
本节内容 代码跨段 本质就是修改CS段寄存器 视频提供:昆山滴水信息技术有限公司 官网地址: 论坛地址: QQ交流 :
第八章 中断系统.
第五讲:AT89C51单片机存储器结构 一、半导体存储器 二、存储器空间划分方法 三、数据存储器(RAM) 四、程序存储器(ROM)
微型计算机原理与接口技术 (第2版) 赵宏伟 于秀峰 黄永平 秦贵和 北京:科学出版社 出版 吉林大学计算机科学与技术学院 制作.
微机原理与接口技术 西安邮电大学计算机学院 宁晓菊.
第二章 8086系统结构 /8086的存储器组织 的系统配置及引脚功能 CPU时序
微机原理与接口技术 西安邮电大学计算机学院 宁晓菊.
第2章 80C51单片机的硬件结构 教学基本要求: (1)、熟悉单片机的定义、名称、分类方法;
第三章 8086的指令系统 8086指令特点 8086的寻址方式 8086的指令格式及数据类型 8086的指令集.
本节内容 任务段 视频提供:昆山滴水信息技术有限公司 官网地址: 论坛地址: QQ交流 :
微型计算机系统.
Presentation transcript:

第12章 中断 罗文坚 中国科大 计算机学院 http://staff.ustc.edu.cn/~wjluo/mcps/

本章内容 基本中断处理 硬件中断 扩展中断结构 8259A可编程中断控制器 中断实例

基本中断处理 中断的目的 中断(中断引脚、中断向量和专用中断) 中断指令 实模式中断操作 保护模式中断操作 中断标志位 将一个中断向量存入向量表

中断的目的 在与低速I/O设备进行数据传输时,中断特别有用。 例,一个典型系统中表明中断使用情况的时间线。

中断引脚 整个Intel系列微处理器的中断包括: 2个申请中断的硬件引脚:INTR和NMI 1个相应INTR中断申请的硬件引脚:INTA 注意:除了这些引脚外,微处理器还有: 软件中断指令INT、INTO、INT3和BOUND; 标志位IF(Interrupt Flag)和TF(Trap Flag); 中断返回指令IRET(或在80386~Pentium4中的IRETD)。 IRET 与 IRETD 是相同操作码的助记符。IRETD 助记符(中断返回双字)用于从使用 32 位操作数大小的中断返回;不过大多数汇编器对这两种操作数大小都互换使用 IRET 助记符。

中断向量 中断向量表(IVT,Interrupt Vector Table)为于存储器的最低1024字节,地址为0000H~03FFH。 包含256个不同的4字节中断向量。 中断向量包含中断服务程序的地址(段和偏移)。 中断向量的内容

中断向量 在256个中断向量中,Intel保留前32个中断向量为Intel各种微处理器系列成员专用,后224个向量可用作用户中断向量。 在前32个中断向量中: 前5个中断向量在所有Intel系列微处理器中都是相同的。 其他中断向量存在于80286及向上兼容的80386~ Core2中,但不向下兼容8086或8088。

中断向量 类型0:除法出错 类型1:单步或陷阱 类型2:不可屏蔽硬件中断 类型3:断点中断 类型4:溢出中断 类型5:边界 边界指令将寄存器与存储器中的边界值相比较。如果寄存器的内容大于或等于存储器中的第一个字,并小于或等于第二个字,则不发生中断,因为寄存器的内容在边界之内。如果寄存器的内容超出边界,则发生类型5中断。

中断向量 类型6:无效操作码 一旦在程序中遇到未定义的操作码时发生此中断。 类型7:协处理器不存在 如果执行了ESC或WAIT指令且没有找到协处理器,则发生此中断。 类型8:双故障中断 在同一指令期间发生2个独立的中断时激活此中断。

中断向量 类型9:协处理器段超限 实模式下,若ESC指令(协处理器操作码)的存储器操作数超出偏移地址FFFFH,则发生该中断。 类型10:无效任务状态段 在保护模式下,由于段限区域不是002BH或更高,则TSS无效,此时发生该中断。 类型11:段不存在 当保护模式描述符中的P位(P=0)指示段不存在或无效时,发生该中断。

中断向量 类型12:堆栈段超限 保护模式下,如果堆栈段不存在(P=0)或堆栈段超限,则发生该中断。 类型13:一般性保护 在80286~Core2保护模式下,大多数保护机制冲突都会引起该中断。这些错误在Windows中表现为一般性保护错。 这些保护违规包括:描述符表边界超限;违反特权规则;装入了无效的描述符段类型;对被保护的代码段执行写操作;从只能执行的代码段读数据;对只读数据段的写操作;段边界超限;当执行CLTS、HLT、LGDT、LIDT、LLDT、LMSW或LTR时,CPL!=0;当执行CLI、IN、INS、LOCK、OUT、OUTS和STI时,CPL>IOPL。 CLTS—Clear Task-Switched Flag in CR0

中断向量 类型14:页面出错 在80386、80486和Pentium~Core2中,页故障将产生该中断。 类型16:协处理器出错 当80386、80486和Pentium~Core2的ESC或WAIT指令发生协处理器错误时,发生该中断。 类型17:对齐检查 当对齐检查允许时,指示处理器检测到一个未对齐的存储器操作数。 类型18:机器检查 在Pentium~Core2中,指示处理器检测到一个内部机器错误或一个总线错误,或外部Agent检测到一个总线错误。

中断指令 微处理器现有5条中断指令: INT,INT3 INTO,BOUND IRET INT n:调用入口地址存于向量号n的中断服务程序。 INTO:相当于INT 4。 INTO指令检查OF标志。如果OF=1,则INTO指令调用类型号为4号的中断服务程序。

中断指令 BOUND reg, src:比较寄存器和2个字存储器数据。 例,BOUND AX, DATA IRET:中断返回 用于软件和硬件中断的返回。 如果工作在实模式下,则使用IRET指令。 在80386~Core2保护模式下,用IRETD指令,因为这些微处理器将EIP/CS/EFLAG压入堆栈。 在Pentium 4的64位模式下,使用IRETQ指令。

实模式中断操作 当微处理器执行完当前指令后,按下列顺序判断是否有中断发生: 指令执行情况; 单步中断; NMI; 协处理器段超限; INTR; INT 指令。

实模式中断操作 如果有中断发生,则按下列顺序处理: 将标志寄存器入栈; 清除IF、TF标志; CS入栈; 指令指针IP入栈; 取出中断向量内容,送入IP和CS。

实模式中断操作 关于返回地址: 有时,返回地址为程序中的下一条指令。 有时指向程序中发生中断的地方。 中断类型0、5、6、7、8、10、11、12和13压入堆栈的返回地址是指向错误指令,而不是下一条指令。 使得中断服务程序在某些错误情况下有可能重新执行该指令。 一些保护模式中断(类型8、10、11、12和13)将错误代码紧跟返回地址压入堆栈。错误代码识别引起中的选择符(Selector)。如果不包括选择符,则错误代码为0。

保护模式中断操作 保护模式下的中断与实模式几乎完全相同,但中断向量表不同。 保护模式使用一组存储在中断描述符表(IDT)中的256个中断描述符取得中断向量。每个描述符占8个字节。 中断描述符表占256×8=2KB字节。

保护模式中断操作 中断描述符 中断服务程序的地址:Segment Selector和Offset 描述符是在内存中:P 描述符特权级:DPL

保护模式中断操作 除了IDT和中断描述符,保护模式中断像实模式中断一样发挥功能。 用IRET或IRETD指令从两种中断返回。 64位模式下,用IRETQ从中断返回。 实模式的中断向量可以转换成保护模式中断。 复制中断向量表中的中断服务程序地址,并将其转换成存储于中断描述符中的32位偏移地址。 全局描述符表将存储器的前1MB标识为中断段,相应的选择符和段描述符可放在全局描述符表中。

中断标志位 IF:中断允许标志 STI、CLI指令 TF:陷阱标志 没有特殊的指令来置位和清除陷阱标志。 PUSHF/PUSHFD,POPF/POPFD

置位TF 例,置位TF的一个中断服务程序。 TRON PROC FAR USES AX BP MOV BP, SP MOV AX, [BP+8] OR AH, 1 MOV [BP+8], AX IRET TRON EDNP

清除TF 例,清除TF的一个中断服务程序。 TRON PROC FAR USES AX BP MOV BP, SP MOV AX, [BP+8] AND AH, 0FEH MOV [BP+8], AX IRET TRON EDNP

跟踪过程 假定INT 40H指令访问TRON,INT 41H访问TROFF。下面的程序用于跟踪一个紧跟在INT 40H指令后的程序,对应于中断类型1或陷阱中断。

本章内容 基本中断处理 硬件中断 扩展中断结构 8259A可编程中断控制器 中断实例

硬件中断 微处理器有2个硬件中断输入: NMI、INTR 所有型号的Intel微处理器上的中断引脚

硬件中断 NMI:一旦激活NMI输入,就发生类型2中断。 INTR:INTR的输入必须外部译码,以选择一个中断向量。 INTR引脚可以选择任何中断向量,但通常只使用20H~FFH之间的中断向量。 Intel保留00H~1FH之间的中断。 INTA#:用于响应INTR输入的一个输出引脚,将向量类型号加载到数据总线D7~D0上。

硬件中断 NMI:边沿触发,在上升沿申请中断。 在上升沿之后,NMI引脚必须保持逻辑1,直到微处理器识别它。 响应这种类型的中断时,微处理器将所有内部寄存器存于使用电池的备份存储器或EEPROM中。

硬件中断 INTR是电平敏感的,必须保持在逻辑1电平直到被识别为止。 INTR和INTA的时序图

硬件中断 INTA#的响应

硬件中断 将INTR转换为边沿触发

82C55键盘中断

82C55键盘中断 读取按键的中断服务程序

82C55键盘中断 从FIFO队列读出数据的过程

本章小结 基本中断处理 中断向量,标志位,实模式中断,保护模式中断 硬件中断 引脚,特点

作业 习题13,习题27