文档详情

汇编语言程序设计 习题7:中断控制接口学习资料.doc

发布:2025-04-14约1.03千字共2页下载文档
文本预览下载声明

PAGE

PAGE1

第七章中断控制接口

〔习题7.1〕

8088CPU具有哪些中断类型?各种中断如何产生,如何得到中断向量号?

解答1:

?除法错中断:在执行除法指令时,除数为0或商超过了寄存器所能表达的范围产生

?指令中断:在执行中断指令INTn时产生

?溢出中断:在执行溢出中断指令INTO时,溢出标志OF为1产生

?单步中断:单步标志TF为1,在每条指令执行结束后产生

?非屏蔽中断:外部通过NMI请求信号向微处理器提出请求时产生

?可屏蔽中断:外部通过INTR请求信号向微处理器提出请求,并在允许可屏蔽中断的条件下产生

解答2:

?除法错中断、溢出中断、单步中断、非屏蔽中断的向量号是8086微处理器内部已经确定

?指令中断的操作数n就是向量号

?可屏蔽中断的向量号在响应中断时通过数据总线从外部获得

〔习题7.2〕

8088中断向量表的作用是什么?

〔解答〕

参看教材7.1.3节(P166页)

〔习题7.11〕

下段程序读出的是8259A的哪个寄存器?

moval,0bh

out20h,al

nop

inal,20h

〔解答〕

?读取中断服务寄存器ISR的内容

?因为执行输入指令(A0=0)之前,执行的输出指令,写入了OCW3(D4D3=01),其中PRRRIS(D2D1D0)=011指明随后读出ISR

?不是查询字

〔习题7.14〕

中断服务程序的人口处为什么通常要使用开中断指令?

〔解答〕

?开中断,以便可以实现中断嵌套。

补充:1.如何利用DOS功能调用设置中断向量?

--解答参考教材第8.1.3节(第1

解答:

设置中断向量即为把新中断向量写入中断向量表内。方法如下:

MOVAH,25H

MOVAL,中断向量号

MOVDS,新中断向量的段地址

MOVDX,新中断向量的偏移地址

INT21H

补充:2.如何利用DOS功能调用获取中断向量?

--解答参考教材第8.1.3节(第1

解答:

获取中断向量即为把中断向量表内的中断向量读出到ES:BX中。方法如下:

MOVAH,35H

MOVAL,中断向量号

INT21H

补充:3.如何开CPU的中断允许?

解答:

用STI指令使IF=1。

补充:4.如何开8259A的中断允许?

解答:

OCW1中的IMR的第i位=0,即允许IR中的第i位发出中断申请。

编程方法参见P207页(5)。

显示全部
相似文档