前言
参考书籍:
王爽。汇编语言。北京:清华大学出版社, 2013:1-1
本人菜狗一枚,不敢咬文嚼字,只能站在巨人的肩膀上窥探一下未曾了解的世界。
各种存储器都和 CPU 的地址线、数据线、控制线相连。
CPU 在操控它们的时候,把它们都当做内存来对待,把它们总地看做一个由若干存储单元组成的逻辑存储器,这个逻辑存储器我们称其为内存地址空间。
在 PC 机系统中,和 CPU 通过总线相连的芯片除各种存储器外,还有以下 3 中芯片
- 各种接口卡(网卡、显卡等)上的接口芯片,它们控制接口卡进行工作
- 主板上的接口芯片,CPU 通过它们对部分外设进行访问
- 其他芯片,用来存储相关的系统信息,或进行相关的输入输出处理
在这些芯片中,都有一组可以由 CPU 读写的寄存器。
这些寄存器,它们在物理上可能处于不同的芯片中,但是它们在以下两点上相同:
- 都和 CPU 的总线相连,当然这种连接是通过它们所在的芯片进行的
- CPU 对它们进行读和写的时候都通过控制线向它们所在的芯片发出端口读写命令
从CPU 的角度,将这些寄存器都当做端口,对它们进行统一编址,从而建立了一个统一的端口地址空间。每一个端口在地址空间都有一个地址。
CPU 可以直接读写以下 3 个地方的数据
- CPU 内部的寄存器
- 内存单元
- 端