微机原理习题7-中断控制器
微机原理及应用ch7-stu

22
7.3 8259A中断控制器
中断服 务寄存 器
中断请 求寄存 器
中断屏蔽寄存器
23
1. 中断控制
1. 中断请求寄存器IRR
锁存外部IR0~IR7的8个中断请求信号 Di位为1表示IRi引脚有中断请求;为0表示无请求
2.
中断屏蔽寄存器IMR(即OCW1)
保存对中断请求信号IRi的屏蔽状态 Di位为1表示IRi中断被屏蔽(禁止);为0表示允许
第7章 中断控制接口
西南石油大学计算机科学学院 教师 郑 津
如何设计实现抢答器?
问题:
选手按下抢答器后微处理器如何处理?
2
第7章 中断控制接口
教学重点
8088 CPU的中断系统
8259A的中断工作过程和工作方式 中断服务程序的编写
3
第七章 中断控制接口
7.1 8088中断系统 8259A中断控制器 8259A在IBMPC系列机上的应用 中断处理程序的设计
IF=1:可屏蔽中断会被响应
中断控制器管理可屏蔽中 断请求
常称为:开中断、允许中断、中断开放 执行指令STI,使IF=1
执行中断返回指令IRET恢复原IF状态
明确IF标志的状态是关键
11
7.1 8088中断系统
A
8088的中断类型
B
8088的中断响应过程
C
8088的中断向量表
12
7.1.2 8088的中断响应过程
例如:DEBUG.EXE调试程序中:G 0123 设置的断点,就是利用INT 3指令实现的
8
7.1.1 8088的中断类型
内部中断
3、单步中断(——中断向量号1)
——单步中断TF=1时,则在每条指令执行结束后产生一个向 量号为1的内部中断 例如:DEBUG.EXE调试程序中:单步命令T 就利用单步中断实现对程序的单步调试
微机原理课后习题答案(机械工业出版社,第二版)[1]
![微机原理课后习题答案(机械工业出版社,第二版)[1]](https://img.taocdn.com/s3/m/8f97f71f6bd97f192279e9a6.png)
第1章计算机基础知识3. 填空:(1) (1234)10=( )2=( )16(2) (34.6875)10=( )2=( )16(3) (271.33)10=( )2=( )16(4) (101011001001)2=( )10=( )16(5) (1AB.E)16=( )10=( )2(6) (10101010.0111)2=( )10=( )16【解】(1) (1234)10=( 10011010010 )2=( 4D2 )16(2) (34.6875)10=( 100010.1011 )2=( 22.B )16(3) (271.33)10=( 100001111.010101 )2=( 10F.54 )16(4) (101011001001)2=( 2761 )10=( AC9 )16(5) (1AB.E)16=( 427.875 )10=(110101011.111 )2(6) (10101010.0111)2=( 170.4375 )10=( AA.7 )164. 已知X=36,Y=-136,Z=-1250,请写出X、Y、Z的16位原码、反码和补码。
【解】[X]原=0000 0000 0010 0100[Y]原=1000 0000 1000 1000[Z]原=1000 0100 1110 0010[X]反=0000 0000 0010 0100[Y]反=1111 1111 0111 0111[Z]反=1111 1011 0001 1101[X]补=0000 0000 0010 0100[Y]补=1111 1111 0111 1000[Z]补=1111 1011 0001 11105. 已知[X]补=01010101B,[Y]补=10101010B,[Z]补=1000111111111111B,求X、Y、Z及X+Y、Y-Z 的十进制值为多少?【解】Y-Z运算时Y需要扩展符号位X=85Y=-86Z=-28673X+Y=01010101B+10101010B=11111111B=-1Y-Z=11111111 10101010B-10001111 11111111B=11111111 10101010B+01110000 00000001B=0110 1111 1010 1011B=285877. 将下列十进制数表示为8421BCD码:(1) 8609 (2) 5254 (3) 2730 (4) 2998【解】 (1)1000 0110 0000 1001(2)0101 0010 0101 0100(3)0010 0111 0011 0000(4)0010 1001 1001 10008. 将下列8421BCD码表示为十进制数和二进制数:(1) 01111001 (2) 001010000101 (3) 011000000111 (4) 010*********【解】(1)79,1001111B(2)285,100011101B(3)607,1001011111B(4)590,1001001110B9. 将下列数值或字符串表示为相应的ASCII码:(1) 51 (2) 7FH (3) C6H (4) Computer (5) how are you?【解】(1)0110101 0110001(2)0110111 1100110 1101000(3)1100011 0110110 1101000(4)1100011 1101111 1101101 1110000 1110101 1110100 1100101 1110010(5)1101000 1101111 1110111 0100000 1100001 1110010 1100101 0100000 1111001 1101111 1110101 011111112. 微型计算机由哪几部分组成,各部分的功能是什么?【解】微型计算机由运算器、控制器、存储器、输入设备、输出设备五大部分组成。
微机原理与接口技术--习题解答

第一章微型计算机概述1.1微处理器、微型计算机和微型计算机系统三者之间有什么不同?答:①微处理器是微型计算机的核心,是微型计算机的一部分。
它是集成在一块芯片上的CPU,由运算器和控制器组成。
②微型计算机包括微处理器、存储器、I/O接口和系统总线,是微型计算机系统的主体。
③微型计算机系统包括微型计算机、外设及系统软件三部分。
1.2CPU在内部结构上由哪几部分组成?CPU应具备哪些主要功能?答:1.CPU在内部结构上由以下几部分组成:①算术逻辑部件(ALU);②累加器和通用寄存器组;③程序计数器(指令指针)、指令寄存器和译码器;④时序和控制部件。
2.CPU应具备以下主要功能:①可以进行算术和逻辑运算;②可保存少量数据;③能对指令进行译码并执行规定的动作;④能和存储器、外设交换数据;⑤提供整个系统所需要的定时和控制;⑥可以响应其他部件发来的中断请求。
1.3累加器和其他通用寄存器相比,有何不同?答:许多指令的执行过程以累加器为中心;输入/输出指令一般也以累加器来完成。
1.4微处理器的控制信号有哪两类?答:一类是通过对指令的译码,由CPU内部产生的。
这些信号由CPU送到存储器、I/O接口电路和其他部件。
另一类是微型机系统的其他部件送到CPU的。
通常用来向CPU发出请求。
如中断请求、总线请求等。
1.5微型计算机采用总线结构有什么优点?答:首先是系统中各功能部件之间的相互关系变为各个部件面向总线的单一关系。
其次是一个部件只要符合总线标准,就可以连接到采用这种总线标准的系统中,使系统功能得到扩充。
1.6数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么,要靠什么来区分地址或数据?答:1.数据总线是双向三态;地址总线是单向输出三态。
2.数据和地址复用时,必须有一个地址选通信号来区分该总线上输出的是地址还是数据。
1.7控制总线传输的信号大致有哪几种?答:包括CPU送往存储器和I/O接口的控制信号,如读信号、写信号、中断响应信号、存储器和I/O接口区分信号等。
《微机原理与接口》知识点第7章中断控制器8259

五、引入中断请求的方式
1、边沿触发方式
特点:将中断请求输入端出现的上升沿作为中断请求信号。
2、电平触发方式 特点:将中断请求输入端出现的高电平作为中断请求信号。
3、中断查询方式 特点: 1.外设通过向8259A发中断请求信号要求CPU服务。
2.CPU内部的中断允许触发器复位。
3.CPU使用软件查询来确认中断源。
第7章 中断控制器
7.1 8259A概述
7.2 8259A的引脚信号、编程结构和工作原理 7.3 8259A的工作方式 7.4 8259A的初始化命令字和操作命令字
7.5 8259A使用举例
第7章 中断控制器8259A 重点: 1、8259A的编程结构和工作原理 2、8259A的初始化命令字、操作命令字 3、8259A的初始化流程和初始化编程 4、8259A的应用
;×××10×11B ;设置ICW1 ;00011000B~ 00011111B ;设置ICW2 ;00000001B ;设置ICW4
三、8259A的操作命令字
1、OCW1 :中断屏蔽操作命令字
D7 M7 D6 M6 D5 M5 D4 M4 D3 M3 D2 M2 D1 M1 D0 M0 A0 1
中断 触发 方式
A0
0
是否设 置ICW4 规定单片或 级连方式
1:设置ICW4 0:不设ICW4
1:单片方式 0:级连方式
2、ICW2 :设置中断类型码初始化命令字
ICW2高五位与中断类型码的高五位相同。 注:该命令字必须写入“奇地址”端口,即A0=1。
3、ICW3 :标志主/从片初始化命令字
D7 D6 D5 D4 D3 D2 D1 D0
特点:发结束命令时,指令内不指定清除ISR中的哪一位, 由8259A自动将最高优先级对应的ISR中非零位复位,结 束当前正在处理的中断。 用于全嵌套方式。
微机原理第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章练习题及答案

第7章输入/输出与中断一、自测练习题㈠选择题1.一微机系统有10根地址线用于I/O端口寻址,因而具有I/O空间的范围是( )字节。
A) 1024 B) 10K C) 0.5M D) 1M2.8086CPU读/写一次存储器或I/O端口所需的时间称为一个( )。
A) 总线周期 B) 指令周期 C) 时钟周期 D) 基本指令执行时间3.微型计算机的输入/输出有三种不同的控制方法,其中以( )控制的输入/输出是微机进行I/O的一种最主要的控制方式。
A) 程序控制 B) 中断控制C) DMA控制D) 以上均可4.程序查询I/O方式的工作流程是按( )的次序完成一个字符的传输。
A) 写数据端口,读/写控制端口B) 读状态端口,读/写数据端口C) 写控制端口,读状态端口,写数据端口D) 随I/O接口的具体要求而定5.在CPU与外设的I/O传送控制方式中,效率高、实时性强的方式是( )。
A) 同步传送 B) 查询传送 C) 无条件传送 D) 中断传送6.在CPU与外设的I/O传送控制方式中,传送速度最快的方式是( )。
A) 无条件传送 B) 查询传送 C) 中断传送 D) DMA传递7.用具有两个状态(“0”和“1”态)的一组开关作简单输入设备时,应采用( )传送方式来输入信息。
A) 无条件B) 查询C) 中断D) DMA8.用一组发光二极管作为简单输出设备时,应采用( )传送方式来输出信息。
A) DMA B) 无条件C) 查询D) 中断9.在微机系统中引入中断技术,可以( )。
A) 提高外设速度B) 减轻主存负担C) 提高处理器的效率D) 增加信息交换的精度10.CPU响应中断请求的时刻是在( )。
A) 执行完成正在执行的程序以后 B) 执行完正在执行的指令以后C) 执行完本时钟周期以后D)执行完正在执行的机器周期以后11.8086/8088CPU向应两个硬中断INTR和NMI时,相同的必要条件是( )。
A) 允许中断B) 当前I/O操作执行结束C) 总线空闲D) 当前访问内存操作结束12.在微型计算机系统中,高速外设与内存储器进行批量数据传送时,应采用( )。
《微机原理与接口技术》习题解答7

