8086微处理器和外部设备之间的信息传送是通过I/O接口电路来联系的。由于外部设备的复杂性和多样性,特别是其存取速度比CPU慢得多,因此I/O设备不能直接和总线相连接,而需通过I/O接口连接。每个I/O接口都有一个端口或几个端口,所谓端口是指I/O接口电路中供CPU直接存取访问的那些寄存器或某些特定电路。微机系统要为每个端口分配一个地址号,称为端口地址。每个端口地址不能重复,不同的端口号应具有唯一性。
8086微处理器用地址总线的低16位作为对8位I/O端口的寻址线,可访问的8位I/O端口有65536个。一般微处理器的I/O端口有以下两种编址方式:
1.统一编址
统一编址也称为“存储器映射方式”。这种编址方式的端口和存储单元统一编址,是在1MB的存储空间中划分一部分空间给I/O。此时,CPU访问存储器的各种寻址方式都可用于寻址端口,访问端口和访问存储器的指令在形式上完全一样。主要优点是无需专门的I/O指令,对端口操作的指令类型多,简化了指令系统的设计;缺点是端口占用存储器的地址空间,使存储器容量更加紧张,同时端口指令的长度增加,执行时间较长,端口地址译码电路复杂。(https://www.xing528.com)
2.独立编址
独立编址也称为“I/O映射方式”。这种编址方式是存储器地址空间和I/O地址空间为两个不同的独立的地址空间,端口I/O空间不占用存储器地址,故称“独立编址”方式。CPU设置专门的输入IN和输出OUT指令来访问I/O端口,指令执行时间短。 独立编址时,CPU通过
引脚信号来区别寻址的是内存还是I/O端口。若
信号为高电平,访问存储器;若
为低电平,访问I/O端口。独立编址时,使用A15~A0这16条地址线作为I/O端口地址线,可访问的I/O端口最多可达64KB个8位I/O端口,端口取值范围:0000H~FFFFH。8086指令既有访问8位端口的I/O指令,也有访问16位端口的指令。独立编址的优点是端口所需地址线少,地址译码器简单,专用的I/O端口指令执行时间少;缺点是输入/输出指令类别少,一般只能进行传送操作。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
