有时系统中同时有几个设备要求输入输出数据,那么对每个设备都编写一段执行输入输出数据的程序,然后轮流查询这些设备的准备位,当某一设备准备好允许输入或输出数据时,就调用这个设备的I/O程序完成数据传输,否则依次查询下一个设备是否准备好。
下面再看一个程序例子,CPU要从3个设备轮流输入数据,PROC1、PROC2、PROC3分别是设备1、设备2和设备3的数据输入程序,它们的状态寄存器的端口地址分别用STAT1、STAT2、STAT3表示,这三个状态寄存器的5位是输入准备位。