微机原理习题答案8章
第8章 微机原理习题库

一.填空题1.类型码为()的中断所对应的中断向量存放在0000H:0058H开始的4个连续单元中,若这4个单元的内容分别为(),则相应的中断服务程序入口地址为5060H:7080H。
2.CPU在指令的最后一个时钟周期检测INTR引脚,若测得INTR为()且IF为(),则CPU在结束当前指令后响应中断请求。
3.从CPU的NMI引脚产生的中断叫做(),它的响应不受()的影响。
4.中断类型码为15H的中断,其服务程序的入口地址一定存放在()四个连续的单元中,若这四个单元的的内容为:66H、50H、88H、30H,则其服务程序的入口地址为()。
5.中断控制器8259A中的中断屏蔽寄存器IMR的作用是()。
6.CPU响应可屏蔽中断的条件是()、()和()。
7.在8086/8088微机系统中,INT20H指令中断向量存放在()中。
8.CPU在响应中断时,首先是保护(),然后将中断服务程序入口地址送入()。
9.在8086/8088微机中,实现CPU关中断的指令是(),实现开中断的指令是()。
10.如果CPU同时接收到中断请求和总线请求,则CPU应先响应()。
11.当用8259A管理INTR中断时,要发出EOI命令结束中断是操作()命令字。
12.执行INTn指令时,其中断类型号由()提供,响应INTR时,中断类型号由()提供,响应NMI时,中断类型号由()提供,执行BOUND指令时,中断类型号由( )提供。
13.INTR、NMI均属于外中断,其中INTR被称为()中断,NMI被称为()中断。
14.80486在实模式下,当某中断源的中断类型码为70H时,中断服务程序的偏移地址和段基址将分别填入()单元和()单元。
15.CUP复位时,由于()被清零,使从INTR输入的可屏蔽中断不被响应。
16.2片8259A级联可管理()个可屏蔽中断。
17.INTR输入是()有效。
18.级连系统中,从8259A中的INT引脚应与主8259A的()连接。
微机原理习题解答

(5)OR AL,[SI-80H] (6)PUSH AX
(7)MOV AX,[2020H] (8)JMP DWORD PTR ES:[SI]
3-3 指出下列指令的错误。
(1)MOV AL,BX (2)MOV CS,AX
1-4将下列十六进制数转换为二进制数、十进制数。
(1)8E6H (2)0A42H (3)7E.C5H (4)0F19.1DH
1-5将下列二进制数转换为BCD码。
(1)1011011.101 (2)1010110.001
1-6将下列BCD码转换为二进制数。
(1)(0010 0111 0011)BCD(2)(1001 0111.0010 0101)BCD
试画出存储器分段地址分配示意图,指出CS、DS、SS各段寄存器内容是什么?
2-23 解释什么是规则字、非规则字,8086 CPU对它们的存取各需要几个总线周期?
第三章 指令系统
3-1 指出下列指令的寻址方式。
(1)MOV BX,2000H (2)MOV BX,[2000H]
(3)MOV [BP],CX (4)MOV AL,[BX+SI+100H]
2-11 试画出在最小模式下,8086 CPU读、写总线周期时序图。
2-12 8086与8088相比有哪些不同?8086引脚BHE的作用是什么?其存储器组织为什么要由偶存
储体和奇存储体组成?
2-13 在最小模式下,8086的哪些引脚是分时复用的?哪些信号需要由系统进行锁存?
2-14 8086/8088内指令队列的作用是什么?其各自长度为多少?8086 CPU复位后,有哪些特
1-15已知补码如下,分别求出真值、原码、反码。
微机原理及接口第八章习题解答

