CPU与外设之间传输数据的控制方式通常有三种:程序方式,中断方式和DMA方式。
程序方式:指用输入/输出指令,来控制信息传输的方式,是一种软件控制方式,根据程序控制的方法不同,又可以分为无条件传送和条件传送方式。
- 无条件传送方式
条件:利用程序来控制与外设交换信息时,如果可以确信外设总是处于“准备好”的状态,不需用任何状态查询,就可以直接利用输入/输出指令进行信息的输入 - 条件传送方式(亦称查询方式)
即通过程序查询相应设备的状态,若状态不符合,则CPU不能进行输入/输出操作。需要等待;只有当状态信号符合要求时,CPU才能进行相应的输入/输出操作。
中断传送方式就是外设中断CPU的工作,使CPU停止执行当前程序,而去执行一个为外设的数据输入/输出服务的程序,即中断服务子程序,中断服务子程序执行完以后,CPU又转回到原来的程序去继续执行,因而在这种方式下,CPU不需要花大量的时间去查询外设的工作状态,因为当外设准备好时,它会主动向CPU发请求,CPU只需具有检测中断请求,进行中断响应,并能正确中断返回的功能就行了。
DMA(Direct Memory Access)意为直接数据传送,它是在内存的不同区域之间,或者内存与外设端口之间直接进行数据传送,而不经过CPU中转的一种数据传送方式,可以大大提高信息的传送速度。