JZ endof OUT 80H, AL INC BX JMP Status Endof: MOV AX, 4C00H INT 21H
6.7 以可屏蔽中断为例,说明一次完整的中断过程主要包括那些环节? 8088响应可屏蔽中断请求时需要先满足那些前提条件? 答: 中断过程的主要环节:( 参见p.165 ) 中断请求、中断响应、关中断、断点保护、中断源识别、现场保护、中断服务、恢复现场、开中断、中断返回。 8088响应可屏蔽中断请求时需要先满足: 中断允许——IF=1。 当前指令执行完毕。
6.8什么是中断源?为什么要设立中断优先权?什么是中断嵌套?何种情况下程序可能发生中断嵌套? 答: 中断源:计算机系统中引起中断的事件或原因。 当多个中断源同时请求时,CPU需要利用中断优先权决定首先响应哪一个;当一个中断正在服务时,又发生了新的中断请求,CPU需要利用中断优先权确定后者是否优先权更高,以便实现中断嵌套。 中断嵌套:当一个中断服务时CPU又响应新的中断请求就形成中断嵌套。 CPU允许中断(开中断)、新的中断请求比正在服务的中断优先权更高,通常发生中断嵌套。
6.9参见
INTR P.167流程 中断0 锁 三态 中断1
D~D 07 存 缓冲器 中断2
器 IOR 8001H A0~A15 … … 译码
MOV DX,8001H STATUS:IN AL,DX TEST AL,01H JZ NEXT1 ; D0未置1则转测下一位 CALL PROC0 JMP STATUS NEXT1: TEST AL,02H JZ NEXT2 CALL PROC1 JMP STATUS NEXT2: TEST AL,04H JZ NEXT3 CALL PROC2 JMP STATUS NEXT3: TEST AL,08H JZ STATUS CALL PROC3 JMP STATUS
6.10 DMA的意思是 直接存储器存取 ,主要用于高速外设和内存间的数据传送。进行DMA传送的一般过程是:外设先向DMA控制器提出 DMA传送请求 ,DMA控制器通过 HOLD 信号有效向CPU提出总线请求,CPU回以 HLDA 信号有效表示响应。此时CPU的三态信号线将输出 高阻 状态,即将它们交由 DMAC(DMA控制器) 进行控制,完成外设和内存间的直接数据传送。
==================
7.7 假如某并行总线的数据宽度为32位,工作频率为100MHz,若2个时钟周期传送一次数据,其传输速率是多少?如果在时钟的前后沿各传送一次数据,其传输速率是多少?如果采用2-1-1-1的突发传送模式,其平均传输速率是多少? 解答: f =100MHz ,则时钟周期T=1/f =10 ns 1) 2T一次的传输速率,即频率减半:fd = (32/8) * 100/2 M = 200 MB/s
或 fd = (32/8) / (2*10 ns) = 200 MB/s
2) 前后沿各传送一次,即频率加倍:fd = (32/8) * 200 M = 800 MB/s
或即1T2次:fd = (32/8) / (10/2 ns) = 800 MB/s
3) 采用2-1-1-1的突发传送模式,平均为5T4次:
fd = (32/8) /(5*10 ns /4) = 320 MB/s
8.1 8088CPU具有哪些中断类型?各种中断如何产生,如何得到中断向量号? 参见p.191、p.192~193
8.2 8088中断向量表的作用是什么?(参见p.194)
答: 它是中断向量号到对应的中断服务程序入口地址的链接表。 通过中断向量号n,可以读取中断向量表的物理地址为 n*4 开始的单元,获取中断服务程序的入口地址(即中断向量),长度4个字节。
8.3 说明程序段的功能: (程序略,见p.212 上)
答: 此段程序将中断服务程序intproc的入口地址写入中断向量表的80h*4开始的单元中。 (stows 是数据串传送指令,参见p.78。) (实际上可以使用指令序列: mov ax,seg intproc mov ds,ax mov dx,offset intproc mov ax,2580h int 21h 来完成相同功能)
8.4 8259A中IRR、IMR和ISR三个寄存器的作用是什么? 答: ( 参见p.196~197 ) ? 中断请求寄存器IRR
– 保存8条外界中断请求信号IR0~IR7的请求状态 – Di位为1表示IRi引脚有中断请求;为0表示无请求 ? 中断服务寄存器ISR
– 保存正在被8259A服务着的中断状态
– Di位为1表示IRi中断正在服务中;为0表示没有被服务 ? 中断屏蔽寄存器IMR
– 保存对中断请求信号IR的屏蔽状态 – Di位为1表示IRi中断被屏蔽(禁止);为0表示允许
8.5 PC/XT对8259A的初始化程序如下: mov al,13h ;0001 0011 out 20h,al ;ICW1 mov al,08h ;00001000 out 21h,al ;ICW2 mov al,09h ;00001001 out 21h,al ;ICW4 请说明其设定的工作方式? 解答: 从第一个写指令ICW1,看出是边沿触发、单片方式,有ICW4;第二个写指令ICW2为中断向量08h;第三个写指令ICW4中断方式字,表示普通全嵌套、数据线缓冲方式,从片、非自动中断结束、16位微处理器。
8.6 某时刻8259A的IRR内容是08h,说明只有引脚IR3上有中断请求。 某时刻8259A的ISR内容为08h,说明只有IR3上的请求正在被CPU服务。 在两片8259A级联的中断电路中,主片的第5级IR5接从片的中断请求输入,则初始化主、从片时ICW3的控制字分别是20H和05H。 (分别是0010 0000 和0000 0101 )
8.7 8259A仅占用两个I/O端口地址,它是如何区别4条ICW命令和3条OCW命令的? 解:
首先 ICW1、OCW2和OCW3占用的I/O端口为低位地址,即A 0 为 0,其余的初始化命令字和控制命令字的A0 都为 1,所以把ICW1、OCW2和OCW3与别的初始化命令字和控制命令字区别开来;而ICW1的D4 = 1,OCW2的D4 D3 = 00,OCW3的D4 D3 = 01所以可以区分开ICW1、OCW2和OCW3;又知道ICW1是初始化时写入的第一个命令字,紧接着写入的应该是ICW2、ICW3,又ICW1的最低位指定了初始化时是否写入ICW4,所以这些初始化命令字就可以区分开来了。
当初始化完成后工作期间, 3个操作命令字是这样区分的:OCW1占用的I/O端口为高位地址,OCW2和OCW3占用的为低位地址,所以OCW2和OCW3可以和OCW1区分开;而 OCW2和OCW3的D3 位不同,所以二者又被区分开。 8.8 题略p.212。 解:根据题意:SFNM=0,AEOI=0,LTIM=0,ICW1=00010011,ICW2=90H,ICW4=0000x101,初始化8086 所接的8259A中断控制器:
MOV DX, 0FFDCH ;对应20H端口 MOV AL, 13H OUT DX, AL MOV DX, 0FFDEH ;对应21H端口 MOV AL, 90H OUT DX, AL MOV AL, 05H OUT DX, AL
8.10 8259A的中断请求有哪两种触发方式,它们分别对请求信号有什么要求?PC系列机中采用哪种方式?
答: 上跳沿触发,要求克服噪音尖峰。 高电平触发,请求及时撤销请求信号。 PC系列机采用上升沿方式。
8.11 解答: 0bh = 00001011 b,写OCW3,接下来要读的是ISR,中断服务寄存器。
8.12解答: 0bch = 10111100 b,21H写OCW1即IMR,结果是只允许IR0、IR1、IR6中断,其他中断被屏蔽。
8.14 中断服务程序的人口处为什么通常要使用开中断指令? 答:
因为8088在进入中断服务程序前的中断响应期内会自动关中断(令IF=0),所以对于不十分重要的中断源,其中断服务程序的人口处要开中断,以便可以实现中断嵌套。
--------------------------
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库微机原理与接口技术课程习题答案(3)在线全文阅读。
相关推荐: