微机原理与接口技术(第二版) 清华大学出版社
6.现有一输入设备,其数据端口的地址为FFE0H,并于端口FFE2H提供状态,当其D0位为1时表明输入数据准备好。请编写采用查询方式进行数据传送的程序段,要求从该设备读取100B并输入到1000H:2000H开始的内存中。
MOV DX, 0FFE2H
L1: IN AL, DX 这是习题6的第6题的答案, TEST AL, 01H 这个程序写不出来,建议删这一问 JZ L1
MOV AX, 1000H MOV DS, AX MOV DX, 2000H MOV CX, 100 MOV DX, 0FFE0H L2: IN AL, DX MOV [DX], AL INC BX LOOPN L2
7.查询式传送方式有什么优缺点?中断方式为什么能弥补查询方式的缺点? 答:查询传送方式CPU通过程序不断查询相应设备的状态,状态不符合要求,则CPU需要等待;只有当状态信号符合要求时,CPU才能进行相应的操作。中断方式提高了计算机系统中信息处理的并行和处理器效率,中断可以实现同步操作,实时处理等功能。
8. 8088/8086中断向量表的作用是什么?
答:中断向量表建立了不同的中断源与其相应的中断服务程序首地址之间的联系,它是CPU在响应中断时可以依据中断类型码自动转向中断服务程序。
9. 什么叫中断向量?它放在哪里?对于1CH的中断向量在哪里?如果1CH的中断程序从5110H开始:2030H开始,则中断向量应该怎样存放? 答:中断向量即用来提供中断入口地址的一个指针。
10. 8259中IRR, IMR, ISR三个寄存器的作用是什么?
33
微机原理与接口技术(第二版) 清华大学出版社
答:⑴中断请求寄存器IRR
8259A有8条外部中断请求输入信号线IR0-IR7,每一条请求线上有一个相应的触发器来保存请求信号,它们形成了中断请求寄存器IRR(Interrupt Request Register)。
⑵中断屏蔽寄存器IMR
IMR(Interrupt Mask Register)用来存放屏蔽位信息,IMR的每一位可以禁止IRR中对应位的中断请求输入信号进入。
⑶中断服务寄存器ISR
ISR(Interrupt Service Register)存放当前正在进行服务的所有中断。ISR中相应位的置位是在中断响应的INTA脉冲期间,由优先权判决电路根据IRR中各请求位的优先权级别和IMR中屏蔽位的状态,将中断的最高优先级请求位选通到ISR中。
11. 类型号为20H的中断服务程序入口符号地址为INT-5,试写出中断向量的装入程序片段。 答:MOV AX, 0
MOV DS, AX MOV SF, 20H*4 LEA AX, IMS MOV [IS], AX MOV AX, SEQ, INTS MOV [SI+2], AX
12. 简述DMA控制器同一般接口芯片的区别。
答:DMA控制器能给出访问内存所需要的地址信息,并能自动修改地址指针,也能设定和修改传送的字节数,还能向存储器和外设发出相应的读/写控制信号。在DMA传送结束后,它能释放总线,把对总线的控制权又交还给CPU。用DMA方式传输数据时,不需要进行保护和恢复断点及现场之类的额外操作。
13. 简述8237A3种基本传送类型的特点。
34
微机原理与接口技术(第二版) 清华大学出版社
答:单次传送方式:每次DMA操作只传送1B,然后就自动把总线控制权交给CPU,若还有通道请求信号,则DMAC则再重新向CPU发出总线请求,获得控制权后责传送下一B数据。
数据块传送:在进入DMA操作后,就连续传送数据,直到整块数据全部传送完毕,在字节数减为0或外界输入终止信号时,才会将总线控制权交还给CPU。
请求传送:这种方式也可以用于成块数据传输。这种方式适用于准备好传送数据时,发出通道请求;若数据未准备好时,就使通道请求无效,将总线控制权交还给CPU。
35
微机原理与接口技术(第二版) 清华大学出版社
习题7
1. 并行接口有何特点?其应用场合如何?
答:一个并行接口包含状态信息,控制信息,和数据信息,这些信息分别存放在
状态寄存器,控制寄存器和数据缓冲缓冲寄存器。从并行接口的电路结构来看,它有硬连接线接口和可编程接口之分。硬连接线接口不能用软件编程方法加以改变,而可编程接口可用软件编程方式加以改变。其应用于打印机,IEEE488接口,开关量接口,控制设备接口等。
2. 可编程并行芯片8255有哪几种工作方式?其差别何在?他们在危机系统中的连接方法有什么不同?
答:8255A有3种工作方式:称为方式0,方式1和方式2。
其中A口可以工作在3种方式中的任一种;B口只能工作在方式0和方式1;C口通常作为控制信号使用,配合A口和B口的工作。
①方式0:基本的输入输出方式
方式0之所以被称为基本的输入输出方式,是因为在这种方式下,A口、B口和C口(C口分为2个4位使用)都可提供简单的输入和输出操作,对每个口不需要固定的应答式联络信号。
工作在方式0下,在程序中可直接使用输入指令(IN)和输出(OUT)指令对各口进行读写。方式0的基本定义如下:2个8位的口和2个4位的口。任何一个口都可以作为输入或输出。输出可以被锁存。输入不能锁存。
方式0一般用于无条件传送的场合,不需要应答式联络信号,外设总是处于准备好的状态。也可以用作查询式传送,查询式传送时,需要有应答信号。可以将A口、B口作为数据口使用。把C口分为2部分,其中4位规定为输出,用来输出一些控制信息;另外4位规定为输入,用来读入外设的状态。利用C口配合A口和B口完成查询式的I/O操作。
②方式1:选通输入/输出方式
在这种方式下,当A口和B口进行输入输出时,必须利用C口提供的选通和应答信号。而且这些信号与C口中的某些位之间有着固定的对应关系,这种关系是硬件本身决定的不是软件可以改变的。由于工作在方式l时,要由C口中的固定位来作为选通和应答等控制信号,因此称方式1为选通的输入/输出方式。
36