《微机原理与接口技术》习题解答习题77.1 什么是中断?常见的中断源有哪几类?CPU响应中断的条件是什么?【解答】中断是指CPU在正常执行程序时,由于内部/外部时间或程序的预先安排引起CPU暂时终止执行现行程序,转而去执行请求CPU为其服务的服务程序,待该服务程序执行完毕,又能自动返回到被中断的程序继续执行的过程。
常见的中断源有:一般的输入/输出设备请求中断;实时时钟请求中断;故障源;数据通道中断和软件中断。
CPU响应中断的条件:若为非屏蔽中断请求,则CPU执行完现行指令后,就立即响应中断。
CPU若要响应可屏蔽中断请求,必须满足以下三个条件:①无总线请求;②CPU 允许中断;③CPU执行完现行指令。
7.2 简述微机系统的中断处理过程。
【解答】(1)中断请求:外设需要进行中断处理时,向CPU提出中断请求。
(2)中断响应:CPU执行完现行指令后,就立即响应非屏蔽中断请求。
可屏蔽中断请求,CPU若要响应必须满足三个条件。
(3)中断处理:保护现场、开中断、中断服务。
(4)中断返回:CPU执行IRET中断返回指令时,自动把断点地址从堆栈中弹出到CS 和IP中,原来的标志寄存器内容弹回Flags,恢复到原来的断点继续执行程序。
7.3 软件中断和硬件中断有何特点?两者的主要区别是什么?【解答】硬件中断由外部硬件产生,是由CPU外部中断请求信号触发的一种中断,分为非屏蔽中断NMI和可屏蔽中断INTR。
软件中断是CPU根据某条指令或者对标志寄存器的某个标志位的设置而产生的,也称为内部中断。
通常有除法出错中断、INTO溢出中断、INT n中断、断点中断和单步中断等。
两者的主要区别:硬件中断由外部硬件产生,而软件中断与外部电路无关。
7.4 中断优先级的排队有哪些方法?采用软件优先级排队和硬件优先级排队各有什么特点?【解答】软件优先级排队:各中断源的优先权由软件安排。
优点是电路比较简单,可以直接修改软件查询顺序来修改中断优先权,不必更改硬件。
微机原理习题集答案

