8259问答题Word文档格式.docx
《8259问答题Word文档格式.docx》由会员分享,可在线阅读,更多相关《8259问答题Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
![8259问答题Word文档格式.docx](https://file1.bdocx.com/fileroot1/2022-11/24/f2904266-8e43-46bb-8f65-bda42468dd0e/f2904266-8e43-46bb-8f65-bda42468dd0e1.gif)
✓非特殊全嵌套方式,IR0中断优先权最高、IR7最低
✓八级中断的中断向量分别为08H~0FH
✓中断申请采用边沿触发形式
✓采用普通EOI命令
✓采用普通中断屏蔽方式
请确定8259A的初始化命令ICW和操作命令OCW
5、什么是8259A的特殊屏蔽方式?
8259A有普通屏蔽方式和特殊屏蔽方式。
在特殊屏蔽模式,由OCW1写入的屏蔽字中为“1”的那些位的中断被屏蔽,而为“0”的那些位不管其优先权如何,在任何情况下都可以申请中断。
6、什么是8259A特殊全嵌套模式?
8259A有两种中断嵌套模式——特殊全嵌套模式和非特殊全嵌套模式。
特殊全嵌套模式与全嵌套模式基本相同,不同处,在特殊全嵌套模式,当处理某一级中断时,如果有同级中断请求,也会给予响应,从而实现对同级中断请求的特殊嵌套。
特殊全嵌套模式一般用在8259A级联的系统中。
主片工作在特殊全嵌套模式,从片处在其他优先级方式。
当来自于某个从片的中断请求正在处理,一方面与普通的全嵌套模式一样,对来自于优先级较高的主片其他引脚上的中断请求进行开放;
对来自于同一从片的较高优先级的请求也会开放。
对后者,主片引脚反映出来与当前正处理的中断请求处于同一级,但在从片内部看来,新来的中断请求一定比正在处理的优先级别高。
7、8259A有几种中断结束方式?
不同方式是如何结束中断?
8259A有2种中断结束方式——自动中断结束方式、非自动中断结束方式。
如果8259A工作在自动中断结束方式,则中断应答信号
的第二个脉冲使中断服务寄存器ISR相应位清0。
中断服务程序结束时,不再向8259A回送结束中断命令。
该种方式可能引起低级中断打断高级中断的情况发生,因此只能用于不需中断嵌套的场合。
如果8259A工作在非自动中断结束方式,则中断服务程序结束时必须向8259A回送中断结束命令,以便使中断服务寄存器ISR相应位置0。
若8259A处于级联状态,除了向从片回送中断结束命令外,还需要向主片回送中断结束命令。
8、什么是8259A的缓冲模式,请描绘?
在多片8259A级联的大系统中,8259A通过总线驱动器与系统数据总线相连,这就是缓冲方式。
在缓冲方式下,有一个总线驱动器的启动问题。
将8259A的
端和总线驱动器的允许端相连。
8259A工作在缓冲方式时,会在输出状态字或中断类型码的同时,从
端输出一个低电平,此低电平正好作为总线驱动器的启动信号。
在8259A初始化编程中,设置ICW4的BUF位可以决定8259A是否工作在缓冲模式,置为1则工作在缓冲模式,清0则工作在非缓冲模式。
9、试简述8086/8088CPU可屏蔽中断INTR的中断过程。
外设向INTR引脚发信号请求中断;
如果此中断未被屏蔽,且IF=1,向CPU发出中断请求信号INTR;
当前指令执行完后,CPU响应中断,向8259A发2个响应信号
,第2个响应信号到达8259A后,8259A向CPU发出中断向量,内部自动实现关中断;
保留断点——IP和CS;
保存现场——保存断点处有关寄存器和标志位的状态;
给出中断入口,转入相应中断服务程序;
恢复现场;
开中断和返回。
10、8259A的中断响应过程?
当有一条或若干条中断请求输入线(IR7~IR0)变高,则中断请求寄存器IRR的相应位置位;
若中断请求线中至少一条是中断允许的,则8259A由INT引脚向CPU送出中断请求信号;
若CPU处在开中断状态,则在当前指令执行完成后,用
作为响应;
8259A在接收到CPU的
后,使最高优先级的ISR位置位,而相应的IRR复位。
在此周期中,8259A并不向系统数据总线送任何的内容;
8088/8086CPU将启动另一个中断响应周期,输出另一个
脉冲,在这个周期内,向数据总线输出一个8位的指针(向量)。
CPU在此周期中,读取此向量把它乘以4,从中断向量表中取出中断程序的入口地址;
中断周期响应完成后,CPU就可以转至中断服务程序。
若8259A工作在AEOI模式,第二个
脉冲结束时,使ISR的相应位复位;
否则,直至中断服务程序结束,发出EOI命令,才使ISR的相应位复位
11、根据下图请描述三片8259A芯片初始化命令字ICW2的内容?
初始化命令字ICW2的地址是奇地址还是偶地址?
主8259A初始化命令字ICW2内容01100000B地址是奇地址
从8259AⅠ初始化命令字ICW2内容00000110B地址是奇地址
从8259AⅡ初始化命令字ICW2内容00000101B地址是奇地址
12、根据下图请描述级联情况下8259A接到CPU的
响应的过程?
三片8259A都收到CPU的
信号,主8259A判断发出申请中断请求信号。
当中断请求信号没有接从8259A时,处理方法与非级联8259A的响应过程一样;
当判断出中断申请来自于从8259A,这里假设为从8259AⅠ芯片,则主8259A在CAS2CAS1CAS0中设置110bit。
从8259A收到CAS2CAS1CAS0信号,从8259AⅠ发现自己的中断申请被响应。
CPU又发出第二个
信号,三片8259A都收到,从8259AⅠ向数据总线送出中断向量,给CPU。
13、什么是8259A工作在查询方式?
当系统中断源很多的时候,超过64个时,则8259A工作在查询方式OCW3设置查询方式后,随后送到8259A的
端的读脉冲(即读偶地址产生
信号)作为中断响应信号,读出最高中断优先权的中断请求IR级别码
14、779
(不考)
17、在8259A的工作过程中要开放IR0、IR3和IR7的中断请求,屏蔽其他中断请求,写出其操作命令字OCW1。
若8259A的端口地址是278H和27AH,写出将此OCW1写入8259A的程序段
OCW101110110
写入OCW1的程序段如下:
MOVDX,27AH
MOVAL,76H
OUTDX,AL
18、怎样用8259A的屏蔽命令字来禁止IR3和IR5引脚上的请求?
又怎样撤销这一禁止命令?
在禁止和撤销时,不能影响其他中断源的屏蔽设置。
设8259A的端口地址为90H、91H
屏蔽IR3和IR5引脚上的中断请求指令如下:
INAL,91H
ORAL,28H
OUT91H,AL
重新开放IR3和IR5引脚上的中断请求指令如下:
ANDAL,0D7H
19、若8259A初始化时,ICW2的值是48H,则此时8259A的IR3连接的外部设备的中断类型号是多少?
请问该中断在中断向量表中写入中断向量的地址是什么?
如果IR3对应的中断向量为0ACBDH:
5678H,在中断向量表中该中断向量是如何存储?
IR3连接外部设备的中断类型号为4BH
该中断在中断向量表中写入中断向量的偏移地址为4BH*4=12CH,物理地址是0012CH
中断向量在中断向量表的存储如下:
20、
Stacksegmentstack
Dw64dup(?
)
Stackends
Codesegment
Assumecs:
code
Start:
pushds
Movax,0000h
Movds,ax
Movax,offsetirq7
Addax,2000h
Movsi,003ch
Mov[si],ax
Movsi,003eh
Mov[si],ax
cli
popds
inal,21h
andal,7fh
out21h,al
movcx,000ah
a1:
cmpcx,0000h
jnza2
oral,80h
out21h,al
sti
hlt
a2:
sti
jmpa1
irq7:
movax,0137h
int10h
movax,0120h
deccx
moval,20h
out20h,al
cli
iret
codeends
endstart
21、
Datasegment
Tabledb4dh,41h,49h,4eh,20h,00h
Dataends
code,ds:
data
movax,data
Movds,ax
Pushds
Movax,0000h
Movds,ax
Movax,offsetirq6
Addax,2000h
Movsi,0038h
Mov[si],ax
Movsi,003ah
Movax,offsetirq7
Addax,2000h
Movsi,003ch
Movsi,003eh
Popds
Moval,13h
Out20h,al
Moval,08h
Out21h,al
Moval,09h
Moval,3dh
Sti
A1:
movcx,0007h
Movax,010dh
Int10h
A2:
movah,06h
Movbx,offsettable
Calldally
Loopa2
Jmpa1
Irq6:
sti
Movax,0136h
Moval,20h
Out20h,al
iret
Irq7:
Movax,0137h
dally:
pushcx
pushax
movcx,0040h
a3:
movax,056ch
a4:
decax
jnea4
loopa3
popax
popcx
ret