当前位置:首页 > 微机原理答案
国家十一五规划教材《微机原理与接口技术(第二版)》思考题与习题参考答案 21
JNZ BEEP
MOV DX,0FEFFH
MOV AL,0 ;PC0=0置复位命令字 OUT DX,AL JMP START MOV DX,0FEFFH MOV AL,1 OUT DX,AL MOV CX,18 IN AL,DX
TEST AL,01000000B ;BUSY=1? JNZ WAITB MOV AL,[SI]
MOV DX,OFEFDH ;B口 OUT DX,AL INC SI LOOP WAITB
;PC0=1 ;报警
;18个字符 ;取消报警
BEEP:
MOV SI,OFFSET STRINGS MOV DX,0FEFFH
WAITB:
STRINGS DB ‘Grasp the burglar!’
6-19已知8254的端口地址为9F0CH~9F0FH,外接时钟频率为2MHz,利用8254的OUT0通道产生周期为1ms的方波,OUT1产生最快的连续脉冲序列,周期为多少?OUT2产生最大的负脉冲(建议方式1),负脉冲的宽度为多少。试编制满足上述要求的程序。 解:(1)满足要求的程序如下
.MODEL SMALL
.CODE .STARTUP
MOV AL,00110110B ;CTC0命令字:方波信号发生器方式 MOV DX,9F0FH OUT DX,AL MOV DX,9F0CH MOV AX,2000 OUT DX,AL MOV AL,AH OUT DX,AL
;CTC0通道地址
;计数常数=2MHz*1000us=2000 ; 实际收入低8位初值 ;取高8位 ;写高8位初值 ;8254控制口地址 ;CTC1通道地址 ;计数常数=2(最快) ;8254控制口地址
MOV AL01010100B ;CTC1命令字:速率发生器方式 MOV DX,9F0FH OUT DX,AL MOV DX,9F0DH MOV AL,2
22 《微型计算机及接口技术》
OUT DX,AL ;写初值
;8254控制口地址 ;CTC2通道地址 ;计数常数=0000(最大值) ;写初值
MOV AL10110010B ;CTC2命令字:负脉冲信号发生器方式 MOV DX,9F0FH OUT DX,AL MOV DX,9F0EH MOV AL,0 OUT DX,AL .EXIT END
OUT2产生最大的负脉冲,负脉冲的宽度为65536个计数脉冲周期=65536×
OUT DX,AL
(2)OUT1产生最快的连续脉冲序列,1个周期为2个计数时钟,因此周期=1/2MHz*2=1us; 1/2MHz=32768us=32.768ms
6-20 已知8254的CLK0接5MHz时钟, 其端口地址为280H,281H,282H和283H系统采用16位的8086
(1)画出8254与系统的连接图, 译码电路自行设计。
(2)要在OUT0周期性地产生负脉冲宽度为2ms的信号作为定时中断请求信号,写出初始化程序 (3)若利用8254产生1S为周期的定时中断信号,说明实现方法,画出相应的连接图,并编写相应程序。
(1) 由地址:280H~283H知:(地址不重叠,即全译码,I/O端口16条地址线全部要参与译码)
A15A14A13A12A11A10A9A8A7A6A5A4A3A2=0000 0010 1000 00xx B 电路如下:
+5V A15 A14 A13 A12 A11 A10 A9 A7 A8 A6 A5 A4 A3 A2 M/IO AEN 74LS27 GATE0 GATE1 GATE2 74LS30 CS 74LS27 WR RD A1 A0 WR RD A1 A0 CLK0 OUT0 CLK1 OUT1 OUT2 5MHz
(2) OUT0产生2ms定时中断信号(方波)
MOV AL,00110110B ;ctc0控制字 MOV DX,0283H OUT DX,AL
国家十一五规划教材《微机原理与接口技术(第二版)》思考题与习题参考答案 23
MOV AX,20000
MOV DX,280H OUT DX,AL MOV AL,AH OUT DX,AL
;初值=5MHz*(2ms*2)=5000*4=20000
;注意:2ms仅为负脉冲宽度,因此一个周期=4ms ;CTC0通道 ;写低字节初值 ;写高字节初值
(3) 将OUT0连接到CLK1,CTC1初值=1S/4ms=1000/4=250
MOV AL,01010110B ;ctc1控制字 MOV DX,0283H OUT DX,AL MOV AX,250 MOV DX,281H
OUT DX,AL
;初值=1S/4ms=250 ;CTC1通道 ;写初值
24 《微型计算机及接口技术》
第7章 思考与习题参考答案
7-2在中断响应过程中,硬件完成的主要任务有哪些?
答:从接到中断请求到中断处理之前(转中断服务程序入口地址)这一段时间称为中断响应阶段或中断响应过程。
对于可屏蔽中断,微处理器响应中断,硬件会自动完成以下几项工作: (1) 中断响应的第一阶段即接到中断申请,处理完当前指令即进入响应周期。
(2) 第二阶段即中断响应周期,在其间微处理器向外部中断控制器发送两个响应脉冲信号INTA作为INTR的响应,每一个脉冲占用一个总线周期。第一个响应脉冲通知中断控制器,微处理器已经响应外部的中断请求,这时中断控制器准备提供该外部中断的中断类型号。在第二个响应脉冲到来时,微处理器取走中断控制器提供的中断类型号。
(3) 将标志寄存器中的内容压入堆栈保护,然后清IF和TF标志,以禁止INTR中断引脚以及陷进和单步中断。
(4) 将断点地址压入堆栈(CS:IP或CS:EIP或CS:RIP)。
对于外部中断以及陷井异常:断点地址是指中断时微处理器待执行的下一条指令对应的逻辑地址;对于故障异常:断点地址是指中断时微处理器待执行的当前指令对应的逻辑地址。
先压入断点地址的CS,后压入偏移地址IP或EIP或RIP。
(5) 微处理器从外部中断控制器取得中断类型号码n,通过中断类型号与中断服务程序入口地址的关系找出该类型对应的段基地址和偏移地址,从而转入中断服务程序入口地址,完成中断响应任务。
7-4 中断描述符包括了哪些地址信息?
答:中断描述符描述了某中断对应中断服务程序的入口地址信息及其属性,包括中断服务程序入口地址所在段的段内偏移地址和段选择子等。每个中断描述符占8个字节,中断描述符格式如下:
高地址
偏移地址(A31~A16) P DPL 0 1 1 1 0 0 0 0 0 0 0 0 0 低地址
段的选择子 偏移地址(A15-A0) 图7.4 中断描述符
其中偏移地址A0~A31共32位;段选择子16位,存放在段寄存器中;P为存在位,P=1表明中断描述符在物理存储器中;DPL为中断描述符特权级两位,共4级,00,01,10,11,其中00为最高级,11为最低级。
7-5 简述实地址方式和保护地址方式下中断服务程序入口地址的形成方法。 答:
1. 在实方式下,中断类型号n与该中断对应的中断向量存放的起始地址之间的关系是:
中断向量存放的起始地址=4×n,即中断类型号为n的中断向量存放在从4n到4n+3这4个单元,其中4n+3(高字节),4n+2(低字节)存放中断服务程序入口地址的段地址,而4n+1(高字节),4n(低字节)存放中断服务程序入口地址的偏移地址。因此实方式下的中断服务程序入口地址=段地址×16+偏移地址。
2.保护方式下的中断服务程序入口地址是通过中断描述符的结构来寻址的。具体方法如下: (1) 根据中断类型号从中断描述符表中找出中断描述符
共分享92篇相关文档