《微机原理与接口技术》第六章作业答案

  • 格式:doc
  • 大小:36.50 KB
  • 文档页数:5

下载文档原格式

  / 5
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《微机原理与接口技术》第六章作业

一、P207:

1,3,5,10,14

18,19,20

1、什么叫中断?中断系统的主要功能有哪些?

中断:是指CPU在执行程序的过程中,由于某种外部或内部事件的作用,强迫

CPU停止当前正在执行的程序,转去为该事件服务,待事件服务结束后,能自动地返回到被中断的程序中继续执行。

中断系统的功能:

1、设置中断源

2、中断源识别

3、中断源判优

4、中断与返回

3、CPU 响应中断时的处理过程是什么?在各个处理环节主要完成哪些操作?

过程是:中断请求、中断响应、中断处理和中断返回。

(1)中断请求:中断源需要进行中断服务时,由硬件产生一个中断信号INTR 发给CPU 且保持到CPU 响应。

(2)中断响应:CPU 在当前指令执行结束后采样查询INTR ,若中断请求信号有效且允许响应INTR 中断(IF=1),则向请求设备送回低电平有效的中断响应信号INTR , 自此系统自动进入中断响应周期,并由硬件自动完成内容入栈,清除TF 和IF标志、断点入栈,取中断服务程序的入口地址等一系列操作,继而转去执行中断服务程序。

(3)中断处理:执行中断的主体部分。不同的中断请求源,其中断处理的内容是不同的。需要根据中断请求源所要完成的功能,编写相应的中断服务程序存入内存。等待中断响应后调用执行。

(4)中断返回:又中断服务程序中的中断返回指令IRET 完成。执行该指令时,将压入对战的断点和标志位弹出,使CPU 转向被中断的现行程序中继续执行。

5、中断允许标志IF的作用是什么? 可以用什么指令对它置1或清0。

IF用来控制INTR和单步中断。IF=1允许中断IF=0不允许中断

STI:IF=1

CLI:IF=0

10、中断向量表用来存放什么内容?它占用多大的存储空间?存放在内存的哪个区域?可以用什么方法写入或者读取中断向量表的内容?

中断向量表存放中断向量,即中断服务程序的段基址+偏移地址。

中断向量表占1KB 内存

RAM区,地址范围:000H—3FFH。

写入方法:

1、用传送指令直接装入

2、DOS功能调用:INT 21H

(AH)=25H

(AL)=中断类型号

(DS:DX)=中断服务程序的入口地址

读出方法:

1、用传送指令直接读

2、DOS功能调用:INT 21H

(AH)=35H

(AL)=中断类型号

出口参数:

(ES:BX)=中断服务程序的入口地址

14、8259A 有哪几种中断结束方式? 它们适合应用在什么场合?

1、自动结束方式

自动结束方式是利用中断响应信号INTA的第二个负脉冲的后沿将ISR中的中断服务标志位清除,是在中断过程中完成的,并非中断服务程序的真正结束。只适合适用在无多级中断嵌套的场合。

2、普通结束方式

通过向8259A传送一个普通EOI命令来清除ISR中当前优先权级别最高位,适合使用在完全嵌套方式下的中断结束。

3、特殊结束方式通过向8259A传送一个普通EOI命令来清除ISR中的指定位。适合使用在完全嵌套方式下的中断结束,更适合用于嵌套结构有可能遭到破坏的中断结束。

18、某系统使用一片8259A管理中断,中断请求由IR2 引人,采用电平触发、完全嵌套、普通EOI结束方式,中断类型号为42H 端口地址为80H 和81H,试画出8259A 与CPU的硬件连接图,井编写初始化程序。

初始化程序:

MOV AL,00011011B ;电平触发、单片、写ICW4

OUT 80H,AL ;写ICW1

MOV AL,01000000B ;中断类型号40H,则IR2 为42H

OUT 81H,AL ;写ICW2 MOV AL,00000001B ;完全嵌套、非自动结束、8086模式

OUT 81H,AL ;写ICW4

19、某系统使用两片8259A 管理中断,从片的INT 连接到主片的IR2请求输入端。设主片工作于边沿触发、特殊完全嵌套、非自动结束和非缓冲方式,中断类型号为70H ,端口地址为80H 和81H ;从片工作与边沿触发、完全嵌套、非自动结束和非缓冲方式,中断类型号为40H ,端口地址为20H 和21H 。要求:

(1)画出主、从片级联图

(2)编写主、从片初始化程序

主片初始化程序:

MOV AL,00010001B ;边沿触发、主片、写ICW4

OUT 80H,AL ;写ICW1

MOV AL,01110000B ;中断类型号70H,则IR2 为42H

OUT 81H,AL ;写ICW2

MOV AL,00000100

OUT 81H,AL ;写ICW3

MOV AL,00010001B ;完全嵌套、非自动结束、8086模式

OUT 81H,AL ;写ICW4

从片初始化程序:

MOV AL,00010001B ;边沿触发、从片、写ICW4

OUT 20H,AL ;写ICW1

MOV AL,01000000B ;中断类型号40H,则IR2 为42H OUT 21H,AL ;写ICW2 MOV AL,00000010

OUT 21H,AL ;写ICW3

MOV AL,00000001B ;完全嵌套、非自动结束、8086模式

OUT 21H,AL ;写ICW4

20、某系统由8259A 的IR2引入外设中断请求(跳变信号有效),要求当CPU 响应IR2请求时,输出显示字符串“****”,并中断10次退出,试编写主程序和中断服务程序。

程序:

DATA SEGMENT

MESS DB '*****',OAH,ODH,'$'

INTA00 EQU 0020H

INTA01 EQU 0021H

DATA ENDS

STACK SEGMENT STACK

DB 100H DUP (?)

STACK ENDS

CODE SEGMENT

ASSUME CS :CODE ,DS :DATA ,SS :STACK

MAIN :MOV AX ,DATA

MOV DS ,AX

MOV DX ,INTA00 ;8259A 初始化

MOV AL ,13H ;写ICW1

OUT DX ,AL

MOV DX ,INTA01

MOV AL ,08H ;写ICW2

OUT DX ,AL

MOV AL ,01H ;写ICW4

OUT DX ,AL

PUSH DS

MOV AX ,SEG INT-P ;设置中断矢量

MOV DS ,AX

MOV DX ,OFFSET INT-P

MOV AL ,0AH

MOV AH ,25H

POP DS

MOV AL ,0FBH ;写中断屏蔽字OCW1 OUT DX ,AL

MOV DX ,INTA00

MOV AL ,20H ;写中断结束方式OCW2 OUT DX ,AL

MOV BX,10

WAIT1: STI ;开中断

JMP WAIT1 ;等待中断

INT-P :MOV AX ,DATA ;中断服务程序入口

MOV DS ,AX

MOV DX ,OFFSET MESS ;输出指定字符串

MOV AH ,09H

INT 21H