1、我们前面讲过,各种存储器都和CPU的地址线、数据线、控制线相连,CPU在操控他们的时候,把他们都当作内存来看待,把他们总的看作一个由若干尊处单元组成的逻辑存储器,这个逻辑存储器我们称之为内存地址空间
在PC机系统中,和CPU通过总线相连的芯片除各种存储器之外,还有以下三种芯片
(1)各种接口卡(比如网卡,显卡)上的接口芯片,他们控制接口卡进行工作;
(2)主板上的接口芯片,CPU通过他们对部分外设进行访问;
(3)其他芯片,用来存储相关的系统信息,或进行相关的输入输出处理。
在这些芯片中,都有一组可以由CPU读写的寄存器。这些寄存器,他们在物理上可能处于不同的芯片中,但是他们在以下两点上相同。
(1)都和CPU的总线相连,当然这种连接是通过他们所在的芯片进行的;
(2)CPU对他们进行读或写的时候都通过控制线向他们所在的芯片发出端口读写命令
可见,从CPU的角度,将这些寄存器都当作端口,对他们进行统一编址,从而建立了一个统一的端口地址空间。美哟个端口在地址空间中都有一个地址。
CPU可以直接读写以下3个地方的数据。
(1)CPU内部的寄存器;
(2)内存单元;
(3)端口。
2、端口的读写
在访问端口的时候,CPU通过端口地址来定位端口。因为端口所在的芯片和CPU通过总线相连,所以端口地址和内存地址