微机原理67章答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第6章作业
问答题
3 若8086系统采用单片8259A,其中一个中断源的中断类型码为46H,问该中断源应与8259A
的哪一个IR输入端连接?其中断矢量地址是多少?若其中断服务子程序的首地址为16A0:23D4H,则向量表对应的4个单元的内容是什么?
该中断源应与8259A的IR6相连.其中断矢量地址是0000:0118H,矢量区对应的4个单元内容依次是:D4H,23H,A0H,16H。
4,怎样用8259A的屏蔽命令字来禁止IR4和IR5引脚上的请求?又怎样撤销这一禁止命令?设8259A的端口地址为20H-21H,写出有关指令。
使OCW1的D4和D5位为1,写到8259A的奇地址就可禁止IR4和IR5引脚上的请求。撤销
禁令只需写入D4和D5位为0的OCW1命令。有关指令如下:
IN AL,21H
OR AL,30H
OUT 21H,AL ;禁止IR4,IR5的请求
IN AL,21H
AND AL,0CFH
OUT 21H,AL ;撤销对IR4,IR5的禁令用OR和AND命令是为了保持OCW1的其他6位不变。IMR(中断屏蔽寄存器)内容可读写。
补充1、什么叫中断?简述中断的处理过程。
所谓中断是指CPU在正常运行程序的过程中,CPU内部或外部出现某些事件、异常需要及时处理,导致CPU暂停正在执行的程序,转去执行处理该事件或异常对应的程序,并在处理完毕返回原程序处继续执行被暂停的程序,这一过程称为中断及中断处理。
中断处理过程包括:中断请求、中断响应、中断处理和中断返回几个步骤。
补充2、8086cpu有哪几种中断?简述8086cpu对可屏蔽中断的响应过程。
中断源可分为两大类:一类是外设接口的中断请求,由CPU的引脚引入,中断源来自CPU 外部,故称外部中断(又称硬件中断);另一类在执行指令时引起,来自CPU的内部,故称内部中断(又称软件中断)。
外部中断分为NMI(非屏蔽中断)和INTR(可屏蔽中断)
内部中断分为除法错误中断、溢出中断INTO、单步执行中断(单步中断)、INT n中断指令引起的中断、断点中断
在8086/8088系统中,CPU对可屏蔽中断的响应处理要经过以下几步:
(1) 执行2个中断响应总线周期,取得中断类型码。
当CPU响应INTR引脚上的中断请求后,在2个总线周期的T2~T4状态分别输出2个负脉冲,在第2个总线周期的T2~T4状态内,CPU在低8位数据总线上获得8259A送来的中
断类型码
(2) 执行一个总线写周期将标志寄存器FLAG的值压栈。
(3) 将TF送入TEMP。
(4) 设置IF=0,TF=0,即关中断和禁止单步中断。
(5) 执行两个总线写周期,将断点处的段地址CS和偏移地址IP的内容压栈保护
(6) 执行两个总线读周期,将中断向量前两个字节即中断处理子程序偏移地址和后两个字节段地址的内容分别送入IP和CS寄存器,调用中断处理子程序。
补充3、试按照如下要求对8259 A设置初始化命令字,系统中有一片8259A,中断请求信号用电平触发方式,中断类型码为60H,61H……67H,用特殊全嵌套方式,不用缓冲方式,
采用中断自动结束方式,CPU为8086,8259A的端口地址为93H,94H。
MOV AL,1BH
OUT 94H,AL
MOV AL,60H
OUT 93H,AL
MOV AL ,13H
OUT 93H,AL
第7章作业
简答题
3、8253芯片有哪几个计数通道?每个计数通道可工作于哪几种工作方式?这些操作方式的主要特点是什么?
答:8253内部具有三个独立的16位计数通道:通道0、通道1、通道2.
8253每个计数通道可工作于6中不同的工作方式:
(1)方式0——计数结束中断方式(Interrupt on Terminal Count),在写入控制字后,输出端即变低,计数结束后,输出端由低变高,常用该输出信号作为中断源。其余5种方式写入控制字后,输出均变高。方式0可用来实现定时或对外部事件进行计数。
(2)方式1——可编程单稳态输出方式(Programmable One-short),用来产生单脉冲。(3)方式2——比率发生器(Rate Generator),用来产生序列负脉冲,每个负脉冲的宽度与CLK 脉冲周期相同。
(4)方式3——方波发生器(Square Wave Generator),用于产生连续的方波。方式2和方式3都实现对时钟脉冲进行n分频。
(5)方式4——软件出发选通(Software Triggered Strobe),由软件触发计数,在计数器回0后,从OUT端输出一个负脉冲,其宽度等于一个时钟周期。
(6)方式5——硬件出发选通(Hardware Triggered Strobe),由硬件触发计数,在计数器回0后,从OUT端输出一个负脉冲,其宽度等于一个时钟周期。
4、现欲在程序中利用8253 计数器2 产生的定时间的延时,请写出对8253计数器2的初始化程序以及实现延时的子程序,下面是已知条件:
①选用工作方式0;
②用以计数的时间常数设为:nnnnH;
③8253控制字寄存器端口地址为43H,计数器2 端口地址为42H。
MOV AL,0B0H
OUT 43H,AL
MOV AX,nnnnH
OUT 42H,AL
MOV AL,AH
OUT 42H,AL
(2)延时子程序:
DELAY PROC NEAR
PUSH AX
MOV AL,43H
OUT 61H,AL ;启动计数器2的GATE=1
T:IN AL,62H
TEST AL,10H ;检测OUT2定时是否到
JZ T ;未到,转
POP AX
RET
DELAY ENDP
补充、某系统中8253芯片的通道0~通道2和控制口的地址分别为FFF0~FFF6H,定义通道0
工作在方式3,CLK0=2MHZ,要求输出OUT0为1KZ的方波;定义通道1工作在方式0,其CLK1输入外部计数事件,每计满1000个,向CPU发出中断请求。试写出8253的初始化程序和中断服务程序。并画出8253的电路图。
通道0:方式2,00110111(35H)n=2M/1K=2000
通道1:方式0,01110000 (70H)n=1000
MOV DX,0FFF6H
MOV AL,35H
OUT DX,AL
MOV DX,0FFF0H
MOV AL,00H
OUT DX,AL
MOV AL,20H
OUT DX,AL
MOV DX,0FFF6H
MOV AL,70H
OUT DX,AL
MOV DX,0FFF2H
MOV AX,1000
OUT DX,AL