微机原理

1、一般的IO接口电路安排有哪三类寄存器?它们各自的作用是什么? (1)安排数据寄存器、状态寄存器、控制寄存器。 (2)数据寄存器:存放CPU与外设之间传送的数据信息。 状态寄存器: 存放当前外设所处的工作状态。 控制寄存器: 存放CPU通过接口向外设传送控制信息。

2、 若8086系统采用单片8259A中断控制器控制中断,中断类型码给定为20H,中断源的请求线与8259A的IR4相连,试问:对应该中断源的中断向量表入口地址是什么?若中断服务程序入口地址为4FE24H,则对应该中断源的中断向量表内容是什么,如何定位?

答:中断向量表入口地址为:0段的0090H地址。对应4FE24H中断服务程序入口,在向量表中定位情况:(0090H)=24H、(0091H)=00H、(0092H)=E0H、(0093H)=4FH。

3、设定8255芯片的端口A为方式1输入,端口B为方式1输出,则读取口C的数据的各位是什么含义? PC0:端口B的中断请求信号 PC1:端口B输出缓冲器满信号 PC2:端口B中断允许控制位 PC3:端口A的中断请求信号 PC4:端口A中断允许控制位 PC5:端口A输入缓冲器满信号 PC6/PC7:I/O信号

4、试按照如下要求对8259A设定初始化命令字:8086系统中只有一片8259A,中断请求信号使用电平触发方式,全嵌套中断优先级,数据总线无缓冲,采用中断自动结束方式。中断类型码为20H~27H,8259A的端口地址为0B0H和0B1H。并写出8259A的初始化程序段。

答:ICW1=1BH (送B0H端口),ICW2=20H (送B1H端口),ICW4=03H (送B1H端口) MOV AL,1BH OUT 0B0H,AL MOV AL,20H OUT 0B1H,AL MOV AL,03H OUT 0B1H,AL

5、设8253三个计数器的端口地址为200H、201H、202H,控制寄存器端口地址203H。输入时钟为2MHz,让1号通道周期性的发出脉冲,其脉冲周期为1ms,试编写初化程序段。

答: 要输出脉冲周期为1ms ,输出脉冲的频率是1/(1*10^-3)=1000,当输入时钟频率为2MHz 时,计数器初值是 2MHz/1000=2000,使用计数器1,先读低8位,后读高8位,设为方式3,二进制计数,控制字是76H。设控制口的地址是200H,计数器1的地址是202H。 程序段如下: MOV DX,203H MOV AL,76H OUT DX,AL MOV DX,201H MOV AX,2000 OUT DX,AL MOV AL,AH OUT DX,AL

6.如图所示,将8255的C端口接8个发光二极管,使这8个发光二极管依次亮灭,其中74LS138译码器与地址总线已经连接正确。

(1)C口端口地址为多少?控制口端口地址为多少? (2)按位置位/复位字0FH含义是什么?

(3)试编写实现8个发光二极管循环亮灭的程序。(已知有一个延时1秒的子程序,其入口地址为DELAY1S)。 答:(1)C口端口地址为3EAH,控制口端口地址为3EBH。 (2)按位置位/复位字0FH含义是将PC7置1。 (3) MOV DX ,3EBH MOV AL, 80H OUT DX, AL MOV DX, 3EAH MOV AL , 01H L1: OUT DX,AL LCALL DELAY1S ROR AL, 1 JMP L1 HLT

7.用8253实现每隔1s产生一个负脉冲,已知8253的时钟频率为2MHz,(1)写出8253的端口地址;(2)编写8253的初始化程序。

答:(1)8253的端口地址为DF80H,DF81H,DF82H,DF83H

(2)1/2MHz=0.5us ,1s/0.5us=2000000>65535,应采用两个计数器级联,可定义0#计数器工作在方式3(方波发生器),计数初值为20000,1#计数器工作在方式2(频率发生器),计数初值为100。 MOV DX, 0DF83H MOV AL,00110110B OUT DX,AL MOV AL,01010100B OUT DX,AL MOV DX,0DF80H MOV AX,20000 OUT DX,AL MOV AH,AL OUT DX,AL MOV DX,0DF81H MOV AL,100 OUT DX,AL

8.IBM-PC/XT计算机系统接口芯片连接如图所示,AEN低电平选中端口。 (1)试说明各芯片使用的端口地址。

答:8259:20H,21H 8253:40H,41H,42H,43H (2)初始化各芯片。

1)单片8259工作在完全嵌套方式,中断申请输入IR0~IR7为边沿触发,IR0的中断号为08H,试写出8259初始化程序段。

答: INT00 EQU 20H

INT01 EQU 21H MOV AL,13H OUT INT00,AL MOV AL,08H OUT INT01,AL MOV AL,09H OUT INT01,AL

2)8253的定时器0和定时器2工作在方式2,定时器0的定时时间为25mS,定时器2的输出频率为896HZ,试写出8253初始化程序段.

答:CTC0 EQU 40H CTC1 EQU 41H CTC2 EQU 42H

CTCC EQU 43H MOV AL,36H ;通道0 OUT CTCC,AL MOV AX,7485H OUT CTC0,AL OUT CTC0,AL MOV AL,0B6H ;通道2 OUT CTCC,AL MOV AX,533H OUT CTC2,AL

MOV AL,AH OUT CTC2,AL

9. 什么是DMA读和DMA写?什么是DMA控制器8237A的单字节传送、数据块传送和请求传送? DMA读:存储器的数据在DMA控制器控制下被读出传送给外设。 DMA写:外设的数据在DMA控制器控制下被写入存储器。

单字节传送方式:每次DMA传送时仅传送一个字节。传送一个字节之后,DMA控制器释放系统总线,将控制权还给处理器。

数据块传送:DMA传送启动后就连续地传送数据,直到规定的字节数传送完。

请求传送:DMA传送由请求信号控制。如果请求信号一直有效,就连续传送数据;但当请求信号无效时,DMA传送被暂时中止。

10、什么是接口电路的命令字或控制字?

处理器向接口芯片相应端口写入特定的数据,用于选择I/O芯片的工作方式或控制外设工作,该数据称命令字或控制字。

11、 若8086系统采用单片8259A中断控制器控制中断,中断类型码给定为20H,中断源的请求线与8259A的IR4相连,试问:对应该中断源的中断向量表入口地址是什么?若中断服务程序入口地址为4FE24H,则对应该中断源的中断向量表内容是什么,如何定位?

答:中断向量表入口地址为:0段的0090H地址。对应4FE24H中断服务程序入口,在向量表中定位情况:(0090H)=24H、(0091H)=00H、(0092H)=E0H、(0093H)=4FH。

12、试对一个8251A进行初始化编程,要求工作在内同步方式,7位数据位,奇校验,1个停止位, 2个同步字符。

方式字是:00011000B=18H 程序段如下: XOR AX,AX MOV DX,PORT OUT DX,AL OUT DX,AL

OUT DX,AL ;向8251的控制口送3个00H MOV AL,40H

OUT DX,AL ;向8251的控制口送40H,复位 MOV AL,18H

OUT DX,AL ;向8251送方式字 MOV AL,SYNC ;SYNC为同步字符 OUT DX,AL

OUT DX,AL ;输出2个同步字符 MOV AL,10111111B

OUT DX,AL ;向8251送控制字

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4