“微机系统原理与接口技术”第八章习题解答(部分)1. 什么叫总线和总线操作?为什么各种微型计算机系统中普遍采用总线结构?答:总线是模块与模块之间传送信息的一组公用信号线;而模块间信息传送时与总线有关的操作统称为总线操作;模块间完成一次完整信息交换的时间称为一个总线操作周期。
总线标准的建立使得各种符合标准的模块可以很方便地挂在总线上,使系统扩展和升级变得高效、简单、易行。
因此微型计算机系统中普遍采用总线结构。
2.微机总线有哪些种类?其数据传输的主要过程是什么?答:微机中目前普遍采用的总线标准包括系统内总线标准和系统外总线标准两类:系统内总线标准一般指微机主板插槽(系统扩展板)遵循的各种标准,如PC/XT总线标准、ISA 总线标准(PC/AT总线标准)、VL总线标准(VESA具备总线标准)、PCI局部总线标准等;系统外总线标准指系统互连时遵循的各种标准,多表现为微机对外的标准接口插头,有时也称为接口标准,如EIA RS-232异步串行接口标准、USB通用串行接口标准、IEEE-488通用并行接口标准等。
一个总线操作周期一般分为四个阶段,即:总线请求及仲裁阶段、寻址阶段、传数阶段和结束阶段。
在含有多个主控制器的微机系统中,这四个阶段都是必不可少的;而在仅含一个主控制器的单处理器系统中,则只需要寻址和传数两个阶段。
3.计算机系统与外部设备之间相互连接的总线称为系统外总线(通信总线);用于连接微型机系统内各插件板的总线称为系统内总线(板级总线);CPU内部连接各寄存器及运算部件之间的总线称为片内总线。
4.一次总线的信息传送过程大致可以分为4个阶段,依次为总线请求及仲裁阶段、寻址阶段、传数阶段和结束阶段。
8.同步总线有哪些优点和缺点?主要用在什么场合?答:同步并行总线时序是指总线上所有信号均以同步时钟为基准,所有接在总线上的设备的信息传输也严格与同步时钟同步。
同步并行总线的优点是简单、易实现;缺点是无法兼容总线上各种不同响应速度的设备,因为同步时钟的速度必须以最慢的响应设备为准,这样总线上的高速设备将无法发挥其高速性能。
微机原理第一章至第八章作业参考答案

1KB 512B
8KB
1KB=210 的偏移地址范围为: 00 0000 0000~11 1111 1111 即 000H~3FFH 512B=29 的偏移地址范围为: 0 0000 0000~1 1111 1111 即 000H~1FFH 8KB=213 的偏移地址范围为: 0 0000 0000 0000~1 1111 1111 1111 即 0000H~1FFFH
POP AX
PUSH CX
2.10 下列程序段中每一条指令执行完后,AX 中的十六进制内容是什么?
MOV AX,0
;0000H
DEC AX
;0000H-1=0FFFFH
ADD AX,7FFFH
;0FFFFH+7FFFH=7FFEH
ADD AX,2
;7FFEH+2=8000H
NOT AX
;NOT 8000H=7FFFH
目标:寄存器寻址
(5)TEST ES:[SI],DX
目标:寄存器间接寻址 源:寄存器寻址
(6)SBB SI,[BP]
目标:寄存器寻址
源:寄存器间接寻址
2.8 假定 DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据段中变
量名 VAL 的偏移地址值为 0050H,试指出下面源操作数字段的寻址方式是什么?其物理地址值是多少?
每条指令执行后 AX 的内容为:
0000H
0FFFFH 7FFEH
8000H
7FFFH
8000H
0000H
0BFDFH 0ABCDH 0CDABH 9B56H
36ADH
2.15 假定 DX=00B9H,CL=3,CF=1,确定下列各条指令单独执行后 DX 中的值。
微机原理习题集答案

第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 位,而在位,而在其他时钟周期,则输出其他时钟周期,则输出 状态状态 信息。
微机原理与接口技术习题答案