第1章 概述1.电子计算机主要由.电子计算机主要由 运算器运算器 、 控制器控制器 、 存储器存储器 、 输入设备输入设备 和 输出设备输出设备 等五部分组成。
等五部分组成。
等五部分组成。
2. 运算器运算器 和 控制器控制器 集成在一块芯片上,被称作CPU CPU。
3.总线按其功能可分.总线按其功能可分 数据总线数据总线 、 地址总线地址总线 和 控制总线控制总线 三种不同类型的总线。
三种不同类型的总线。
4.计算机系统与外部设备之间相互连接的总线称为.计算机系统与外部设备之间相互连接的总线称为 系统总线(或通信总线)系统总线(或通信总线) ;用于连接微型机系统内各插件板的总线称为系统内总线(板级总线) ; CPU 内部连接各寄存器及运算部件之间的总线称为内部连接各寄存器及运算部件之间的总线称为 内部总线内部总线 。
5.迄今为止电子计算机所共同遵循的工作原理是迄今为止电子计算机所共同遵循的工作原理是 程序存储程序存储 和 程序控制程序控制 的工作原理。
的工作原理。
这种原理又称这种原理又称为 冯·诺依曼型冯·诺依曼型 原理。
原理。
第3章 微处理器及其结构1.8086/8088 CPU 执行指令中所需操作数地址由执行指令中所需操作数地址由 EU EU EU 计算出计算出计算出 16 16 16 位偏移量部分送位偏移量部分送位偏移量部分送 BIU BIU BIU ,由,由,由 BIU BIU BIU 最后最后形成一个形成一个 20 20 20 位的内存单元物理地址。
位的内存单元物理地址。
2.8086/8088 CPU CPU在总线周期的在总线周期的在总线周期的T1 T1 T1 时刻,用时刻,用时刻,用A19/S6A19/S6A19/S6~~A16/S3 A16/S3 输出输出输出 20 20 20 位地址信息的最高位地址信息的最高位地址信息的最高 4 4 4 位,而在位,而在其他时钟周期,则输出其他时钟周期,则输出 状态状态 信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题七中断控制器
参考答案
7.2.8086 CPU响应中断的条件?简述8086CPU响应中断处理过程。
【答】CPU响应中断的条件:(1)有中断源发出的中断请求信号,并保存在中断请求触发器中,直至CPU响应此中断请求之后才清除。
(2)开放总中断。
(3)在现行指令结束后响应中断。
8086CPU的中断处理过程:
(1)CPU自动完成如下工作:
关中断,断点保护,形成中断入口地址。
即获得中断服务程序的入口地址,从而进入中断服务程序。
(2)CPU中断服务。
包括保护现场、CPU开放中断、中断处理、CPU关中断、恢复现场。
(3)中断返回。
7.3 软件中断有哪些特点?在中断处理子程序和主程序的关系上,软件中断和硬件中断有什么
不同之处?
【答】(1)是由CPU内部事件引起的中断,是确定的;与硬件无关,不执行中断响应周期;
除单步中断外,软件中断(内部中断)不可屏蔽;优先级高于硬件中断(外部中断)。
(2)硬件中断由外部事件引起,是随机的,需要执行总线周期,中断类型码由中断控制器提供。
7.4 什么叫中断向量?它放在哪里?对应于1CH的中断向量在哪里?如1CH中断程序从
5110H :2030H开始,则中断向量应怎样存放?
【答】中断向量是中断处理子程序的入口地址,它放在中断向量表中。
由1ch*4=70H知中断向量存放在0000:0070处。
由于中断处理入口地址为5110H:2030H,所以2030H应放在0070H,0071H两个存储单元,5110H应放在0072H、0073H这2个单元。
7.5 叙述可屏蔽中断的响应过程,一个可屏蔽中断或者非屏蔽中断响应后,堆栈顶部四个单元
中是什么内容?
【答】当CPU在INTR引脚上接受一个高电平的中断请求信号并且当前的中断允许标志为1,CPU就会在当前指令执行完后开始响应外部的中断请求,具体如下:
1)从数据总线上读取外设送来的中断类型码,将其存入内部暂存器中;
2)将标志寄存器的值入栈,清IF 和TF,将断点保护到堆栈中;
3)根据中断类型获取中断向量;
4)转入中断处理子程序;
5)处理完后恢复现场
6)中断返回。
可屏蔽中断或者非屏蔽中断响应后堆栈的顶部6个单元是断点处的IP、CS、FLAG内容。
7.6 从8086/8088的中断向量表中可以看到,如果一个用户想定义某个中断,应该选择在什么范
围?
【答】从8086/8088的中断向量表中可以看出,如果一个用户想定义一个中断,应该选择中
断类型60H-6FH,其中断向量在中断向量表的0180H-01BFH。
7.7 类型号为20H的中断服务程序入口符号地址为INT-5,试写出中断向量的装入程序片断。
【答】中断向量的地址:20H×4=10000000=80H
中断向量的装入参考程序:
CLI
PUSH DS
XOR AX,AX
MOV DS,AX
MOV AX,OFFSET INT-5
MOV WORD PTR [080H],AX
MOV AX,SEG INT-5
MOV WORD PTR [082H],AX
POP DS
STI……
INT-5 PROC NEAR
…….
IRET
INT-5 ENDP
7.9 8259A中IRR、IMR和ISR三个寄存器的作用是什么?
【答】中断请求寄存器IRR:保存对应位的中断请求
中断屏蔽寄存器IMR:屏蔽对应位的中断请求;
中断服务寄存器ISR:保存当前正在服务的中断申请。
7.10 填空:某时刻8259A的IRR内容是08H(00001000B),说明(IR3引脚有中断请求)。
某时
刻8259A的ISR内容是08H,说明(IR3引脚的中断请求正在服务)。
在两片8259A级连的中断电路中,主片的第5级IR5 作为从片的中断请求输入,则初始化主、从片时,ICW3的控制字分别是(00100000和00000101)。
7.11 试按照如下要求对8259A设置初始化命令字:系统中有一片8259A,中断请求信号用边沿
触发方式,下面要用ICW4,中断类型码为60H~67H,用特殊全嵌套方式,不用缓冲方式,采用中断自动结束方式。
8259A的端口地址为96H、94H。
【答】初始化命令字的过程:
MOV AL,13H
OUI 94H,AL ;设置ICW1
MOV AL,60H
OUT 96H,AL ;设置ICW2
MOV AL,13H
OUT 96H,AL ;设置ICW4
7.12 8088/8086中断向量表的作用是什么?
【答】中断向量是中断服务程序的入口地址。
将所有中断向量集中放在一起,形成中断向量表。
一个中断向量由四个字节组成,2个高地址字节存放中断服务程序的代码段的段值;2个低地址字节存放中断服务程序的偏移地址。
7.13 8529A仅占用两个I/O地址,它是如何区别4条ICW命令和3条OCW命令的?在地址引
脚A0=l时读出的是什么?
【答】A0=0写ICW1、OCW2、OCW3,以其特征位区分。
A0=1写ICW2、ICW3、ICW4、OCW1,写ICW1后顺序写的是ICW2、ICW3、ICW4。
A0=0读IRR、ISR、轮询字,由OCW3的RR和RIS两位区分IRR和ISR,通过OCW3的P位向8259发轮询命令后读出的是轮询字。
A0=1时,读IMR。
7.14 一个可屏蔽中断请求来到时,通常只要中断允许标志为1,便可在执行完当前指令后响应,
在哪些情况下有例外?
【答】如果发出中断请求信号时,正好碰到CPU执行封锁指令,由于CPU 封锁指令和下一条指令合在一起看成一个整体,所以必须等到下一条指令执行完后才响应中断。
如果是执行往寄存器传送数据指令,那一定要等下一条指令执行完后,才允许中断。
无总线请求;CPU 执行完当前指令。
7.16 8259A的ICW2设置了中断类型码的哪几位?说明对8259A分别设置ICW2为30H、38H、
36H有什么差别?
【答】8259A的ICW2设置了中断类型为D7-D3位。
30H和36H对应的高五位为:00110,表示的中断类型码相同;而38H的高五位为:00111,与前面的两者不同
7.17 怎样用8259A的屏蔽命令字来禁止IR3和IR5引腿上的请求?又怎样撤消这一禁止命令?
设8259A的端口地址为93H、94H。
【答】从8259A的奇地址端口(93H)进行设置来禁止IR3和IR5引腿上的请求,如下:IN AL,93H ;读取屏蔽寄存器OCW1中的数据
OR AL,28H ;将IR3和IR5中对应位置1
OUT 93H,AL ;将OCW1中置入新的数据
撤消这一禁令如下:
IN AL,93H ;读取屏蔽寄存器OCW1中的数据
AND AL,0D7H ;清除IR3和IR5屏蔽位
OUT 93H,AL ;恢复原来的屏蔽位。