打出节拍的时钟
CPU、内存,还有其他零件, 它们怎么能步调一致地一起动呢? 秘密就在电脑里那个一刻不停、 滴答作响的「时钟」上。
滴答,一拍
这不是有指针的那种钟。
时钟只是一个信号,在 0 和 1 之间飞快地来回。
0、1、0、1……这一上一下就是「一拍」,
每当拍子升起,电脑就走一步。
0 和 1 一上一下就是一拍。每滴答一次,步数加一。
在我们眼里像是闪烁,
但真正的电脑一秒能滴答上亿次。
所以看起来一切都是「一瞬间」发生的。
大家一起走一步
为什么非要有节拍呢?
零件那么多,要是各动各的,
就会错开、把事情搅乱。
所以大家跟着同一个节拍,
在「就现在!」时一起迈出一步。
关掉节拍,零件就乱成一团。打开,它们就跟着「就现在!」整齐地动。
在一拍之内,每个零件
都做完自己的事,再等下一拍。
节拍就像一声「一起出发!」的哨子。
一秒几次?赫兹
节拍一秒滴答多少次,
这叫赫兹(Hz)。
1Hz 是一秒一次,1GHz 竟是一秒十亿次!
滴答得越多,走的步就越多,
所以电脑就越快。
从慢推到快试试。一秒走的步数会爆炸式增长。
所以像「3.2GHz」这样的数字,
就是那台电脑的节拍快慢:
一秒滴答 32 亿次。
一切都跑在一个快得无法想象的节拍上。
不是越快越好
那把节拍一直往上加不就行了?
不行。有两堵墙挡着。
第一,要是一步还没走完,
下一拍就来了,就会绊倒。
第二,越快越发烫,
电也吃得越多。
一直往上加节拍试试。热量和耗电飙升,过了极限,步子就崩了。
所以现在的电脑,
不再一味提高节拍,
而是多放几个工人(核心)。
因为速度有现实的天花板。
(这个我们在后面的领域还会再见。)
现在,一颗跳动的心
我们造的 CPU(第12课)
跟着这个节拍,一条条取来命令。
从缓存(第13课)里飞快地取出,
沿着通路(第14课)在零件间传递。
时钟,就是让这一切跳动的心脏。
每一拍,CPU 取来一条命令并执行。电脑的身体,终于开始跳动了。
我们从 0 和 1 出发,经过门与加法器、CPU 与记忆与通路,来到了让这一切跳动的节拍。在这个节拍上,「如果」和「重复」开始运转。下一课,我们把走过的一切,一次收拢起来。