计算机与外设之间数据传送方式有几种?各有什么特点?

如题所述

有四种。

1、无条件传送方式,最简单的传送方式,所配置的硬件和软件最少。

2、查询传送方式,CPU的利用受到影响,陷于等待和反复查询、不能再作他用;而且,这种方法不能处理掉电、设备故障等突发事件。

3、中断传送方式,是计算机最常用的数据传送方式,可随时向CPU发中断请求信号,以便及时响应,及时处理,实现实时控制。

4、直接数据通道传送方式,不经过CPU中转,也不通过中断服务程序,既不需要保存、恢复断点和现场,所以传送数据的速度比中断方式更快。

扩展资料

无条件传送方式

无条件传送方式是在假定外设已经准备好的情况下,直接利用输入指令(IN指令)或输出指令(OUT指令)与外设传送数据,而不去检查(查询)外设的工作状态。这种传送方式的优点是控制程序简单。但它必须是在外设已经准备好的情况下才能使用,否则传送就会出错。

所以在实际应用中无条件传送方式使用较少,只用于一些较简单外设的操作,如对开关信号的输入,对LED显示器的输出等。

在此情况下,外设总是准备好的,它可以无条件地随时接收CPU发来的输出数据,也能够无条件地随时向CPU提供需要输入的数据。

程序查询传送方式

程序查询传送方式也称为条件传送方式。在这种方式下,利用查询方式进行输入输出,就是CPU通过执行程序查询外设的状态,判断外设是否准备好接收数据或准备好了向CPU输入的数据。根据这种状态,CPU有针对性地为外设的输入输出服务。

一个用户程序的执行自始至终是在操作系统控制下进行的。一个用户将他要解决的问题用某一种程序设计语言编写了一个程序后就将该程序连同对它执行的要求输入到计算机内,操作系统就根据要求控制这个用户程序的执行直到结束。

操作系统控制用户的执行主要有以下一些内容:调入相应的编译程序,将用某种程序设计语言编写的源程序编译成计算机可执行的目标程序,分配内存储等资源将程序调入内存并启动,按用户指定的要求处理执行中出现的各种事件以及与操作员联系请示有关意外事件的处理等。

中断传送方式是指当外设需要与CPU进行信息交换时,由外设向CPU发出请求信号,使CPU暂停正在执行的程序,转去执行数据的输入/输出操作,数据传送结束后,CPU再继续执行被暂停的程序。

目前的微处理器都具有中断功能,而且已经不仅仅局限于数据的输入/输出,而是在更多的方面有重要的应用。例如实时控制、故障处理以及BIOS和DOS功能调用等。

中断传送方式的优点是:CPU不必查询等待,工作效率高,CPU与外设可以并行工作;由于外设具有申请中断的主动权,故系统实时性比查询方式要好得多。但采用中断传送方式的接口电路相对复杂,而且,每进行一次数据传送就要中断一次CPU。

CPU每次响应中断后,都要转去执行中断处理程序,都要进行断点和现场的保护和恢复,浪费了很多CPU的时间。故这种传送方式一般适合于少量的数据传送。对于大批量数据的输入/输出,可采用高速的直接存储器存取方式,即DMA方式。 

DMA传送方式是在存储器和外设之间、存储器和存储器之间直接进行数据传送(如磁盘与内存间交换数据、高速数据采集、内存和内存间的高速数据块传送等),传送过程无需CPU介入,这样,在传送时就不必进行保护现场等一系列额外操作,传输速度基本取决于存储器和外设的速度。

DMA传送方式需要一个专用接口芯片DMA控制器(DMAC)对传送过程加以控制和管理。

进行DMA传送期间,CPU放弃总线控制权,将系统总线交由DMAC控制,由DMAC发出地址及读/写信号来实现高速数据传输。传送结束后DMAC再将总线控制权交还给CPU。一般微处理器都设有用于DMA传送的联络线。 

DMAC中主要包括一个控制状态寄存器、一个地址寄存器和一个字节计数器,在传送开始前先要对这些寄存器进行初始化,一旦传送开始,整个过程便全部由硬件实现,所以数据传送速率非常高。

参考资料:百度百科-微机原理与接口技术

温馨提示:答案为网友推荐,仅供参考
相似回答