- 作者/ 布莱恩‧柯尼罕( Brian W. Kernighan)
- 译者/ 李芳龄
电脑的大脑—处理器 (CPU)
若我们可以说电脑有大脑的话,那麽,处理器就是电脑的大脑。处理器执行算术,移动资料,控制其他元件的运作,处理器能够执行的基本运算项目有限,但它执行得飞快,每秒数十亿笔。它能够根据前面的运算结果来决定接下来执行什麽运算,因此,它相当程度地不依赖其人类使用者。第三章将对这元件有更多的讨论,因为它太重要了。
若你去一实体店或在线上购买一台电脑,你将会看到产品介绍中提及绝大多数的这些元件,且通常伴随着神秘的首字母缩略字和同样神秘的数字,例如一个处理器被描述为「2.2 GHz dual-core Intel Core i7」,我的一台电脑的处理器就是被如此描述的,但这究竟是什麽?这台处理器是英特尔制造的,「Core i7」是英特尔的一个处理器系列产品的名称,这台处理器是双核心(dual-core)处理器――把两个处理器(两个核心)封装在一个积体电路上,在此例中,小写的「core(核心)」变成「processor(处理器)」的同义词。
一个核心就是一个处理器,但中央处理器可能有几个核心,能够一起运作或独立运作,使运算执行得更快,就多数用途而言,不论有多少核心,只需把这种组合想成是「处理器」就够了。
至於「2.2 GHz」,那就是更有趣的部分了。处理器的速度是以它每秒能执行的运算或指令或指令集来衡量的(至少是大致以此来衡量),处理器使用一个内部时钟――就像心跳或时钟的滴答声――来计步其基本运算。衡量处理器速度的一个指标是每秒的滴答次数,每秒的跳动或滴答次数被称为一赫兹(hetz,简写 Hz),以德国工程师海因里奇.赫兹(Heinrich Hertz)为命名,他在 1888 年发现如何产生电磁波,这直接引领出无线电及其他无线系统的诞生。
电台以百万赫(megahertz,简写为 MHz,译注:从以前到现在,台湾的电台都使用「兆赫」一词,这是肇因於中文辞海中写「百万为兆」而衍生出来的误译词,实际上,兆赫是 THz)来称呼它们的广播频率,例如 102.3 MHz。现在的电脑通常以吉赫(gigahertz,十亿赫兹,简写为 GHz)的速度运转,我的电脑的处理器速度是相当普通的水准――2.2GHz 意指它每秒滴答 2,200,000,000 次。人的心跳大约是 1Hz,或是每天约 100,000 次,每年约 3,000 万次,所以,我的电脑处理器的每个核心每秒跳动的次数是我的心脏在 70 年间跳动的次数。
这是我们首次遇上字首为 mega、giga 之类的数值,这在电脑运算领域是非常普遍的用字,「mega」是一百万,或 106;「giga」是十亿,或 109,发音为重音的「g」,如同「gig」中的发音。我们很快就会遇上更多的数值单位,本书最後附上的词汇表中有完整的单位表。
电脑跑得快的秘密— 随机存取记忆体 (RAM)
主记忆体储存那些被处理器及电脑的其他部件活跃使用的资讯,它的内容可以被处理器更改。主记忆体不仅储存处理器目前正在处理的资料,也储存告诉处理器对那些资料做什麽处理的指令,以下这点很重要:藉由的记忆体中载入不同的指令,我们可以让处理器执行不同的运算。这使得内储程式电脑(stored-program computer)变成一种通用器材,同一台电脑可以跑文书处理 、 试算表 、 上网 、 收发电子邮件 、 在脸书上和朋友联系 、 执行我的税务 、 播放音乐,全都只需在记忆体中置入适当的指令就行了。内储程式的概念的重要性,再怎麽强调都不为过。
电脑正在执行工作时,主记忆体提供一个储存资讯的地方,它储存目前正在活动中的程式指令,例如 Word、Photoshop 或浏览器,它储存它们的资料――被编辑的文件 、 萤幕上的相片 、 正在播放的音乐,也储存在幕後运作而让你同时跑多个应用程式的作业系统视窗,macOS、或其他作业系统的指令。第六章将探讨应用程式及作业系统。
主记忆体被称为随机存取记忆体或 RAM,因为处理器可以快速存取储存在它里头任何地方的资讯,而且,不论储存於它里头的任何地方,存取的速度都一样快;稍微过於简化地说,以随机顺序进入记忆体的任何位址存取资讯,都不会有超速罚款。虽然,VCR 录影带早就成为老古董了,你可能还记得它们,当你想看一部电影的结尾时,你必须从最开头的地方快速进带(其实应该说是慢慢地进带!),这称为循序存取(sequential access)。
大多数的 RAM 是依电性记忆体(volatile memory,或译「易失性记忆体」),亦即若关闭电源,它的内容就消失了,你将突然间失去当下执行中的所有资讯,所以,你应该经常储存你正在执行中的工作,尤其是在使用桌上型电脑时,绊到电源线而导致关闭电源,可能发生惨剧。
你的电脑有固定量的主记忆体,其容量的衡量单位是位元组,一个位元组的记忆体量大到足以容纳一个字符如 W 或 @,或是一个小数字如 42,或一个较大数值的一部分。第二章将说明在记忆体及电脑的其他部件中如何表述资讯,因为这是电脑运算的基本课题之一。现下,你可以把记忆体想成一个由许多相同的小盒子组成的一个大集成体,小盒子的数量上达几十亿个,每个小盒子能容纳一小量的资讯。
什麽是容量?我现在使用的笔记型电脑有 80 亿个位元组,或 8 个吉位元组(gigabyte,简写为 GB)的主记忆体,这容量可能太小了,因为愈多的记忆体通常能转化为更快的电脑运算,对於所有想同时使用主记忆体的程式来说,容量永远嫌不足,而且,把一个不活动的程式的某些部分移出,腾出空间给别的程式,这需要花些时间。若你想要让你的电脑运转得更快,最佳策略可能是购买更多的 RAM――前提是,你的电脑的记忆体可以升级的话,有些电脑的记忆体是不能升级的。
——本文摘自《普林斯顿最热门的电脑通识课》,2022 年 2 月,商业周刊。