微型计算机原理作业第六章-习题与思考题.doc_第1页
微型计算机原理作业第六章-习题与思考题.doc_第2页
微型计算机原理作业第六章-习题与思考题.doc_第3页
微型计算机原理作业第六章-习题与思考题.doc_第4页
微型计算机原理作业第六章-习题与思考题.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章 习题与思考题典型例题解析例6-1 试述PC微机中断系统的分类与特点。答:PC微机系统中断包括硬件(外部)中断和软件(内部)中断两大类。硬件中断包括不可屏蔽中断NMI和可屏蔽中断INTR。它们都由外部硬件产生。软件中断包括软件中断INT nH和CPU内部特殊中断,它们由内部中断指令或执行程序过程中出现异常产生的。软件中断又有DOS中断和BIOS中断之分。硬件中断的特点是:(1)硬中断是外部事件而引起的中断,因此,硬件中断具有随机性和突发性。(2)在硬件中断响应周期,CPU需要发中断回答信号(非屏蔽硬件中断不发中断回答信号)。(3)硬件中断的中断号由中断控制器提供(非屏蔽硬件中断的中断号由系统指定为02H)(4)硬件中断一般是可屏蔽的(非屏蔽硬件中断是不可屏蔽的)。软件中断的特点是:(1)软件中断是执行中断指令而产生的,无需外部施加中断请求信号。在程序需要调用某个中断服务程序时,只要安排一条相应中断指令,就可转去执行所需要的中断程序,因此,中断的发生不是随机的,而是由程序安排好的。(2)在软件中断响应周期,CPU不需要发中断回答信号。(3)软件中断的中断类型号是在指令中直接给出,因此,不需要使用中断控制器。(4)软件中断是不可屏蔽的。例6-2 试述可编程控制器8259A的作用。答:可编程控制器8259A在协助CPU处理中断事务中所起的作用主要是:(1)接受和扩充外部设备的中断请求。外设的中断请求,并非直接送到CPU,而是通过8259A接受进来,再由它向CPU提出中断请求。一片8259A可授受8个中断请求,经过级联可扩展到8片8259A,能接受64个中断请求。(2)进行中断优先级排队。外设的中断优先级排队,并不是CPU安排,而是由8259A安排的。即由8259A中断请求输入引脚(IR)的编号决定的。连到IR0上的外设中断优先级最高,连到IR7上的外设中断优先级最低。(3)向CPU提供中断类型号。其过程是先在8259A初始化时,将中断源的中断类型号写入8259A的ICW2,当CPU响应中断,进入中断响应周期,用中断回答信号INTA2,再从8259A读取这个中断类型号。例6-3 试述中断向量表的作用及构成。答:中断向量也即中断服务程序入口地址,系统中所有的中断服务程序入口地址集中起来放到存储器的某一区域内,这个存放中断向量的存储区就叫中断矢量表。中断向量表提供了每一个中断服务程序唯一的确定的入口地址,该入口地址包括4个字节,低2个字节的内容为中断服务程序的偏移地址IP,高2个字节的内容为中断服务程序的段基值CS。.把系统中所有的中断向量集中起来存入到存储器的某一存储区内,这个存放中断向量的存储区就叫中断向量表或中断服务程序入口地址表(中断服务程序首址表)。实模式下,规定把存储器的00003FFH共1024个地址单元作为中断向量存储区。中断向量表的格式,即每个中断向量的4个字节在中断向量表的存放规律是,向量的偏移量(IP)放在两个低字节单元中,向量的基址(CS)放在两个高字节单元中。从8259A主8259A CAS0 CAS1 CAS2INT IR0 IR2/ IR7CAS0 CAS1 IR0CAS2 INT IR7/ 到CPUVCC图6.3 例6.4的8259A级联图例6-4某8086微机系统由两片8259A级联构成中断系统,如图6.3所示。从片8259A接主片的IR2,主片的IR3和IR5有中断引入,中断类型号为33H,35H。两个中断服务程序在同一段内,段基址为2000H,偏移地址分别为1500H和2000H。从片IR4和IR6上有中断请求引入,类型号分别为44H,46H,中断服务程序在同一段内,段基址为3000H,偏移地址为4000H和4700H,试分别写出主8259A和从8259A的初始化程序,将4个中断服务程序的入口地址装入中断向量表中。初始化编程:由于是级联方式,所以,主片8259A和从片8259A应分别初始化,且要ICW3。假设对主片8259A的使用要求是:主8259A有级联输入且从IR2引入;中断请求信号为边沿触发,中断类型号为30H37H;采用特殊全嵌套方式,非缓冲方式,非自动EOI结束方式(即普通EOI结束方式);屏蔽IR2,IR3,IR5以外的中断源,主片的端口地址为3F50H,3F51H。根据上述使用要求可编写主8259A的初始化程序: MOV AL,11H ;设置ICW1主8259A采用级联方式,边沿触发 MOV DX,3FF50H ;ICW1的口地址 OUT DX,AL MOV AL,30H ;设置ICW2即设置中断类型码基值,本例中为30H MOV DX,3F51H ;ICW2口地址 OUT DX,AL MOV AL,04H ;设置ICW3,主片的IR2上接有从片8259A的INT端 OUT DX,AL MOV AL,11H ;设置ICW4,特殊全嵌套、非缓冲方式、非自动EOL结束方式 OUT DX,AL MOV AL,0DH ;设置OCW1,允许IR2,IR3,IR5中断,其他中断均屏蔽 OUT DX,AL MOV AL,20H ;定义OCW2,普通EOI结束方式 MOV DX,3F50H OUT DX,AL对从片的初始化:假设对从片8259A的使用要求是:从片8259A接主片的IR2上,中断申请信号为边沿触发;中断类型号别为40H47H,从片的端口地址为3F52H,3F53H;优先级采用特殊全嵌套方式,结束方式采用非自动结束EOI,非缓冲方式;采用普通EOI结束方式,屏蔽IR4,IR6以外的中断源。根据上述对从片8259A的使用要求,其初始化程序如下: MOV AL, 11H ;设置ICW1,级联方式,边沿触发,要ICW4 MOV DX, 3F52H ;8259A的偶地址端口 OUT DX, AL MOV AL, 40H ;设置ICW2即设置中断类型码基值,引入中断类型号为40H47H MOV DX, 3F53H ;8259A奇地址端口 OUT DX, AL MOV AL, 02H ;设置ICW3,从片接在主片的IR2端 OUT DX, AL MOV AL, 11H ;设置ICW4,特殊全嵌套、非缓冲方式,非自动EOI结束方式 OUY DX, AL MOV AL, 0AFH ;设置OCW1,允许IR4,IR6,屏蔽其他中断源 OUT DX, AL MOV DX,3F52H MOV AL, 20H ;设置OCW2,普通方式 OUT DX, AL中断向量装入:将4个中断服务程序的入口地址装入中断向量表,向量地址的装入方法很多,本例中用DOS功能调用法。方法是:使用25号功能调用,先将功能调用号25送AH,再将中断类型号送入AL,将中断服务程序的段基址和偏移地址送入DS:DX,然后用INT 21H调用即可。本例中将4个中断服务程序的入口地址装入中断向量表的程序如下:MOV AX ,2000H ;送主片的服务程序所在段的段基址MOV DS, AXMOV DX, 1500H ;送入偏移地址MOV AL, 33H ;中断类型号33H号送ALMOV AH, 25H ;功能调用号送AHINT 21HMOV DX, 2000H ;第二个偏移地址送DXMOV AL, 35H ; 送中断类型号35HINT 21HMOV AX, 3000H ;送从片的中断服务程序入口地址的段基址MOV DX, AXMOV DX, 4000H ;送从片的服务程序的偏移地址MOV AL, 44H ; 送中断类型号MOV AH, 25H INT 21HMOV DX, 4700H ;送另一个入口地址的偏移地址MOV AL, 46H ;送中断类型号INT 21H例6.2:在IBM PC/XT 62芯总线的IRQ2端输入一中断请求信号,该中断请求信号的中断源可由62芯总线CLK 输出的时钟经8253定时/计数器产生,也可由一分频电路直接分频产生。每产生一次中断,要求CPU 响应后在CRT 上显示字符串“THIS IS A 8259A INTRERRUPT!”,中断十次后,主机返回DOS 状态,不再响应中断请求。解: 已知 PC/XT 中8259A 地址为:偶地址20H,奇地址21H,并且使用系统的中断类型号为08H0FH,IRQ2对应的中断类型号为0AH。程序流程如图6.4所示 INTA00 EQU 20H ;PC/XT系统中8259A的偶地址端口INTA01 EQU 21H ;PC/XT系统中8259A的奇地址端口DATA SEGMENTMESS DBTHIS IS A 8259A INTRERRUPT!,OAH,ODH,DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX , CS MOV DS , AX ;设DS指向代码段MOV DX , OFFSET INT-PROCMOV AX , 250AH ;设0AH号中断向量INT 21HCLI ;关中断MOV DX , INTA01IN AL , DX ;允许IRQ2中断AND AL , 0FBH OUT DX , ALMOV BX , 10 ;设置中断次数10STI ;开中断LL: JMP LL ;循环等待中断 INT-PROC PROC ;中断服务程序MOV AX , DATAMOV DS , AX ;将DS指向数据段MOV DX , OFFSET MESSMOV AH , 09H INT 21H ;显示发生中断的信息MOV DX , INT00MOV AL , 20HOUT DX , AL ;发中断结束命令EOISUB BX , 1JNZ NEXT ;BX计数减1,不为0转NEXTMOV DX , INTA01IN AL , DXOR AL, 04 ;BX为0,关IRQ2中断OUT DX , ALSTI ;开中断MOV AH , 4CHINT 21H ;返回DOSNEXT: IRET ;中断返回INT-PROC ENDPCODE ENDS END START 习题与思考题一、填空题1 引发中断的事件,称为是 。对中断进行管理的所有硬件和软件的总和称为 。2 对于可屏蔽中断请求,CPU响应条件为 、 和 。3 对于非屏蔽中断请求,CPU响应条件为 和 。4 中断源识别的两种方法是 和 。5 8086/8088中断共有 种类型中断,可分为 中断和 中断。6 中断服务入口地址表又称为中断向量表,每个中断向量占用 字节空间,2个低位字节为 ,2个高位字节为 。7 若中断类型号为13,则这个中断向量的第一个字节的地址为 。8 若中断类型号为14H,则这个中断向量的第一个字节的地址为 。9 由CPU执行某些指令引起的中断称之为 。10 8086/8088的中断属于 中断类型。11 程序中断方式控制输入输出的主要特点是,可以使 和 并行工作。12 8259A中断控制器作用是 。13 根据中断请求来自外部或来自内部,中断分为 和 。 14 类型的中断常分为非屏蔽中断和可屏蔽中断。15 8259A中断控制器的命令字分为 和 。16 8086/8088的中断向量表中,每个中断处理程序的入口地址占 字节。17 8259A可编程控制器,当单片使用时,可同时接收 级外设的中断请求;当级联使用时,可同时接收多达 级外设的中断请求。18 中断源识别的是 。19 中断向量是指 。20 向量中断是指 。21 若中断向量的第一个字节的地址为0190H,则该中断的类型号为( )H。二、选择题:1. 在单级中断系统中,CPU一旦响应中断,则立即关闭_标志,以防止本次中断服务结束前同级的其他中断源产生另一次中断进行干扰。A中断允许 B. 中断请求 C. 中断屏蔽 D。中断嵌套2. 下面有关“中断”的叙述,_是不正确的。A. 一旦有中断请求出现,CPU立即停止当前指令的执行,转而去受理中断请求。B. CPU响应中断时暂停运行当前程序,自动转移到中断服务程序。C. 中断方式一般适用于随机出现的服务。D为了保证中断服务程序执行完毕以后,能正确返回到被中断的断点继续执行程。3. 发生中断请求的条件是_。A. 一条指令执行结束 B. 一次I/O操作开始 C. 机器内部发生故障 D. 一次DMA操作开始4. 为了便于实现多级中断,保存现场最有效的方法是采用_。A. 通用寄存器 B. 堆栈 C. 存储器 D. 外存5. 硬中断服务程序结束返回断点时,程序未尾要安排一条指令IRET,它的作用是_。A.构成中断结束命令 B.恢复断点信息并返回C.转移到IRET的下一条指令 D.返回到断点处6. 中断允许触发器用来_。A.表示外设是否提出了中断请求 B.CPU是否响应了中断请求 C.CPU是否正在进行中断处理 D.开放或关闭可屏蔽硬中断7 CPU响应二个硬件中断INTR和NMI时相同的必要条件是_。A.允许中断 B.当前指令执行结束 C.总线空闲 D.当前访问存储器操作结束8.在两片8259A级联的中断系统中,从片的INT端接到主片的IR5端,则初始化主、从片ICW3的数据格式分别是_。A.05H和20H B.50H和02H C.02H和50H D.20H和05H9.进行溢出中断需要满足的条件是_。A.IF=1和执行INTO指令。 BOF=1且IF=1。COF=1或执行INTO指令。 DOF=1和执行INTO指令。10软中断INTn(n=10HFFH)的优先级排列原则是_。An值愈小级别越高 B无优先级别Cn值愈大级别越高 D随应用而定11.对中断控制器8259进行编程,写入初始化命令字ICW1ICW4是采用( )。A 随机的,但必须设置好一个再设置另一个。B 完全固定的,从ICW1开始,依次写入同一控制端口。C ICW1至ICW4次序固定不变,分别写入不同地址端口。D 完全随机的,分别写入不同地址端口。12.下列对向量中断的描述正确的是( )。A. 采用硬件找到中断服务程序入口地址的方法B. 中断服务程序的入口地址C. 中断向量由中断服务程序的段基值和偏移地址二部分组成D. 中断服务程序入口地址占4 个字节13.可编程中断控制器8259的作用是指( )。A接受和扩充硬件中断源的中断请求B对外部中断源实现中断优先级的排队C能够向CPU提供中断源的中断类型号D以上所有的功能三、问答题1 什么是中断?2 什么是中断源?中断源一般有哪几种?3 什么是中断向量?中断向量有什么作用?4 如何由中断类型号得到中断向量(即入口地址)?5 设置中断优先级的目的是什么?6 什么是中断向量表?其作用是什么?它是如何构成的?7 什么是中断服务子程序?8 中断过程一般分为哪几个阶段?各有什么作用?.中断过程一般分为哪几个阶段?各有什么作用?9 什么是中断嵌套?10说出硬中断与软中断有什么不同?11中断控制器8259A的主要功能是什么?它内部有哪些主要寄存器?各完成什么功能?12完全嵌套方式与特殊全嵌套方式有什么不同?13在多片8259A的级联中,为什么主片常采用特殊屏蔽方式?14什么是中断响应周期?在中断响应中CPU和8259A一般要完成哪些工作?158259A中断屏蔽寄存器IMR和8086/8088的中断允许标志IF有何差别?在中断响应过程中,它们怎样配合工作?16为什么在主程序和中断服务程序中都要安排开中断指令?四、其它题1 已知中断向量表中004CH单元中的内容为9918H,004EH单元中的内容为4268H,试求出这些单元对应的中断类型号和中断的服务程序入口地址。2 按照要求对8259A进行初始化编程:单片8259A应用于8086系统,中断请求信号为边沿触发方式,中断类型号为80H87H,采用中断自动结束方式,特殊全嵌套方式,工作在非缓冲方式,其8259的奇偶端口地址为04A2H和04A0H。3 设8259A的ICW2被编程为1AH,则接IR4的外设的中断类型号是什么?它的中断向量地址是什么?4 试按下列要求对8259A进行初始化:系统CPU为8086,系统中有一片8259A,中断申请信号采用电平触发,中断类型为60H,61H,67H,采用特殊嵌套,非缓冲方式,中断自动结束方式,8259A的端口地址为83H,84H。参考答案一、填空题:1中断源、中断系统。2无系统总线请求、CPU允许、当前指令执行完。3无系统总线请求、当前指令执行完。4.软件查询、向量中断。5.256、软件、硬件。6. 4、IP、CS。7.00034H。8.00050H。9.软件中断(或内部中断)。10.向量。11.CPU、外设。12.接受中断申请、提供类型号、优先级管理。13.软件中断、硬件中断。14.硬件中断。15.初始化命令字、工作命令字。16.4。17.8、6418.找到哪一个中断源提出申请并找到中断服务的入口地址。19.中断服务程序的入口地址20.用硬件的方法来找到中断服务程序入口地址的中断源识别方法二、选择题:1-5 AAABB 6-10 ABDDB 11-13 CAD三、问答题:1 答:所谓中断,是指CPU在执行当前程序时,由于外部或内部事件的发生,而使得CPU暂时挂起正在执行的程序,转到为外部或内部事件服务的程序中执行。当服务程序执行完毕后,再返回到被挂起的程序继续执行,这个过程就称为中断2 答:发出中断请求的外部设备或引起中断的内部原因(事件)称为中断源。中断源有外部设备中断,硬件故障中断,指令中断和程序性中断等几种。3 答:中断向量就是中断服务程序的人口地址。其作用是引导CPU去执行相应的中断服务程序。4 答:将中断类型号n乘以4求出中断向量在中断向量表中的首字节地址4n。然后将中断矢量表中的4n和4n+1二个单元内容装入指令指针寄存器IP,将4n+2和4n+3单元的内容装入CS代码段寄存器,进而可求出中断服务程序入口地址首字节地址为:PA=CS16+IP。5 答:设置中断优先级的目的主要是当多个中断源同时提出申请时,根据优先级别判断先执行哪一个中断服务程序;当系统正在执行某一个中断程序时,又有新的中断源提出中断,可根据中断优先级的高低,决定是否中断正在执行的中断服务程序,高级别的中断可中断正在执行的中断服务程序,而低级别的中断则不能中断正在执行的中断服务程序。6 答:中断向量表即中断服务程序入口地址表,其作用为提供系统中所有中断服务程序一一对应的中断服务程序入口地址,即中断服务程序的段基值CS和偏移地址IP。中断向量表中,中断号为n的中断向量占4个字节,分别为4n,4n+1,4n+2,4n+3。其中,4n和4n+1存放IP,4n+2和4n+3存放CS。8086系统中,中断向量表位于存储器的最低端地址从0000003FFH共1K字节的存储区域。7 答:中断服务程序实际上是具有一定功能和格式,预先设计好的子程序或过程。可供系统和用户程序调用,或由外部硬件启动。8 答:一般有下面三个阶段。中断申请:有允许发出中断请求中断源向发出中断请求信号。中断响应:CPU在满足响应的条件后,自动完成关闭中断(为禁止CPU响应其它中断申请),保护断点现场信息(通常为断点和标志寄存器内容入栈),获得中断服务入口地址,转中断服务程序9 答:中断嵌套就是后一级中断能中断前一级中断服务程序,转去为后一级中断服务,服务完毕后,在返回到前一级的中断服务程序继续执行。10 答;不同之处有:引起中断的条件;硬中断是由外部硬件(外设)产生的中断,软中断是执行INT n指令而引起的中断。获取中断号的方式;硬中断的中断号一般有中断控制器提供(除NMI),软中断由中断指令给出。CPU响应的条件;硬中断(除NMI)是可屏蔽的,软中断和NMI是不可屏蔽的。中断结束的方式;硬中断(除NMI)的服务程序执行完时,一般要发中断结束命令(EOI),而软中断则不需要。11 答:8259A的主要功能是控制和管理不可屏蔽中断源向CPU发中断申请,并提供相应的中断类型号。内部有:中断请求寄存器(IRR),用来锁存外部输入的中断请求信号;中断服务寄存器(ISR):用来记录被响应且正在处理的中断请求;中断屏蔽寄存器(IMR):用来对各个中断源(IR7IR0)进行屏蔽或开放。12 答:特殊全嵌套方式与完全嵌套方式的过程基本相同,只是在中断嵌套时的条件上有所不同;完全嵌套方式仅允许级别高的中断源申请中断进行嵌套。而特殊全嵌套方式不但允许级别高的中断申请,而且允许同级的中断申请进行嵌套。13 答:在8259A的级联中,从片的INT端连在主片的某一中断输入引脚IRi端,这样,从片上的8个输入端的优先级都高于了主片上IRi以后的中断申请信号,为了改变这种情况,使得系统只屏蔽从片上的中断,而允许主片上的中断信号,则就必须集中能够主片设定为特殊屏蔽方式。14 答:所谓中断响应周期是CPU在收到中断控制器提出的中断请求INT后,若IF=1且当前指令执行完毕,CPU发出两个连续的中断应答信号与中断控制器进行应答操作的过程。在中断响应中,CPU发第一个负脉冲时,封锁总线锁定信号,8259A将被选中最高优先级置位ISR,相应IRR位清零。CPU发发第二个负脉冲时,总线锁定信号撤除,8259A通过数据总线向CPU发被响应中断的中断类型号。若是在自动结束方式下,则先被置位的ISR对应位复位。CPU根据获取的中断号求出中断向量,保护标志位和断点,并将中断向量置入CS:IP中。15 答:中断屏蔽寄存器IMR有8位,决定着是否能向CPU发中断申请信号INT,若某位为1,则对应的中断输入被屏蔽,为0,则允许。中断允许标志IF是决定CPU是否能响应可屏蔽中断信号INTR的允许标志位,为1,允许,为0,屏蔽。在中断响应过程中,先根据IMR进行判优,允许则向CPU发INT信号,再由CPU的中断允许标志IF是决定是否响应,允许则发中断响应信号。16 答:在主程序安排开中断指令是为了能响应中断,使CPU在中断方式下工作,提高CPU的工作效率。在中断服务程序中(开始)安排开中断指令是为了能进行中断嵌套,使CPU处理更加紧急的事件。11. 答:中断处理过程由以下六个环节组成:保护现场。:其作用为:CPU响应中断时自动完成断点和标志寄存器内容的保护,但主程序中使用的寄存器的保护则由用户视使用而定。由于中断程序中也要用到某些寄存器,若不保护这些寄存器在中断前的内容,中断服务程序会将其修改。这样,从中断服务程序返回主程序后,程序不能正确执行。由用户保护这些寄存器内容的功能称为保护现场,实质上是执行PUSH指令将需要保护的寄存器的内容推入堆栈。开中断。其作用为:CPU接收并响应一个中断后自动关闭中断,是为了不允许其他的中断来打断它。但在某些情况下,有比该中断更优先的情况要处理,此时,应停

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论