汇编小册(五) 电与物理世界

本文最后更新于10 个月前,文中所描述的信息可能已发生改变。

通过第四章,我们知道了 CPU 如何理解机器代码,也就是如何把数字作为指令。这些指令只能用 1 和 0 表示,称为二进制。

在物理世界中,这些二进制数映射到电路。简单来说,如果电路中有电流,则可以将其视为 “on” 或 1。如果没有电流,则可以将其视为 “off” 或 0。利用这一原理,可以将多个电路排列成一组来表示二进制数。

让我们继续仓库的例子,仓库是我们的 CPU ,一个箱子是一组电路。箱子将通过传送带穿过仓库,以便从一个工作站运送到另一个工作站。在 CPU 世界中,传送带被称为总线。总线实际上只是一组电线,允许电力(0 和 1 表示的信息)从一个地方传输到另一个地方,并且我们要发送的数据类型,有不同类型的总线。

当一个箱子在传送带上向周围的仓库周围移动时,它将在不同的仓库停止。一些仓库可能会对盒子进行内检,并根据发现的内容将其发送到其他地方。其他仓库还可能会在盒子中添加或删除东西。这就像在 CPU 中一样:我们的数据或电信号在总线上围绕 CPU 传播,当它到达 CPU 的不同部分时,它的值可能会被检查或修改。

处理器时钟

在我们的仓库中,我们希望一切都以有组织的进行,例如传送带有稳定的速度。并且传送带没有任何中断。达到这个目的,一种方法是将所有内容设置为计时器。假设我们的箱子以每秒经过 1 个仓库的速度向前移动,每个仓库都需要 1 秒来执行其任务。回到 CPU ,这被称为处理器时钟。

它被称为时钟,但它实际上更像是一个节拍器。它由振荡的材料制成,以一定的频率来回移动,每秒给你一堆振动。我们称这些振动中的每一个为“时钟滴答声”。这些振动有助于保持 CPU 同步,因为每个“时钟滴答声”信号 CPU 通过从内存中获取指令数据来启动新指令。

这对我们来说很重要,因为对于每个时钟滴答,CPU 都会读取一条指令。这个时钟非常快,今天的 CPU 以千兆赫 (GHz) 为单位,大约是每秒十亿个周期

汇编小册(六) 常见的汇编语言种类
汇编小册(四) 指令映射到机器代码