第3章8086/8088指令系统与寻址方式习题3.3 8086系统中,设DS=1000H,ES=2000H,SS=1200H,BX=0300H,SI=0200H,BP=0100H,VAR的偏移量为0600H,请指出下列指令的目标操作数的寻址方式,若目标操作数为存储器操作数,计算它们的物理地址。
(1)MOV BX,12 ;目标操作数为寄存器寻址(2)MOV [BX],12 ;目标操作数为寄存器间址 PA=10300H(3)MOV ES:[SI],AX ;目标操作数为寄存器间址 PA=20200H(4)MOV VAR,8 ;目标操作数为存储器直接寻址 PA=10600H(5)MOV [BX][SI],AX ;目标操作数为基址加变址寻址 PA=10500H(6)MOV 6[BP][SI],AL ;目标操作数为相对的基址加变址寻址 PA=12306H (7)MOV [1000H],DX ;目标操作数为存储器直接寻址 PA=11000H(8)MOV 6[BX],CX ;目标操作数为寄存器相对寻址 PA=10306H(9)MOV VAR+5,AX ;目标操作数为存储器直接寻址 PA=10605H3.4 下面这些指令中哪些是正确的?那些是错误的?如果是错误的,请说明原因。
(1)XCHG CS,AX ;错,CS不能参与交换(2)MOV [BX],[1000] ;错,存储器之不能交换(3)XCHG BX,IP ;错,IP不能参与交换(4)PUSH CS(5)POP CS ;错,不能将数据弹到CS中(6)IN BX,DX ;输入/输出只能通过AL/AX(7)MOV BYTE[BX],1000 ;1000大于255,不能装入字节单元(8)MOV CS,[1000] ;CS不能作为目标寄存器(9)MOV BX,OFFSET VAR[SI] ;OFFSET只能取变量的偏移地址(10)MOV AX,[SI][DI] ;SI、DI不能成为基址加变址(11)MOV COUNT[BX][SI],ES:AX ;AX是寄存器,不能加段前缀3.7 设当前 SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?当执行PUSH BX 指令后,栈顶地址和栈顶2个字节的内容分别是什么?当前栈顶的地址=2FF00H当执行PUSH BX 指令后,栈顶地址=2FEFEH(2FEFEH)=57H(2FEFFH)=34H3.8 设DX=78C5H,CL=5,CF=1,确定下列各条指令执行后,DX和CF中的值。
微机原理习题答案8章

第8章中断系统与可编程中断控制器8259A1.什么叫中断?8086微机系统中有哪几种不同类型的中断?答:在CPU执行程序的过程中,由于某个事件的发生,CPU暂停当前正在执行的程序,转去执行处理该事件的一个中断服务程序,待中断服务程序执行完成后,CPU再返回到原被中断的程序继续执行。
这个过程称为中断。
8086微机系统中有3种中断:1)外部可屏蔽中断。
2)外部不可屏蔽中断。
3)内部中断2.什么是中断类型?它有什么用处?答:通常用若干位二进制编码来给中断源编号,该编号称为中断类型号。
8086微处理器用8位二进制码表示一个中断类型,有256个不同的中断。
这些中断可以划分为内部中断、外部不可屏蔽中断、外部可屏蔽中断三类。
用处:使CPU识别中断源,从而能正确地转向该中断源对应的中断服务程序入口。
3.什么是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件是什么?答:微处理器在处理低级别中断的过程中,如果出现了级别高的中断请求,微处理器停止执行低级中断的处理程序而去优先处理高级中断,等高级中断处理完毕后,再接着执行低级的未处理完的程序,这种中断处理方式成为中断嵌套。
使用中断嵌套的好处是能够提高中断响应的实时性。
对于某些对实时性要求较高的操作,必须赋予较高的优先级和采取中断嵌套的方式,才能保证系统能够及时响应该中断请求。
对于可屏蔽中断,实现中断嵌套的条件有:(1)微处理器处于中断允许状态(IF=1)(2)中断请求的优先级高于正在执行的中断处理程序的优先级。
(3)中断请求未被8259屏蔽。
(4)没有不可屏蔽中断请求和总线请求。
4.什么是中断向量?中断类型号为1FH的中断向量为2345H:1234H,画图说明它在中断向量表中的存放位置。
答:中断向量为每个中断服务子程序的入口地址,为32位(16位的偏移地址和16位的段地址),在中断向量表中占用4个地址单元。
在8086CPU组成的计算机系统中,采用最低的1024个地址单元(称为0页)来存储中断向量。
#微型计算机原理与接口技术答案

