试述CPU与外设交换数据的方式及其特点
分为三种方式:
(1)程序传送方式:包括无条件传送和程序查询传送。无条件传送不查询外设状态,认为外设已经准备就绪,直接与外设传送数据。程序查询传送在执行输入输出前,要先查询接口中状态寄存器的状态。
(2)中断传送方式:当外设作好传送准备后,主动向CPU请求中断,CPU响应中断后在中断处理程序中与外设交换数据。若外设未准备好,CPU可以执行其他程序,从而提高了CPU的利用率。
(3)DMA传送方式:DMA方式是一种由专门的硬件电路执行I/O的数据传送方式,它可以让外设接口直接与内存进行高速的数据传送,而不必经过CPU。这种专门的硬件电路称为DMA控制器,简称DMAC。
2.设8253三个计数器的CR/OL端口地址为70H、71H、72H,控制寄存器端口地址73H。编写程序片段,使:
计数器0,工作模式1,使用16位,初值为1234,BCD计数计数器1,工作模式4,使用低8位,初值为100,二进制计数计数器2,工作模式2,使用16位,初值为65536,二进制计数
(1) MOV AL,33H
OUT 73H,ALH
MOV AX,1234H
OUT 70H,AL
MOV AL,AH
OUT 70H,AL
(2) MOV AL,58H
OUT 73H,AL
MOV AL,100H
OUT 71H,AL
(3) MOV AL,B4H
OUT 73H,AL
MOV AX,0
OUT 72H,AL
OUT 72H,AL
3.设8253的端口地址同2,编写程序片段,读出计数器2的内容,并把读出的数据装入寄存器AX.
MOV AL,80H
OUT 73H,AL
IN AL,72H
MOV BL,AL
IN AL,72H
MOV BH,AL
MOV AX,BX
4.设计数器的时钟输入频率为1.91MHz,为产生25KHZ的 方波输出信号,应向计数器装入的计数初值为多少?
1.91MHZ/25KHZ=76.4
计数器初值为76
5.程序略