学习参考:汇编语言(第2版)王爽
- 存储器
- 指令和数据
- 存储单元
- CPU 对存储器的读写
- 地址总线
- 数据总线
- 控制总线
- 小结
- 内存地址空间
- 主板
- 接口卡
- 各类存储器芯片
- 内存地址空间
存储器
CPU 是计算机的核心部件,控制整个计算机的运行并进行计算。
要让一个 CPU 工作,就必须向它提供指令和数据。指令和数据在存储器中存放,即平常所说的内存。
磁盘上的数据或程序要读到内存中才可以被 CPU 使用。
指令和数据
在内存或磁盘上,指令和数据没有任何区别,都是二进制信息。CPU 在工作时为同样的信息赋予了不同的意义。
存储单元
存储器被划分成若干个存储单元,每个存储器单元从 0 开始顺序编号,如一个存储器有 128 个存储单元,编号从 0 到 127
微型机存储器的存储单元可以存储一个 Byte(1 字节 8 bit,即 8 个二进制位)。含有 128 个存储单元的存储器可以存储 128 个 Byte。
CPU 对存储器的读写
CPU 要从内存中读取数据,首先要指定存储单元的地址(即存储单元的编号)。
在一台微机中,不只有存储器一中起见。CPU 在读写数据时还要指明,它对哪一个器件进行操作,进行哪种操作,是从中读出数据,还是向里面写入数据
CPU 要想进行数据的读写,必须和外部起见(标准说法是芯片)进行下面 3 类信息的交互
- 存储单元的地址(地址信息);
- 起见的选择,读或写的命令(控制信息);
- 读或写的数据(数据信息)
在 CPU 中通过 总线 将地址、数据和控制信息传到存储器芯片中。
根据传送信息的不同,总线从逻辑上分为 3 类
- 地址总线
- 控制总线
- 数据总线
CPU 从 3 号单元中读取数据的过程
- CPU 通过地址线将地址信息 3 发出
- CPU 通过控制线发出内存读命令,选中存储器芯片,并通知它,将要从中读取数据
- 存储器将 3 号单元中的数据 8 通过数据线送入 CPU
写操作与读操作的步骤类似。如向 3 号单元写入数据 26
- CPU 通过地址线将地址信息 3 发出
- CPU 通过控制线发出内存命令,选中存储器芯片,并通知它,要想其中写入数据
- CPU 通过数据线将数据 26 送入内存的 3 号单元中
地址总线
CPU 通过地址总线来指定存储器单元。地址总线上能传送多少个不同的信息,CPU 就可以对多少个存储单元进行寻址。
一个 CPU 有 N 根地址线,则可以说这个 CPU 的地址总线的宽度为 N。这样的 CPU 最多可以寻找 2 的 N 次方个内存单元
数据总线
CPU 与内存或其他器件之间的数据传送是通过数据总线来进行的。数据总线的宽度决定了 CPU 和外界的数据传送速度。8 根数据总线一次可传送一个 8 位二进制数据(即一个字节)。16 根数据总线一次可以传送两个字节。
控制总线
CPU 对外部器件的控制是通过控制总线来进行的。在这里控制总线是一个总称,控制总线是一些不同控制线的集合。有多少个控制总线,就意味着 CPU 提供了对外部器件的多少种控制。所以,控制总线的宽度决定了 CPU 对外部器件的控制能力。
小结
- 汇编指令是机器指令的助记符,同机器指令一一对应
- 每一种 CPU 都有自己的汇编指令集
- CPU 可以直接使用的信息在存储器中存放
- 在存储器中指令和数据没有任何区别,都是二进制信息
- 存储单元从零开始顺序编号
- 一个存储单元可以存储 8 个 bit,即 8 位二进制数,一个存储单元是一个字节
- 1Byte = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB(1GB = 2^30Byte, 1MB = 2^20Byte, 1KB = 2^10Byte)
- 每一个 CPU 芯片都有许多管脚,这些管脚和总线相连。也可以说,这些管脚引出总线。一个 CPU 可以引出 3 种总线的宽度标志了这个 CPU 的不同方面的性能:
- 地址总线的宽度决定了 CPU 的寻址能力
- 数据总线的宽度决定了 CPU 与其他器件进行数据传送时的一次数据传送量
- 控制总线的宽度决定了 CPU 对系统中其他器件的控制能力
- 总线宽度 N 与寻址能力的关系: 寻址能力=2^N
- 8 根数据总线一次可传送一个 8 位二进制数据(即一个字节),即宽度为 8 的数据总线读取 1024 字节的内容需要读 1024 次
Q:一个 CPU 的寻址能力为 8 KB,那么它的地址总线的宽度为?
A:
8 KB = 1024 * 8 Byte = 8192 Byte
设地址总线宽度为 N,则内存单元个数为 2 的 N 次方个,即 N = log(2)(8192) = 13
所以宽度为 13
内存地址空间
举例来说,一个 CPU 的地址总线宽度为 10,那么可以寻址 1024 个内存单元,这 1024 个可寻到的内存单元就构成这个 CPU 的内存地址空间
主板
每一台 PC 机中,都有一个主板,主板上有核心器件和一些主要器件,这些器件通过总线(地址总线、数据总线、控制总线)相连。这些器件有 CPU、存储器、外围芯片组、扩展插槽等。扩展插槽上一般插有 RAM 内存条和各类接口卡
接口卡
接口卡直接控制外部设备,CPU 通过总线向接口卡发送命令,接口卡根据 CPU 的命令控制外设进行工作,从而实现 CPU 对外设的间接控制
各类存储器芯片
从读写属性上看分为两类:
- 随机存储器(RAM):可读可写,但必须带电存储,关机后存储的内容丢失
- 只读存储器(ROM):只能读不能写入,关机后其中的内容buu’i不会丢失
从功能和连接上可分为一下几类:
- 随机存储器
- 存放供 CPU 使用的绝大部分程序和数据
- 主随机存储器由装在主板上 RAM 和插在扩展插槽上的 RAM 组成
- 装有 BIOS 的 ROM
- 接口卡上的 RAM
内存地址空间
上述的那些存储器,在物理上是独立的器件,但是在以下两点两点上相同:
- 都和 CPU 的总线相连
- CPU 对它们进行读或写的时候都通过控制线发出内存读写命令
对 CPU 来讲,系统中的所有存储器中的存储单元都处于一个统一的逻辑存储器中,它的容量受 CPU 寻址能力的限制。这个逻辑存储器即是我们所说的内存地址空间