P237 2.答:掩膜型ROM中信息是厂家根据用户给定的程序或数
据,对芯片图形掩膜进行两次光刻而写入的,用户对这类芯片 无法进行任何修改。
PROM出厂时,里面没有信息,用户采用一些设备可以将 内容写入PROM,一旦写入,就不能再改变了,即只允许编程 一次。
EPROM可编程固化程序,且在程序固化后可通过紫外光 照擦除,以便重新固化新数据。
2019年5月18日星期六
微机原理与接口技术
第七章作业习题课
杭州电子科技大学自动化学院
2019年5月18日星期六
P302 1. 【答】:当CPU正常运行程序时,由于微处理器内部事件或外设请求,
引起CPU中断正在运行的程序,转去执行请求中断的外设(或内部事件)的中断 服务子程序,中断服务程序执行完毕,再返回被中止的程序,这一过程称为中 断。
2019年5月18日星期六
3.答: CPU与外设通信时,传送的信息主要包括数据信息、 状态信息和控制信息。在接口电路中,这些信息分别进入不同 的寄存器,通常将这些寄存器和它们的控制逻辑统称为I/O端口, CPU可对端口中的信息直接进行读写。在一般的接口电路中都 要设置以下几种端口:
⑴数据端口:用来存放外设送往CPU的数据以及CPU要输 出到外设去的数据。数据端口主要起数据缓冲的作用。
DMA方式:也要利用系统的数据总线、地址总线和控制总 线来传送数据。原先,这些总线是由CPU管理的,但当外设需 要利用DMA方式进行数据传送时,接口电路可以向CPU提出请 求,要求CPU让出对总线的控制权,用DMA控制器来取代CPU, 临时接管总线,控制外设和存储器之间直接进行高速的数据传 送。这种控制器能给出访问内存所需要的地址信息,并能自动 修改地址指针,也能设定和修改传送的字节数,还能向存储器 和外设发出相应的读/写控制信号。在DMA传送结束后,它能释 放总线,把对总线的控制权又交还给CPU。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第8章中断系统与可编程中断控制器8259A1.什么叫中断?8086微机系统中有哪几种不同类型的中断?答:在CPU执行程序的过程中,由于某个事件的发生,CPU暂停当前正在执行的程序,转去执行处理该事件的一个中断服务程序,待中断服务程序执行完成后,CPU再返回到原被中断的程序继续执行。
这个过程称为中断。
8086微机系统中有3种中断:1)外部可屏蔽中断。
2)外部不可屏蔽中断。
3)内部中断2.什么就是中断类型?它有什么用处?答:通常用若干位二进制编码来给中断源编号,该编号称为中断类型号。
8086微处理器用8位二进制码表示一个中断类型,有256个不同的中断。
这些中断可以划分为内部中断、外部不可屏蔽中断、外部可屏蔽中断三类。
用处:使CPU识别中断源,从而能正确地转向该中断源对应的中断服务程序入口。
3.什么就是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件就是什么?答:微处理器在处理低级别中断的过程中,如果出现了级别高的中断请求,微处理器停止执行低级中断的处理程序而去优先处理高级中断,等高级中断处理完毕后,再接着执行低级的未处理完的程序,这种中断处理方式成为中断嵌套。
使用中断嵌套的好处就是能够提高中断响应的实时性。
对于某些对实时性要求较高的操作,必须赋予较高的优先级与采取中断嵌套的方式,才能保证系统能够及时响应该中断请求。
对于可屏蔽中断,实现中断嵌套的条件有:(1)微处理器处于中断允许状态(IF=1)(2)中断请求的优先级高于正在执行的中断处理程序的优先级。
(3)中断请求未被8259屏蔽。
(4)没有不可屏蔽中断请求与总线请求。
4.什么就是中断向量?中断类型号为1FH的中断向量为2345H:1234H,画图说明它在中断向量表中的存放位置。
答:中断向量为每个中断服务子程序的入口地址,为32位(16位的偏移地址与16位的段地址),在中断向量表中占用4个地址单元。
在8086CPU组成的计算机系统中,采用最低的1024个地址单元(称为0页)来存储中断向量。
这1024个地址单元成为中断向量表。
因此,中断类型号位1FH的中断向量,在中断向量表中的存储位置为1FH×4=07CH。
中断类型号为1FH的中断向量在中断向量表中的存放位置如图8、1所示。
图8、1中断类型号为1FH的中断向量在中断向量表中的存放位置5.中断向量表的功能就是什么?叙述CPU利用中断向量表转入中断服务程序的过程。
答:中断向量表就是用来存放中断向量的。
就是中断类型号与它对应的中断服务程序入口地址之间的换算表。
1)CPU获得中断类型号n后,将当前PSW、CS与IP的内容依次压入堆栈,保存断点的状态与断点地址,以便返回时恢复。
2)将PSW中的IF位与TF位清0,关闭中断。
3)把地址为4×n与4×n+1两个单元的16位数作为中断服务程序入口的偏移地址置入IP,把地址为4×n+2与4×n+3两个单元的16位数作为中断服务程序入口的段地址置入CS。
4)转入中断服务程序。
6.叙述可屏蔽中断的响应过程。
答:在IF位为1情况下,从INTR端加入中断请求信号开始,到进入中断服务程序为止所经过的一系列操作,称为可屏蔽中断的响应过程。
首先等待当前指令结束后,进入中断响应周期。
然后,从微处理器外部的中断控制逻辑获得中断类型号。
随后把当前的PSW、CS与IP的内容依次压入堆栈,接着清除PSW中的IF位与TF位为0。
最后把中断服务程序的入口地址置入IP与CS。
至此,完成了可屏蔽中断的响应过程,开始进入中断服务程序。
7.简要叙述8259A内部IRR、IMR、ISR三个寄存器的作用。
IR~IR中断请求信号。
当外部中断请答:IRR:中断请求寄存器,用来锁存外部设备送来的70有中断请求时,IRR中与之对应的第i位被置1。
该寄存器内容可以被微处理器读求线IRi出。
IMR:用于设置中断请求的屏蔽信号。
此寄存器第i位被置1时,与之对应的外部中断请被屏蔽,不能向微处理器发出INT信号。
求线IRiISR:用于记录当前正在被服务的所有中断级,包括尚未服务完而中途被更高优先级打断中断请求,则ISR中与之对应的第i位置1。
中断处理结的中断级。
若微处理器响应了IRi束前,要用指令清除这一位。
8.中断控制器8259A的初始化编程就是如何开始的?答:初始化编程就就是指对ICW(初始化命令字)的初始化,对ICW的初始化有一定的顺序,必须从ICW1开始。
对中断控制器8259A的初始化编程次序如图8、2所示。
图8、2 对中断控制器8259A 的初始化编程次序 9. 设某微机系统需要管理64级中断,问组成该中断机构时需 片8259A 。
解:一片8259可控制8级中断,第1片通过级联8片8259可将中断扩充至64级。
所以组成该中断机构共需9片8259。
10. 完全嵌套的优先级排序方式的规则就是什么?如何设置这种方式?答:在全嵌套方式下,中断优先级的级别就是固定的,即0IR 优先级最高,~IR 16IR 逐级次之,7IR 最低。
如果对8259A 进行初始化后没有设置其她优先级别,那么8259A 就按全嵌套方式工作。
11. 如果设备D1、D 2、D3、D4、D5按完全嵌套优先级排列规则。
设备D1的优先级最高, D 5最低。
在下列中断请求下,给出各设备的中断处理程序的次序(假设所有的中断处理程序开始后就有STI 指令,并在中断返回之前发出结束命令)(1)设备3与4同时发出中断请求;(2)设备3与4同时发出中断请求,并在设备3的中断处理程序完成之前,设备2发出中断请求;(3)设备1、3、5同时发出中断请求,在设备3的中断处理程序完成之前,设备2发出中断请求。
解:(1) 设备3与4同时发出中断请求;中断处理次序为:D3→D4,示意图如图8、3(a)所示。
D3,D4同时图8、3(a)设备3与4同时发出中断请求的中断处理程序的次序示意图(2) 设备3与4同时发出中断请求,并在设备3的中断处理程序完成之前,设备2发出中断请求;中断处理次序为: D3→D2→D3→D4,示意图如图8、3(b)所示。
D3,D4同时D2请求图8、3(b)中断处理程序的次序示意图(3) 设备1、3、5同时发出中断请求,在设备3的中断处理程序完成之前,设备2发出中断请求。
中断处理次序为:D1→D3→D2→D3→D5,示意图如图8、3(c)所示。
D1,D3,D5D2请求图8、3(c)中断处理程序的次序示意图12. 8259A 就是怎样进行中断优先权管理的?答:8259A 利用优先权处理器来识别与管理中断请求信号的优先级别。
当几个中断请求信号同时出现时,优先权处理器根据控制逻辑规定的优先权级别与IMR 的内容来判断这些请求信号的最高优先级。
微处理器响应中断请求时,把优先权最高的IRR 中的“1”送入IS R.。
当8259A 正在为某一级中断服务时,若又出现新的中断请求,则由优先权处理器判断新出现的中断请求的级别就是否高于正在处理的那一级。
若就是,则进入多重中断处理。
13. 特殊全嵌套方式有什么特点?它的使用场合就是什么?答:多片8259级联时,主片必须工作在特殊全嵌套方式下。
假设从片工作在全嵌套方式下,先后收到了两次中断请求,而且第二次中断请求有较高的优先级,那么该从片就会两次通过INT 引脚向上一级申请中断。
如果主片采用全嵌套方式,则它不会响应来自同一引脚的第二次中断请求。
而采用特殊全嵌套方式后,就会响应该请求。
14. 向8259A 发送“中断结束”命令有什么作用?8259A 有哪几种中断结束方式?分析各自的利弊。
答:向8259A发送“中断结束”命令,使相应的中断级在ISR中的相应位清“0”,表示该中断处理已经结束。
8259A有自动中断结束方式(AEOI)与非自动中断结束方式(EOI)。
(1)自动中断结束方式(AEOI)。
在这种方式下,系统一旦进入中断响应,8259A就在第二个中断响应周期INTA信号的后沿,自动将ISR中被响应中断级的对应位清“0”。
这就是一种最简单的中断结束处理方式,可以通过初始化命令来设定,但这种方式只能用在系统中只有一个8259A,且多个中断不会嵌套的情况。
(2)非自动中断结束方式(EOI)。
在这种工作方式下,从中断服务程序返回前,必须在程序里向8259A输出一个中断结束命令(EOI),把ISR对应位清“0”。
具体做法有一般的中断结束方式与特殊的中断结束EOI 命令。
这种方式可用于系统中有多个8259A或多个中断中有嵌套的情况,但这种方式要比自动中断结束方式复杂。
而且在这种方式下,如果在程序里忘记了将ISR对应位清零,那么,8259A在一般情况下将不再响应这个中断以及比它级别低的中断请求。
15.初始化8259A时设置为非自动结束方式,则在中断服务程序即将结束时必须设置什么操作命令?不设置这种命令会发生什么现象?如果初始化时设置为自动结束方式时,还需要设置这种操作不?OCW的EOI位写1。
如果不设置这种命令,答:必须发送中断结束命令,即向操作控制字2则该中断服务程序结束后,CPU将无法响应优先级比它低的中断请求以及它自身的下一次中断请求。
若初始化为自动结束方式,则不需设置这种操作。
16.在哪些情况下需用CLI指令关中断?在哪些情况下需用STI指令开中断?答:①关于有前缀的指令,前缀包括段寄存器前缀(例如指令MOVAX, CS:VAR)、重复前缀(例如指令REP MOVSB)、与LOCK前缀。
应明确的就是,指令前缀并不就是一个独立的指令,只就是指令的一部分,所以不允许在前缀码与指令码之间响应中断,所以应在这条指令前置CLI(关中断)指令,在这条指令后置STI(开中断)指令。
②对于目的地址就是段寄存器的MOV与POP 指令(除CS外),本条指令后不允许响应中断,而就是还要执行一条指令结束后才能响应中断,这时可以在指令前加CLI,指令后加STI。
③需要进行中断嵌套时,由于微处理器在响应中断时已将IF清零,所以一定要在中断处理程序中加开中断指令,才有可能进行中断嵌套。
17.某系统中有两片8259A,从片的请求信号连主片的IR2引脚,设备A中断请求信号连从片IR5引脚。
说明设备A在一次I/O操作完成后通过两片8259A向8086申请中断,8086微处理器通过两片8259A响应中断,进入设备A的中断服务程序,发送中断结束命令,返回断点的全过程。
答:设备A在一次I/O操作完成后在8259A从片中断请求输入端IR5上产生中断请求,中断请求被锁存在8259A从片IRR中,并经IMR“屏蔽”,其结果送给优先权电路判优。
控制逻辑接收中断请求,向8259A主片IR2引脚输出INT信号,中断请求被锁存在8259A主片IRR 中,并经IMR“屏蔽”,其结果送给优先权电路判优。