第7章 中断和中断程序设计
微机原理第7章 8086中断系统和中断控制器
3)高级中断源能中断低级的中断处理
中断嵌套 当CPU正在响应某一中断源的请求,执行为其服务的中断服务程序时, 如果有优先级更高的中断源发出请求,CPU将中止正在执行的中断服务程 序而转入为新的中断源服务,等新的中断服务程序执行完后,再返回到被 1 中止的中断服务程序,这一过程称为中断嵌套。 • 中断嵌套可以有多级,具体级数原则上不限,只取决于堆栈深度。
外部中断 非屏蔽中断 可屏蔽中断
可屏蔽中断源
CPU 中断逻辑
INTR
8259A 中断 INTA 控制器
INT N 指令
INTO 指令
除法 错误
单步 中断
IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7
外 设 中 断 源
内部中断: 除法错中断 指令中断 溢出中断 单步中断
硬件(外部)中断 非屏蔽中断请求 INT 2 NMI(17号引脚) 中 断 逻 辑 可屏蔽中断请求 中断类型号32~255 INTR(18号引脚)
中断指令 INT n N=32~255
溢出中断 INTO INT 4
断点 中断 INT 3
单步中断 (TF=1) INT 1
除法 错误 INT 0
软件(内部)中断
8086/8088中断源
1.软件中断(内部中断) 8086/8088的软件中断主要有三类共五种。 (1) 处理运算过程中某些错误的中断 执行程序时,为及时处理运算中的某些错误 ,CPU以中断方式中止正在运行的程序,提醒程 序员改错。 ① 除法错中断(中断类型号为0)。在8086 /8088 CPU执行除法指令(DIV/IDIV)时,若发现 除数为0,或所得的商超过了CPU中有关寄存器所 能表示的最大值,则立即产生一个类型号为0的 内部中断,CPU转去执行除法错中断处理程序。
7章中断系统
① 0型中断——除法出错中断。 ② 1型中断——单步中断。 ③ 3型中断——断点中断(INT)。 ④ 4型中断——溢出中断(INTO指令)
(2)指令中断——INT n指令,其类型号就是 给定的n。
7.2.2 中断向量和中断向量表
IP 000 类型0中断入口(除法出错) CS
专 004 类型1中断入口(单步中断) IP
(2)CPU的标志寄存器入栈,以保护各个标志位, 此操作类似于PUSHF指令。
(3)清除IF和TF标志,屏蔽新的INTR中断和单步 中断
(4)保存断点,即把断点处的IP和CS值压入堆栈, 先压入CS值,再压入IP值。
(5)根据第一步计算出来的地址从中断向量表中 取出中断服务程序的入口地址(段和偏移),分 别送至CS和IP中。
3.若CPU处于开中断状态,则在当前指令 执行结束后,启动中断响应总线操作,发出 两个负脉冲作为响应信号。
4.8259A接收到第一个负脉冲,完成如下工作:
(1)使ISR相应位置1,表示CPU已为该中断请求服务。
(2)使IRR的相应位清0。
5.8259A接收到第二个负脉冲,将中断类型号送 上数据总线。中断类型号由用户编程和中断请求 引脚IRi的序号i共同决定(CPU读取中断类型号, 经响应过程后,进入中断服务程序,直到服务结 束返回)。
图5-1 中断处理过程
1.中断请求
中断请求是中断过程的第一步。中断源产生中断请求 的条件,因中断源而异
2.中断判优
由于中断产生的随机性,可能出现两个或两个以上的 中断源同时提出中断请求的情况。这时就必须要求 设计者事先根据中断源的轻重缓急,给每个中断源 确定一个中断级别——优先权。
3.中断响应
中断优先权确定后,发出中断申请的中断源中优先权 最高的中断请求就被送到CPU的中断请求引脚上。
《汇编语言程序设计》(第四版)教案及答案解析
《汇编语言程序设计》教案附:习题参考答案《汇编语言程序设计》(第4版)钱晓捷主编前言1.汇编语言是计算机能提供给用户的最快而又最有效的语言,也是能够利用计算机所有硬件特性并能直接控制硬件的唯一语言。
2.汇编语言程序设计是高等院校电子计算机硬、软件及应用专业学生必修的核心课程之一。
它不仅是计算机原理、操作系统等其它核心课程的必要先修课,而且对于训练学生掌握程序设计技术、熟悉上机操作和程序调试技术都有重要作用。
3.本教材共有十一章,其内容安排如下:(1).第一、二章为汇编语言所用的基础知识。
(2).第三章详细介绍80x86系列CPU的指令系统和寻址方式。
(3).第四章介绍伪操作、汇编语言程序格式及汇编语言的上机过程。
(4).第五、六章说明循环、分支、子程序结构和程序设计的基本方法。
(5).第七章说明宏汇编、重复汇编及条件汇编的设计方法。
(6).第八章叙述输入/输出程序设计方法,重点说明中断原理、中断过程及中断程序设计方式。
(7).第九章说明BIOS和DOS系统功能调用的使用方法。
(8).第十~十一章分别说明图形显示、发声及磁盘文件存储的程序设计方法,同时提供各种程序设计方法和程序实例。
附:教学参考书1.沈美明、温冬婵编著,IBM–PC汇编语言程序设计(第2版),清华大学出版社,2001年(教材)2.沈美明、温冬婵编著,IBM–PC汇编语言程序设计,清华大学出版社,1991年3.沈美明、温冬婵编著,IBM–PC汇编语言程序设计—例题习题集,清华大学出版社,1991年6月4.沈美明、温冬婵、张赤红编著,IBM–PC汇编语言程序设计—实验教程,清华大学出版社,1992年5.周明德,微型计算机IBM PC/XT(0520系列)系统原理及应用(修订版),清华大学出版社,19916.郑学坚、周斌,微型计算机原理及应用(第二版),清华大学出版社,19957.王士元、吴芝芳,IBM PC/XT[长城0520] 接口技术及其应用,南开大学出版社,19908.杨素行,微型计算机系统原理及应用,清华大学出版社,19959.戴梅萼、史嘉权,微型计算机技术及应用—从16位到32位(第二版),清华大学出版社,199610.张昆藏,IBM PC/XT微型计算机接口技术,清华大学出版社,199111.孟绍光,李维星,高档微机组成原理及接口技术(80386/80486/Pentium),学苑出版社,199312.吴秀清,周荷琴,微型计算机原理与接口技术,中国科学技术大学出版社目录第 1 章基础知识 (1)1.1进位计数制与不同基数的数之间的转换 (1)1.2二进制数和十六进制数的运算 (2)1.3计算机中数和字符的表示 (3)1.4几种基本的逻辑运算 (3)第 2 章 80X86计算机组织 (4)2.180X86微处理器 (4)2.2基于微处理器的计算机系统构成 (4)2.3中央处理机 (5)2.4存储器 (6)2.5外部设备 (7)第 3 章 80X86的指令系统和寻址方式 (8)3.180X86的寻址方式 (8)3.2程序占有的空间和执行时间 (10)3.380X86的指令系统 (10)第 4 章汇编语言程序格式 (27)4.1汇编程序功能 (27)4.2伪操作 (27)4.3汇编语言程序格式 (31)4.4汇编语言程序的上机过程 (34)第 5 章循环与分支程序设计 (37)5.1循环程序设计 (37)5.2分支程序设计 (38)5.3如何在实模式下发挥80386及其后继机型的优势 (38)第 6 章子程序结构 (40)6.1子程序的设计方法 (40)6.2子程序的嵌套 (41)6.3子程序举例 (41)第 7 章高级汇编语言技术 (43)7.1宏汇编 (43)7.2重复汇编 (44)7.3条件汇编 (45)第 8 章输入/输出程序设计 (46)8.1I/O设备的数据传送方式 (46)8.2程序直接控制I/O方式 (47)8.3中断传送方式 (47)第 9 章 BIOS和DOS中断 (50)9.1键盘I/O (50)9.2显示器I/O (52)9.3打印机I/O (53)9.4串行通信口I/O (54)第 10 章图形与发声系统的程序设计 (55)10.1显示方式 (55)10.2视频显示存储器 (55)10.3EGA/VGA图形程序设计 (56)10.4通用发声程序 (57)10.5乐曲程序 (58)第 11 章磁盘文件存取技术 (59)11.1磁盘的记录方式 (59)11.2文件代号式磁盘存取 (60)11.3字符设备的文件代号式I/O (61)11.4BIOS磁盘存取功能 (62)附录:《IBM—PC汇编语言程序设计》习题参考答案 (63)第一章.习题 (63)第二章.习题 (64)第三章.习题 (65)第四章.习题 (79)第五章.习题 (84)第六章.习题 (104)第七章.习题 (118)第八章.习题 (125)第九章.习题 (130)第十章.习题 (134)第十一章.习题 (145)第 1 章 基础知识【教学目的】本章内容是本课程的基础,通过本章学习,使学生明确汇编语言程序设计的学科性质、基本内容和学习意义,掌握数制的转换、数据的编码,了解本门课程的教学要求和学习方法。
8071第七章输入输出接口技术第一节内容2009.01.20(第三稿)
2.I/O端口独立编址
优点:
I/O端口的地址空间独立 控制和地址译码电路相对简单 专门的I/O指令使程序清晰易读 I/O指令没有存储器指令丰富
缺点:
80x86采用I/O端口独立编址
2013年8月1日星期四 中北大学《微机原理及接口技术》 37
Байду номын сангаас
2.I/O端口独立编址
特点:
00000H 内存 地址
12
7.1.3 I/O接口的主要功能
对输入输出数据进行缓冲和锁存 输出接口有锁存环节,输入接口有缓冲环节 实际的电路常用: 输出锁存缓冲环节,输入锁存缓冲环节 对信号的形式和数据的格式进行变换 微机直接处理:数字量、开关量、脉冲量 对I/O端口进行寻址 与CPU和I/O设备进行联络
中北大学《微机原理及接口技术》 24
2013年8月1日星期四
外设接口
输入接口 输出接口 并行接口 串行接口
数字接口
模拟接口
2013年8月1日星期四
中北大学《微机原理及接口技术》
25
输入输出接口的特点
输入接口:
要求对数据具有控制能力(常用三态门实现)
输出接口:
要求对数据具有锁存能力(常用锁存器实现)
中北大学《微机原理及接口技术》
6
7.1.2 I/O接口概述
为什么需要I/O接口(电路)?
多种外设
微机的外部设备多种多样
工作原理、驱动方式、信息格式、以及工作 速度方面彼此差别很大
它们不能与CPU直接相连 必须经过中间电路再与系统相连 这部分电路被称为I/O接口电路
单片机讲义第七章
一、中断的起因
什么可以引起中断? 生活中很多事件可以引起中断:有人 按了门铃了,电话铃响了,你的闹钟闹响 了,你烧的水开了….等等诸如此类的事件, 我们把可以引起中断的称之为中断源,单 片机中也有一些可以引起中断的事件, 8051中一共有5个:两个外部中断,两个 计数/定时器中断,一个串行口中断。
三、中断的响应过程
当有事件产生,进入中断之前我们必须先记住现 在看书的第几页了,或拿一个书签放在当前页的位置, 然后去处理不同的事情(因为处理完了,我们还要回 来继续看书):电话铃响我们要到放电话的地方去, 门铃响我们要到门那边去,也说是不同的中断,我们 要在不同的地点处理,而这个地点通常还是固定的。 89C51中也是采用的这种方法,五个中断源,每个 中断产生后都到一个固定的地方去找处理这个中断的 程序,当然在去之前首先要保存下面将执行的指令的 地址,以便处理完中断后回到原来的地方继续往下执 行程序。
二、中断的嵌套与优先级处理
设想一下,我们正在看书,电话铃响了,同时又 有人按了门铃,你该先做那样呢?如果你正是在等一 个很重要的电话,你一般不会去理会门铃的,而反之, 你正在等一个重要的客人,则可能就不会去理会电话 了。如果不是这两者(即不等电话,也不是等人上 门),你可能会按你通常的习惯去处理。总之这里存 在一个优先级的问题, 单片机中也是如此,也有优先级的问题。优先级 的问题不仅仅发生在两个中断同时产生的情况,也发 生在一个中断已产生,又有一个中断产生的情况,比 如你正接电话,有人按门铃的情况,或你正开门与人 交谈,又有电话响了情况。考虑一下我们会怎么办吧。
电平触发的外部中断的清除
对于电平触发的外部中断,CPU响应中断后, 虽然也是由硬件清除了相应的标志位,但是不 能对外部引脚上的电平进行处理,也就是说, 这时如果外部引脚上的低电平依然存在,会造 成重复中断,因此我们应该在电路上增加对外 部引起中断的信号进行处理。P148图7-5是一 个可行的方案之一。通过I/O口输出一个信号, 使得外部引脚上的中断请求信号变为高电平。
第7章 中断处理技术与DMA技术
7.1 中断的基本概念
(4)在中断响应周期的第二个总线周期中, 读取中断类型号,找到中断服务程序的入口地 址,自动将程序转移到该中断源设备的中断处 理程序的首地址,即将中断处理程序所在段的 段地址及第一条指令的有效地址分别装入CS及 IP,一旦装入完毕,中断服务程序就开始执行。 上述过程,即从CPU响应中断请求,到中断 现行程序并将程序转移到中断处理地址的过程 称为中断响应过程。不同的机器,在中断响应 期间所完成的功能基本类似,但实现方法不尽 课件制作人:刘永华 相同。
* 7.4
* 7.5
第7章 中断处理技术与DMA技术
* 7.6 DMA控制器8237A 7.6.1 主要特性 7.6.2 8237A引脚及结构 7.6.3 8237A的软件命令 7.6.4 8237A的工作时序 * 7.7 8237A初始化编程 * 7.8 8237A应用实例 7.8.1 初始化 7.8.2 应用实例
刘永华7280868088的中断系统类型号中断名称类型号中断名称0003h0h除法出错6063h18h常驻basic入口0407h1h单步6467h19h引导程序入口080bh2h不可屏蔽686bh1ah时间调用0c0fh3h断点6c6fh1bh键盘ctrlbreak控制1013h4h溢出7073h1ch定时器报时1417h5h打印屏幕7477h1dh显示器参数表181bh6h保留787bh1eh软盘参数表1c1fh7h保留7c7fh1fh字符点阵结构参数2023h8h定时器8083h20h程序结束返回dos2427h9h键盘8487h21h系统功能调用282bh0ah保留888bh22h结束地址2c2fh0bh通信口28c8fh23hctrlbreak退出地址表71ibmpcxt机的中断向量表课件制作人
微机原理与接口技术(第三版) 第7章
4) 中断请求的检测 CPU在每条指令执行的最后一个时钟周期,检测其中断 请求引脚(INTR)有无中断请求信号。如果有中断请求信号, 就把内部的中断锁存器置“1”,在下一个总线周期到来时, 进入中断响应状态。
2. CPU对中断的响应 当CPU响应外设的中断后,还要具体完成一些工作。 1) 关中断 当响应中断后,首先要进行关中断操作。对8086微处理 器,CPU在发出中断响应信号的同时,在内部自动完成关中 断操作。 2) 断点保护 当CPU响应中断源的中断请求后,将停止下一条指令的 执行,把当前相关寄存器的内容压入堆栈,为中断返回做好 准备。
3) 中断的开放 在CPU内部有一个中断允许触发器,用来决定是否响应 CPU中断请求引脚(INTR)送来的中断请求。当中断开放(触 发器为“1”)时,CPU才能响应中断;当关闭中断(触发器 为“0”)时,CPU不响应中断请求。这个中断允许触发器的 状态可以用STI和CLI指令来改变。在CPU复位或是当中断 响应后,CPU就处于中断关闭状态,这样就必须在中断服务 程序中用STI指令来让中断开放。
1. 分时操作 中断技术实现了CPU和外部的并行工作,从而消除了 CPU的等待时间,提高了CPU的利用率。另外,CPU可同时 管理多个外部设备的工作,提高了输入/输出数据的吞吐量。 2. 实时处理 在实时控制系统中,现场定时或随机地产生各种参数、 信息,要求CPU立即响应。利用中断机制,计算机就能实时 地进行处理,特别是对紧急事件能进行实时处理。 3.故障处理 计算机运行过程中,如果出现某些故障,如电源掉电、 运算溢出等,.2 中断的响应过程 1.中断源 所谓中断源,就是引起中断的原因或者发出中断请求的
设备。中断源一般分为两类:内部中断源和外部中断源。内 部中断源即中断源在微处理器内部。
第7章 I/O端口及中断控制器
⒋ 端口D寄存器组
各寄存器具体含义见表7-9、表7-10和7-11。
⒌ 端口E寄存器组
各寄存器具体含义见表7-12、表7-13和表7-14。
⒍ 端口F寄存器组
各寄存器具体含义见表7-15、表7-16和表7-17。
⒎ 端口G寄存器组
各寄存器具体含义见表7-18、表7-19和表7-20。
⒏ 端口H寄存器组
7
⒉ 端口数据寄存器GPADAT~GPHDAT
如果端口被配置为输出端口,数据应该写到端 口数据寄存器的对应位; 如果端口被配置为输入端口,数据应该从端口 数据寄存器的对应位读出。
8
⒊ 端口上拉(电阻)允许/禁止寄存器 GPBUP~GPHUP
端口上拉(电阻)允许/禁止寄存器也称为端口 上拉允许/禁止寄存器。 端口上拉(电阻)允许/禁止寄存器控制每个端 口上拉电阻允许/禁止。当对应位为0时,引脚 的上拉电阻被允许;当对应位为1时,上拉电 阻被禁止。
各寄存器具体含义见表7-21、表7-22和表7-23。
19
7.3.2 其他寄存器
⒈ 杂项控制寄存器
杂项控制寄存器中的一些位用来对USB主机和 USB设备进行控制;另外一些位用于保护 SDRAM,以及对数据总线上拉电阻允许/禁止 等进行控制。 杂项控制寄存器MISCCR,地址为 0x56000080,可读写,Reset值为0x10330。 寄存器具体含义见表7-24。 SCKE、SCLK1和SCLK0引脚信号, S3C2410A输出,在Power_OFF模式用于保护 SDRAM。在寄存器MISCCR中规定了它们输 20 出信号的方式。
GPA[10:0]
当该端口被配置为输入端口时, 当该端口被配置为输入端口时,从输入引脚来的外 部信号能够从这个寄存器的对应位读出。 部信号能够从这个寄存器的对应位读出。 当该端口被配置为输出端口时, [10:0] 当该端口被配置为输出端口时,写到这个寄存器中 的数据能够被送到对应的引脚。 的数据能够被送到对应的引脚。 当该端口被配置为功能引脚时, 当该端口被配置为功能引脚时,读入值未定义
S7-1200 PLC应用基础课件第7章 PLC控制系统设计与调试
7.1.1 PLC控制系统设计的原则与内容
2. 设计内容
1)拟订控制系统设计的技术条件 技术条件一般以设计任务书的形式来确定,它是整 个设计的依据。 2)选择电气传动形式和电动机、电磁阀等执行机构。 3)选定PLC的型号。 4)原理设计 设计工艺设备布置图、电气原理图、编制材料清单等。 5)编写软件规格说明书,用相应的编程语言进行程序设计。 6)人机界面的设计。 7)工艺设计 设计元件布置图、安装接线图、控制台(柜)等。 8)编制整理技术文件 整理完整的技术文件,编写使用、维护说明书。
7.2.4 分配输入/输出点
1. 输入点的简化
(1)合并输入 如果某些信号的逻辑关系总是以“串联”或“并联”的方式整体 出现,这样可以在信号接入输入点前,按“串联”或“并联”的逻辑关系接好线 ,再接到输入点。 (2)分时分组输入 (3)采用拨码开关 (4)减少多余信号的输入 如果通过PLC程序就可判定输入信号的状态,则可以减 少一些多余信号的输入。 (5)某些输入设备可不进PLC 有些输入信号功能简单、涉及面很窄,将它们放在 外部电路中同样可以满足要求,就没有必要作为PLC的输入。
7.2.5 输出点的保护
在带感性负载时,要抑制关闭电源时电压的升高,可以采用下面的方法来设计合 适的抑制电路。设计的有效性取决于实际的应用,所以必须根据实际调整参数, 以保证所有的器件参数与实际应用相符合。 1. 晶体管输出的保护 对于大电感或频繁开关的感性负载可以使用外部二极管或齐纳二极管来保护内部 电路。如图7-1和图7-2所示。
第7章中断和中断程序设计
5)数据总线缓冲器
8位的双向三态缓冲器,用作8259A与系统总线的接口,传 送命令控制字、状态字和中断向量。
D0~D7:为双向数据线,数据缓冲器暂时保存在内部总线和 系统数据总线间进行传送的数据。
7.2 程序中断设备接口的组成和工作原理
第7章
中断和中断控制
7.1 中断系统 7.1.1 中断的基本概念 7.1.2 中断的类型 7.1.3 中断请求的提出和传送 7.1.4 中断优先级 7.1.5 中断响应 7.1.6 中断处理
7.2 8086的中断系统 7.2.1 外部中断 7.2.2 内部中断 7.2.3 中断向量表
7.2.4 中断过程 7.3 8259A中断控制器
(1)关中断
进入不可再次响应中断的状态,由硬件自动实现。因为 接下去要保存断点,保存现场。 在保存现场过程中,即使有 更高级的中断源申请中断, CPU也不应该响应 ;否则,如果 现场保存不完整,在中断服务程序结束之后,也就不能正确 地恢复现场并 继续执行现行程序。
(2)保存断点和现场。
为了在中断处理结束后能正确地返回到中断点,在响应 中断时,必须把当前的程序计数器 PC中的内容(即断点)保 存起来。
7.1.5 中断处理
7.1 程序中断输人输出方式
2.多重中断处理
多重中断是指在处理某一个中断过程又发生了新的中 断请求,从而中断该服务程序的执行,又转去进行新的中 断处理。这种重叠处理中断的现象又称为中断嵌套。
一般情况下,在处理某级中的某个中断时,与它同级的 或比它低级的新中断请求应不能中断它的处理。而比它优 先级高的新中断请求却能中断它的处理。
计算机操作系统---第7章 操作系统接口
命令接口包括:联机用户接口和脱机用户接口
终端用户利用该 接口可以调用操 作系统的功能, 取得操作系统 的服务。
专为批处理 作 业的用户提 供 的。(批处 理 用户接口)
7.1.1 联机用户接口
也称联机命令接口。 分类:字符显示式用户界面;图形化用 户界面
命令 语言 命令行方 式和批命 令方式
中断和异常的区别如下(2): •异常是由处理器正在执行现行指
令而引起的,一条指令执行期间允 许响应异常,异常处理程序提供的 服务是为当前进程所用的。 异常又分为出错和陷入。
出错和陷入的区别如下: •它们发生时保存的返回指令地址 不同,出错保存指向触发异常的那 条指令,而陷入保存指向触发异常 的那条指令的下一条指令。 •从异常返回时,出错会重新执行 那条指令,而陷入就不会重新执行 那条指令。如缺页异常是一种出错, 而陷入主要应用在调试中。
首先,将处理机状态由用户态转为系统态 其次,是分析系统调用类型,转入相应的系 统调用处理程序 在系统调用处理子程序执行完后,应恢复 被中断的或设置新进程的CPU现场,然后 返回被中断进程或新进程,继续往下执行
4.系统调用处理子程序的处理过程
7.4
UNIX系统调用
7.4.1 UNIX系统调用的类型
在程序设计语言(如C语言)中,往往 提供与各系统调用对应的库函数, 应用程序可通过对应的库函数来使 用系统调用, 库函数的目的是隐藏访管指令细节, 使系统调用更象过程调用,但一般 地说,库函数属于用户程序而非系 统程序。
操作系统为用户提供系统调用 也出于安全和效率考虑,使得 用户态程序不能自由地访问内 核关键数据结构或直接访问硬 件资源。
1.命令行方式:Command arg1 arg2…argn
大学_《微型计算机原理及应用》(吴宁著)课后习题答案下载
《微型计算机原理及应用》(吴宁著)课后习题答案下载《微型计算机原理及应用》(吴宁著)内容提要目录第1章计算机基础1.1 数据、信息、媒体和多媒体1.2 计算机中数值数据信息的表示1.2.1 机器数和真值1.2.2 数的表示方法——原码、反码和补码1.2.3 补码的运算1.2.4 定点数与浮点数1.2.5 BCD码及其十进制调整1.3 计算机中非数值数据的信息表示1.3.1 西文信息的表示1.3.2 中文信息的表示1.3.3 计算机中图、声、像信息的表示1.4 微型计算机基本工作原理1.4.1 微型计算机硬件系统组成1.4.2 微型计算机软件系统1.4.3 微型计算机中指令执行的基本过程 1.5 评估计算机性能的主要技术指标1.5.1 CPU字长1.5.2 内存储器与高速缓存1.5.3 CPU指令执行时间1.5.4 系统总线的传输速率1.5.5 iP指数1.5.6 优化的内部结构1.5.7 I/O设备配备情况1.5.8 软件配备情况习题1第2章 80x86/Pentium微处理器2.1 80x86/Pentium微处理器的内部结构 2.1.1 8086/8088微处理器的基本结构2.1.2 80386CPU内部结构2.1.3 80x87数学协处理器2.1.4 Pentium CPU内部结构2.2 微处理器的主要引脚及功能2.2.1 8086/8088 CPU引脚功能2.2.2 80386 CPU引脚功能2.2.3 Pentium CPU引脚功能2.3 系统总线与典型时序2.3.1 CPU系统总线及其操作2.3.2 基本总线操作时序2.3.3 特殊总线操作时序2.4 典型CPU应用系统2.4.1 8086/8088支持芯片2.4.2 8086/8088单CPU(最小模式)系统 2.4.3 8086/8088多CPU(最大模式)系统 2.5 CPU的工作模式2.5.1 实地址模式2.5.2 保护模式2.5.3 虚拟8086模式2.5.4 系统管理模式2.6 指令流水线与高速缓存2.6.1 指令流水线和动态分支预测2.6.2 片内高速缓存2.7 64位CPU与多核微处理器习题2第3章 80x86/Pentium指令系统3.1 80x86/Pentium指令格式3.2 80x86/Pentium寻址方式3.2.1 寻址方式与有效地址EA的概念 3.2.2 各种寻址方式3.2.3 存储器寻址时的段约定3.3 8086/8088 CPU指令系统3.3.1 数据传送类指令3.3.2 算术运算类指令3.3.3 逻辑运算与移位指令3.3.4 串操作指令3.3.5 控制转移类指令3.3.6 处理器控制类指令3.4 80x86/Pentium CPU指令系统3.4.1 80286 CPU的增强与增加指令 3.4.2 80386 CPU的增强与增加指令 3.4.3 80486 CPU增加的指令3.4.4 Pentium系列CPU增加的指令 3.5 80x87浮点运算指令3.5.1 80x87的数据类型与格式3.5.2 浮点寄存器3.5.3 80x87指令简介习题3第4章汇编语言程序设计4.1 程序设计语言概述4.2 汇编语言的程序结构与语句格式 4.2.1 汇编语言源程序的框架结构4.2.2 汇编语言的语句4.3 汇编语言的伪指令4.3.1 基本伪指令语句4.3.2 80x86/Pentium CPU扩展伪指令 4.4 汇编语言程序设计方法4.4.1 程序设计的基本过程4.4.2 顺序结构程序设计4.4.3 分支结构程序设计4.4.4 循环结构程序设计4.4.5 子程序设计与调用技术4.5 模块化程序设计技术4.5.1 模块化程序设计的特点与规范4.5.2 程序中模块间的关系4.5.3 模块化程序设计举例4.6 综合应用程序设计举例4.6.1 16位实模式程序设计4.6.2 基于32位指令的实模式程序设计 4.6.3 基于多媒体指令的实模式程序设计 4.6.4 保护模式程序设计4.6.5 浮点指令程序设计4.7 汇编语言与C/C 语言混合编程4.7.1 内嵌模块方法4.7.2 多模块混合编程习题4第5章半导体存储器5.1 概述5.1.1 半导体存储器的分类5.1.2 存储原理与地址译码5.1.3 主要性能指标5.2 随机存取存储器(RAM)5.2.1 静态RAM(SRAM)5.2.2 动态RAM(DRAM)5.2.3 随机存取存储器RAM的应用5.3 只读存储器(ROM)5.3.1 掩膜ROM和PROM5.3.2 EPROM(可擦除的PROM)5.4 存储器连接与扩充应用5.4.1 存储器芯片选择5.4.2 存储器容量扩充5.4.3 RAM存储模块5.5 CPU与存储器的典型连接5.5.1 8086/8088 CPU的'典型存储器连接5.5.2 80386/Pentium CPU的典型存储器连接 5.6 微机系统的内存结构5.6.1 分级存储结构5.6.2 高速缓存Cache5.6.3 虚拟存储器与段页结构习题5第6章输入/输出和中断6.1 输入/输出及接口6.1.1 I/O信息的组成6.1.2 I/O接口概述6.1.3 I/O端口的编址6.1.4 简单的I/O接口6.2 输入/输出的传送方式6.2.1 程序控制的输入/输出6.2.2 中断控制的输入/输出6.2.3 直接数据通道传送6.3 中断技术6.3.1 中断的基本概念6.3.2 中断优先权6.4 80x86/Pentium中断系统6.4.1 中断结构6.4.2 中断向量表6.4.2 中断响应过程6.4.3 80386/80486/Pentium CPU中断系统6.5 8259A可编程中断控制器6.5.1 8259A芯片的内部结构与引脚6.5.2 8259A芯片的工作过程及工作方式 6.5.3 8259A命令字6.5.4 8259A芯片应用举例6.6 82380可编程中断控制器6.6.1 控制器功能概述6.6.2 控制器主要接口信号6.7 中断程序设计6.7.1 设计方法6.7.2 中断程序设计举例习题6第7章微型机接口技术7.1 概述7.2 可编程定时/计数器7.2.1 概述7.2.2 可编程定时/计数器82537.2.3 可编程定时/计数器82547.3 可编程并行接口7.3.1 可编程并行接口芯片8255A7.3.2 并行打印机接口应用7.3.3 键盘和显示器接口7.4 串行接口与串行通信7.4.1 串行通信的基本概念7.4.3 可编程串行通信接口8251A7.4.3 可编程异步通信接口INS82507.4.4 通用串行总线USB7.4.5 I2C与SPI串行总线7.5 DMA控制器接口7.5.1 8237A芯片的基本功能和引脚特性 7.5.2 8237A芯片内部寄存器与编程7.5.3 8237A应用与编程7.6 模拟量输入/输出接口7.6.1 概述7.6.2 并行和串行D/A转换器7.6.3 并行和串行A/D转换器习题7第8章微型计算机系统的发展8.1.1 IBM PC/AT微机系统8.1.2 80386、80486微机系统8.1.3 Pentium及以上微机系统8.2 系统外部总线8.2.1 ISA总线8.2.2 PCI局部总线8.2.3 AGP总线8.2.4 PCI Express总线8.3 网络接口与网络协议8.3.1 网络基本知识8.3.2 计算机网络层次结构8.3.3 网络适配器8.3.4 802.3协议8.4 80x86的多任务保护8.4.1 保护机制与保护检查8.4.2 任务管理的概念8.4.3 控制转移8.4.4 虚拟8086模式与保护模式之间的切换 8.4.5 多任务切换程序设计举例习题8参考文献《微型计算机原理及应用》(吴宁著)目录本书是普通高等教育“十一五”国家级规划教材和国家精品课程建设成果,以教育部高等学校非计算机专业计算机基础课程“基本要求V4.0”精神为指导,力求做到“基础性、系统性、实用性和先进性”的统一。
单片机原理及接口技术 第3版课件(梅丽凤)第7章
MOV TH1,#0D8H;赋初值 MOV TL1,#0F0H MOV IE,#88H ;CPU开中断,TT1开中断 SETB TR1 ;启动T1工作 MOV 60H,#100;赋毫秒计数初值 MOV 61H,#60 ;赋秒计数初值 CLR 4FH ;清标志位 TT:JNB 4FH,TT ;等1min时间到 CLR 4FH ;1min到,清标志位 CPL P1.0 ;输出反相 AJMP TT ;反复循环 END
ORG 0030H ;主程序初始化 START:MOV SP,#60H ;置堆栈指针 SETB IT0 ;置边沿触发方式 MOV IP,#01H ;置为高优先级 MOV IE,#81H ;CPU开中断、开中断 MOV 30H,#00H ;里程计数器单元清0 MOV 31H,#00H MOV 32H,#00H LJMP MAIN ;转主程序执行,并等待中断 ORG 0100H ;中断程序,中断一次,里程加2 m INT:PUSH ACC ;保护现场 PUSH PSW MOV A,30H ;读里程计数器低8位 ADD A,#02 ;低8位计数器加2m(运转一圈) MOV 30H,A ;回存
【例7-3】 出租车计价器的计程方法是:车轮 每运转一圈产生一个负脉冲,从外中断 (P3.2)引脚输入,行使里程为轮胎周长× 运转圈数。假设轮胎周长为2m,试编程实时 计算出租车行使里程(单位:米),数据存 放到32H、31H、30H单元中。 编程: ORG 0000H ;上电、复位入口地址 L JMP START ;转向主程序初始化 ORG 0003H ;中断入口地址 LJMP INT ;转向中断服务程序
图7-4 中断处理过程流程图
7.3.4 中断请求的撤除
响应某中断请求后,其中断请求标志位应及时清除,否则 会引起另一次中断。各标志位清除方法不一样。
第七章AT89s52单片机中断系统
高 优 先 级
低 优 先 级
7
3.中断触发方式
①.电平触发方式 ②.下降沿触发方式
第七章 AT89S52单片机中断系统
8
7.2.2 中断标志与控制
单片机设置了5个专用寄存器用于中 断控制,用户通过设置其状态来管理中 断系统。5个专用寄存器包括:
定时器/计数器0,1控制寄存器TCON; 定时器2控制寄存器T2CON; 串行口控制寄存器SCON; 中断允许控制寄存器IE; 中断优先级控制寄存器IP。
第七章 AT89S52单片机中断系统
9
1.定时器/计数器0,1控制寄存器TCON
D7 D6 D5 D4 D3 D2 D1 D0
TCON TF1
TF0
IE1 IT1 IE0 IT0 字节地址:88H
位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H 可位寻址
TF1(TCON.7)—T1计数溢出,由硬件置位,响应中断
2
(2)中断源
中断源通常可分为以下几种: 设备中断 定时中断 故障源中断 程序性中断源
第七章 AT89S52单片机中断系统
3
(4) 中断识别方式
一般设有两种识别方式: 查询中断 矢量中断。
第七章 AT89S52单片机中断系统
4
(5) 中断的其它概念
中断请求、中断标志、中断允许、 中断入口地址(中断矢量)、中断 嵌套、中断保护、中断服务程序、 中断源清除、中断屏蔽、中断返回、 中断等待 。
当EA=1时,允许所有中断开放,总允许后,各中断的允许 或禁止由各中断源的中断允许控制位进行设置;
当EA=0时,屏蔽所有中断。
第七章 AT89S52单片机中断系统
14
汇编语言第7章 中断和DOS功能调用
例7.3:输入字符串
buffer db 81
;定义缓冲区 ;第1个字节填入可能输入的最大字符数 db 0 ;存放实际输入的字符 数 db 81 dup(0) ;存放输入的字符串 ... mov dx,seg buffer ;伪指令seg取得buffer的段地址 mov ds,dx ;设置数据段DS mov dx,offset buffer mov ah,0ah int 21h
⒉ 字符串的输出
从键盘输入数据
⒊ 字符的输入 ⒋ 字符串的输入
1. 字符输入的功能调用
DOS功能调用INT 21H 功能号:AH=01H 出口参数:AL=字符的ASCII码 功能:获得按键的ASCII代码值
调用此功能时,若无键按下,则会一直
等待,直到按键后才读取该键值
例7.1:
IRET
;中断返回指令:实现中断返回
7.3 系统功能调用
21H 号中断是 DOS 提供给用户的用于调
用系统功能的中断,它有近百个功能供用 户选择使用,主要包括设备管理、目录管 理和文件管理三个方面的功能 ROM-BIOS 也以中断服务程序的形式, 向程序员提供系统的基本输入输出程序 汇编语言程序设计需要采用系统的各种 功能程序 充分利用操作系统提供的资源是程序设 计的一个重要方面,需要掌握
实现中断返回73系统功能调用?21h号中断是dos提供给用户的用于调用系统功能的中断它有近百个功能供用户选择使用主要包括设备管理目录管理和文件管理三个方面的功能提供给用户的用于调用系统功能的中断它有近百个功能供用户选择使用主要包括设备管理目录管理和文件管理三个方面的功能?rombios也以中断服务程序的形式向程序员提供系统的也以中断服务程序的形式向程序员提供系统的基本输入输出程序?汇编语言程序设计需要采用系统的各种功能程序汇编语言程序设计需要采用系统的各种功能程序?充分利用操作系统提供的资源是程序设计的一个重要方面需要掌握充分利用操作系统提供的资源是程序设计的一个重要方面需要掌握功能调用的步骤通常按照如下4个步骤进行
第7章单片机的中断系统答案
一、选择题1、若要求最大定时时间为216×机器周期,则应使定时器工作于 B 。
A.工作方式0B.工作方式lC.工作方式2D.工作方式32、若要求最大定时时间为213×机器周期,则应使定时器工作于 A 。
A.工作方式0B.工作方式lC.工作方式2D.工作方式33、若要求最大定时时间为28×机器周期,则应使定时器工作于 C ,D 。
A.工作方式0B.工作方式1C.工作方式2D.工作方式34、定时器方式控制寄存器TMOD中MlM0为l l时,则设置定时器工作于 D 。
A.工作方式0B.工作方式lC.工作方式2D.工作方式35、6MHz晶振的单片机在定时工作方式下,定时器可能实现的最小定时时间是 B .A.1 u sB.2 u sC.4 u sD.8 u s ’6、12MHz晶振的单片机在定时工作方式下,定时器可能实现的最小定时时间是 A .A.1 u sB.2 u sC.4 u sD.8 u s7、12MHz晶振的单片机在定时工作方式下,定时器可能实现的最大定时时间是 B .A.4096 u sB.8192 u SC.1638 u sD.32768 u s8、定时器/计时器0的初始化程序如下:MOV TMOD,#06HMOV TH0.#0FFHMOV TLO,#0FFHSETB EASETB ET0执行该程序段后,把定时器/计时器0的工作状态设置为 D 。
A. 工作方式0,定时应用,定时时间2 u s,中断禁止B.工作方式l,计数应用,计数值255,中断允许C.工作方式2,定时应用,定时时间510 u s,中断禁止D.工作方式2,计数应用,计数值1,中断允许9、设串行口工作于方式l,晶振频率为6MHz,波特率为1200位/秒,SMOD=0,则定时器l的计数初值为 C 。
A.FlHB.F4HC.F3HD.FOH10、以下所列特点,不属于串行工作方式0的是 D 。
A.波特率是固定的,为时钟频率的十二分之一B.8位移位寄存器C.TI和RI都须用软件清零D.在通信时,须对定时器l的溢出率进行设置11、通过串行口发送或接收数据时,在程序中应使用 A 。
第七章中断与中断控制知识题选解
7.7 8259A 只有两个端口地址,但可读/写寄存器数远远多于两个,如何保证正确读/写? 解:8259A 中使用了如下几种方法来实现同一地址寻址多个内部寄存器: (1)利用命令字OCW:事先指定读IRR 或ISR;(2)利用命令字中位4和位3的状态来决定写ICW1,OCW:还是写OCW3 ; (3)根据顺序来决定同一接口地址下的命令字(ICWZ,ICW3 ,ICW4,OCW1) 。
7.11某80X86微机的中断系统有5个外部中断源,接在8259A 的07~IR IR 端,中断类型码为5BH,5CH,5DH,5EH 和5FH , 8259A 的端口地址为B0H,B1H 。
允许它们以全嵌套工作方式工作,中断请求采用电平触发方式。
试编写8259A 的初始化程序。
解:先确定要写哪些控制字,以及每个控制字对应位的取值,再编程。
此题,要写的控制字及位取值如下:(1) 1ICW = x x xllxll ,即:中断请求为电平触发、单片8259A 、写ICW4 。
(2) 2ICW =01011x x x ,即:此片8259A 中断类型码高5位为:01011 (3) ICW3无需写。
( 4 ) ICW4 = 00000 x 01,即:一般嵌套、非缓冲、正常EOI ,8086 /8088模式。
其中x 表示取值为0或1均可。
假定控制字中的x 固定为0,初始化程序如下: MOV DX,0B0H ;指向端口0MOV AL,1BH ;中断请求为边沿触发、单片8259A 、写ICW4 OUT DX , AL ;写ICWI INC DX ;指向端口1MOV AL, 58H ;中断类型码高5位为01011 OUT DX , AL ;写ICW2MOV AL,01H ;一般嵌套、非缓冲、正常EOI , 8086 /8088模式OUT DX , AL ;写ICW47.12某80X86系统中设置三片8259A 级联使用,一片为主,两片为从,从片分别接人主片的2IR 和4IR 。
可编程控制器第7章习题答案
第7章习题答案1. 可编程控制器系统设计一般分为几步?答:(1)工艺分析。
(2)选择合适的PLC类型。
(3)分配I/O点。
(4)程序设计。
(5)控制柜或操作台的设计和现场施工。
(6)应用系统整体调试。
(7)编制技术文件。
2. 如何选择合适的PLC类型?答:在选择PLC机型时,主要考虑下面几点:○1功能的选择。
对于小型的PLC主要考虑I/O扩展模块、A/D与D/A模块以及指令功能(如中断、PID等)。
○2I/O点数的确定。
统计被控制系统的开关量、模拟量的I/O点数,并考虑以后的扩充(一般加上10%~20%的备用量),从而选择PLC的I/O点数和输出规格。
○3内存的估算。
用户程序所需的内存容量主要与系统的I/O点数、控制要求、程序结构长短等因素有关。
一般可按下式估算:存储容量=开关量输入点数×10+开关量输出点数×8+模拟通道数×100+定时器/计数器数量×2+通信接口个数×300+备用量。
3.题参考程序I/O分配输入输出起动按钮:I0.0 Y1:Q0.1停止按钮(常闭按钮):I0.4 Y2:Q0.2L1按钮:I0.1 Y3:Q0.3L2按钮:I0.2 M:Q0.4L3按钮:I0.34.参考程序I/O分配输入输出起动按钮:I0.0 M1:Q0.1 停止按钮(常闭按钮):I0.5 M2:Q0.2 负载或故障A:I0.1 M3:Q0.3负载或故障B:I0.2 M4:Q0.4负载或故障C:I0.3负载或故障D:I0.4传送带故障的情况5. PLC对安装环境有何要求?PLC的安装方法有几种?答:安装环境:PLC适用于工业现场,为了保证其工作的可靠性,延长PLC的使用寿命,安装时要注意周围环境条件:环境温度在0~55℃范围内;相对湿度在35%~85%范围内(无结霜),周围无易燃或腐蚀性气体、过量的灰尘和金属颗粒;避免过度的震动和冲击;避免太阳光的直射和水的溅射。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中断处理过程可分以下几个步骤: (1)关中断 进入不可再次响应中断的状态,由硬件自动实现。因为 接下去要保存断点,保存现场。在保存现场过程中,即使有 更高级的中断源申请中断,CPU也不应该响应;否则,如果 现场保存不完整,在中断服务程序结束之后,也就不能正确 地恢复现场并继续执行现行程序。 (2)保存断点和现场。 为了在中断处理结束后能正确地返回到中断点,在响应 中断时,必须将断点(CS:IP)保存起来。 现场信息一般指的是标志寄存器,中断屏蔽寄存器和CPU 中各寄存器的内容。
②中断屏蔽
当产生中断请求后,用程序方式有选择地封锁部分中断, 而允许其余部分中断仍得到响应,称为中断屏蔽。 实现方法:是为每个中断源设置一个中断屏蔽触发器来屏 蔽该设备的中断请求。将该触发器置“1”,则对应的设备中 断被封锁,若将其置“0”,才允许该设备的中断请求得到响 应。由各设备的中断屏蔽触发器组成中断屏蔽寄存器。
1. 中断:是由I/O设备或其他非预期的急需处理的事件引 起的,它使CPU暂时中断现在正在执行的程序,而转至另一 服务程序去处理这些事件,处理完后再返回原程序。 2.中断源:引起中断的事件称作中断源. 3.中断服务程序 对某事件的处理实际上就是去执行一段例行程序,该 程序被称为中断处理例行程序或中断服务程序. 4.中断系统:实现中断的硬件及软件称为中断系统。 5.中断优先权 当有多个中断源发出中断请求时,需要通过适当办法 (软件的、硬件的、软硬件结合的)决定CPU究竟首先处理哪 个中断请求。
重缓急进行排队并给予优先权。 对设备分配优先权时,必须考虑数据的传输率和服务程序的 要求.数据的有效时间短,则该设备的优先权高。
7.1 程序中断输人输出方式 (3) 禁止中断和中断屏蔽 ①禁止中断
产生中断源后,由于某种条件的存在,CPU不能中止现行 程序的执行,称为禁止中断。 在CPU内部设有一个“中断允许”触发器。只有该触发 器为“1”状态时,才允许处理机响应中断;“中断允许”触 发器通过“开中断”或“关中断”指令来置位、复位。进入 中断服务程序后自动“关中断”。
三片8259A
级联图
8259A工作方式
1.优先权的管理方式
7.2 8259A可编程中断控制器
中断嵌套:指某一较高级的中断打断了另一个较低级中断服务
程序的运行,形成多重中断。
(1)全嵌套方式 在全嵌套方式下,8259A所管理的8级中断优先级固定不变,并
且只允许中断级别高的中断源去打断中断级别低的中断服务。
7.2 8259A可编程中断控制器
8259A中断控制器结构
数据总线缓冲器 读写控制电路 级联缓冲/比较器 中断请求寄存器(IRR) 中断服务寄存器(ISR) 中断屏蔽寄存器(IMR) 优先级判别器(PR) 中断控制逻辑
7.2 8259A可编程中断控制器
1)中断请求寄存器IRR :8位
7.1.5
中断处理
7.1 程序中断输人输出方式
(3)判别中断源,转向中断服务程序。 在多个中断源同时请求中断的情况下,本次实际响应的 只能是优先权最高的那个中断源。并转入相应的中断服务程 序入口。 (4)开中断。 因为接下去就要执行中断服务程序,开中断将允许更 高级中断请求得到响应,实现中断嵌套。 (5)执行中断服务程序。 不同中断源的中断服务程序是不同的,实际有效的中断 处理工作是在此程序段中实现的。 (6)退出中断。 在退出时,又应进入不可中断状态,即关中断,恢复现 场、恢复断点,然后开中断,返回原程序执行。
7.1.4.中断处理
↓ 关 中 断 ↓ 保存断点,保存现场 ↓ 判别中断条件 转入中断服务程序 ↓ 开 中 断 ↓ 执行中断服务程序 ↓ 关 中 断 ↓
7.1 程序中断输人输出方式
↓ 恢复现场,恢复断点 ↓ 开 中 断 ↓ 返回断点
中断处理过程
7.1.4.中断处理
1.中断处理过程
7.1 程序中断输人输出方式
中断请求寄存器接受外设来的中断请求(IR0~IR7),每 一位表示一个外部设备的中断请求。 若 IR0-IR7 引脚上有中断申请,则将相应位置1。。 2)中断屏蔽寄存器IMR :8位 决定中断请求寄存器(IRR)中的中断申请是否进入优先 级判决电路。 IMR对应位为0,允许中断申请进入优先级判决电路; IMR对应位为1,则不允许进入,即中断申请被IMR屏蔽。 3)中断服务寄存器ISR:8位 记录CPU正在响应的中断。 ISR中的某位为1,表示CPU正在响应此级中断, ISR中的某位为0,表示CPU没有或已响应完此级中断。
7.1 程序中断输人输出方式
(4) 多重中断处理
多重中断是指在处理某一个中断过程又发生了新的中断 请求,从而中断该服务程序的执行,又转去进行新的中断 处理。这种重叠处理中断的现象又称为中断嵌套。 一般情况下,在处理某级中的某个中断时,与它同级的 或比它低级的新中断请求应不能中断它的处理。而比它优 先级高的新中断请求却能中断它的处理。 当CPU正在执行某中断服务程序期间,若有更高优先级 的中断请求发生, CPU处于开中断状态时,CPU暂停对原中 断服务程序的执行,转去执行新的中断请求的服务程序, 处理完后再返回原中断服务程序的执行。
5)数据总线缓冲器
8位的双向三态缓冲器,用作8259A与系统总线的接口,传 送命令控制字、状态字和中断向量。
7.2 8259A可编程中断控制器
6)读/写控制逻辑 将决定数据的传送方向。RD为读命令,而WR为写命令。 CS为8259A芯片的选择信号,A0与8259A中被选的寄存器地 址有关。
8259A单元的不同工作方式是通过编程来进行选择的。 CPU送出一系列的初始化控制字和操作控制字来执行选定 的操作。CPU将8259A当作两个I/O端口或两个存储单元来 寻址,由A0端确定这些控制字存入读/写逻辑中哪个控制 字寄存器。
(2)特殊全嵌套方式 特殊全嵌套方式与全嵌套方式基本相同,所不同的是,当CPU
处理某一级中断时,如果有同级中断请求,那么CPU也会做出响
应,从而形成了对同一级中断的特殊嵌套。
24
1.优先权的管理方式
7.2 8259A可编程中断控制器
固定优先级方式:指系统中的每一个中断源的优先级别是固定 不变的。并且中断级别高的中断输入能中断 优先级别低的中断。 (3)优先级普通循环方式 适用于系统中具有相同优先权中断设备的情况。当某 一个外部设备受到中断服务后,它的优先级别自动降为最 低,而原来比其低一级的设备自动变为最高级别。 (4)优先级特殊循环方式 指系统初始中断最低优先级由编码确定,而其它优先 级则随之依次确定。即初始化的优先级是由程序控制的, 而不是默认的IR0(最高)~IR7(最低)。
在一道程序的运行中,由I/O中断系统切换到另外一道 程序运行。也可以通过分配每道程序一个固定时间片,利用 时钟定时发中断进行程序切换。 实现实时处理 实现应用程序和操作系统的联系 可以在用户程序中安排一条“Trap”指令进入操作系统, 称之为“软中断”。
7.1 程序中断输人输出方式 7.1.2. 中断的基本概念
第 章 中断和中断控制
7.1 中断系统 7.1.1 中断的基本概念 7.1.2 中断的类型 7.1.3 中断请求的提出和传送 7.1.4 中断优先级 7.1.5 中断响应 7.1.6 中断处理 7.2 8086的中断系统 7.2.1 外部中断 7.2.2 内部中断 7.2.3 中断向量表 7.2.4 中断过程 7.3 8259A中断控制器 7.3.1 Intel 8259A的编程结构与性能 7.3.2 Intel8259A的工作原理 7.3.3 Intel8259A的工作方式 7.3.4 Intel 8259A的初始化命令 7.3.5 Intel8259A应用 7.3.6 多片Intel8259A组成的主从式 中断系统
7.2 8259A可编程中断控制器
4)优先级判别器PR 当输入端IR0-IR7中有多个中断请求信号同时产生时,根 据新进入的中断申请和ISR的内容,决定是否发中断申请信号。 –如果进入的中断申请比 ISR 中记录的中断优先级高, 则通过 8259A 的INT引脚向CPU发出中断请求信号; –如果进入的中断申请比 ISR 中记录的中断优先级低级 或同级,则不向 CPU 发中断请求信号。
19Βιβλιοθήκη 7.2 8259A可编程中断控制器
中断类型码
在8259A中,为每一个外设的中断请求(IR0~IR7) 设置一个中断类型码(8位),当其中一个外设的中断请 求被CPU响应后,8259A送出与该中断所对应的中断类型码, 作为寻找中断服务程序入口的依据。 中断类型码(8位)由两部分组成,其高5位是由计算 机初始化程序设置的,保存在8259A中以后不再改变;低3 位由被响应的中断请求序号提供。 [例如] IR3的中断请求被响应,中断类型码的低3位即为011。 在同一个8259A中,高5位为8个中断请求共用。假设与IR0 对应的中断类型码为40H,那么与IR1~IR7对应的中断类 型码为41H~47H。
地址 00000 00001 00002 00003 00004 4n 4n+2
内容 0#偏移量低8位 0#偏移量高8位 0#段基址低8位 0#段基址高8位 1#偏移量低8位 n#偏移量低8位 n#偏移量高8位 n#段基址低8位 n#段基址高8位
0#中断向量
n#中断向量
003FF
中断向量表
7.1 程序中断输人输出方式
第 7.2节
7.2 8259A可编程中断控制器
Intel 8259A基本功能
(1)用于管理和控制8086系统的外部中断请求; (2)实现可屏蔽中断的优先级判决;可以实现中断的 完全嵌套。 (3)向CPU提供中断类型号码; (4)可以屏蔽任一指定的中断源; (5)单片8259A芯片支持8级中断,而8259A芯片的级连 最多可以支持64级中断(一共使用9片8259A芯片)。
7.1
程序中断输人输出方式
7.1.2. 中断的基本概念
6.中断向量 每种中断都有一个与之对应的中断服务程序。中断向量就 是中断处理子程序的入口地址。 每个中断向量占用4个字节,其中低两个字节为中断向量的 偏移量部分,高两个字节为中断向量的段基址部分。 7.中断类型号 80x86系统共支持256种中断,相应编号为0-255之间唯一 的编号,把这些编号称为中断类型号。 8.中断向量表 按中断类型号从小到大的顺序,将中断向量存放在内存 的最低端。