问答题
一个8位微处理器系统具有两个I/O设备。这个系统的I/O控制器使用分立的控制寄存器和状态寄存器。两个设备都是一次一个字节地处理数据。第一个设备有2条状态线和3条控制线,第二个设备有3条状态线和4条控制线。请问:(1)为实现每个设备的状态读取和控制,I/O模块需要有多少个8位寄存器?(2)假定第一个设备是个只输出设备,寄存器数目又是多少?(3)为控制两个设备需要多少不同的地址?
【正确答案】正确答案:(1)两个I/O设备既能输入又能输出,第一个设备需要1个2位状态寄存器,1个3位控制寄存器,2个8位数据寄存器。第二个设备需要1个3位状态寄存器,1个4位控制寄存器,2个8位数据寄存器。共需4个8位数据寄存器,1个8位状态寄存器(可合并)1个8位控制寄存器(可合并)。若不合并,各增加1个状态寄存器和1个控制寄存器(不需要8位)。 (2)若第一个设备只实现输出,只需1个8位数据寄存器。在此情况下,两个I/O设备共需3个8位数据寄存器,1个8位状态寄存器(可合并),1个8位控制寄存器(可合并)。 (3)为控制两个设备(每个既能输入又能输出),需要4个不同的地址码(设备号)。
【答案解析】