Chinapub.com 下载 第18章从算盘到芯片 纵观历史,人类发明了很多灵巧的工具和机器以满足广泛的需求,从而使数学运算变得 更容易了些。虽然人类天生就有使用数字的能力,但仍能经常需要帮助。人们常遇到一些自 己不能轻易解决的问题 数字可看成是早期帮助人类记录商品和财富的工具。许多文明,包括古希腊和美洲土著, 都借用石子或谷物来计数。在欧洲使用计数板,而在中国则对由框和珠子组成的算盘较为熟 88888 没有人真的喜欢乘法和除法,但却有人为它做过什么,苏格兰数学家 Join Napier(1550 1617)就是这少数人中的一个。他发明了对数来简化这些操作,两数之积简化为它们对数的和。 因此,如果你想使两数相乘,先在对数表中分别查出它们的值,然后相加,再用相反的方法查 对数表就可得到它们的积 对数表的建立,使得随后400年里一些最伟大的思想家一直为此忙碌,而另一些人却在设 计使用小装置来代替对数表。一种有对数标尺的滑尺已有很长的历史了,它由 Edmund gunter (1581-1626)发明并由 William Oughtred(1574-1660)修正。1976年,当 Keuffel& Esser公司 将其公司最后制造的滑尺捐赠给华盛顿特区的 Smithsonian学院时,滑尺的历史也就宣告结束 了,其中的原因是手持计算器的出现 多 Napier也发明了一种乘法辅助器,它由刻在骨头、号角、像牙上的数字条组成,因而这样 的辅助器称为 Napier骨架。1620年左右, Wilhelm schickard(1592-1635)制造出了最早的有 点儿自动功能的由 Napier骨架组成的机械计算器。几乎在同时出现了由互相连结的轮子、齿 轮和水平仪组成的另外一种计算器,这种机械计算器的两个最主要的制造者是数学家和哲学 家布莱兹·帕斯卡(1623-1662)和莱布尼兹(1646-1716) 你一定能记得最初的8位加法器和能自动进行多于8位数的加法计算的计算机中的进位是 多么令人讨厌。进位原先似乎只是加法运算中的一个小问题,但在加法机中却成了一个中心 问题。即使设计一个能进行除进位外的所有工作的加法机,也不能说工作就算完成了。 进位处理是否成功是评估老式计算机的关键。例如,帕斯卡设计的进位机制禁止减法运 算。为了进行减法,必须加上9的补码,这在第13章中已经讲到。直到19世纪后期,才出现了 真正可以为人们所使用的机械计算器
下载 第18章 从算盘到芯片 纵观历史,人类发明了很多灵巧的工具和机器以满足广泛的需求,从而使数学运算变得 更容易了些。虽然人类天生就有使用数字的能力,但仍能经常需要帮助。人们常遇到一些自 己不能轻易解决的问题。 数字可看成是早期帮助人类记录商品和财富的工具。许多文明,包括古希腊和美洲土著, 都借用石子或谷物来计数。在欧洲使用计数板,而在中国则对由框和珠子组成的算盘较为熟 悉: 没有人真的喜欢乘法和除法,但却有人为它做过什么,苏格兰数学家 Join Napier(1550- 1 6 1 7 )就是这少数人中的一个。他发明了对数来简化这些操作,两数之积简化为它们对数的和。 因此,如果你想使两数相乘,先在对数表中分别查出它们的值,然后相加,再用相反的方法查 对数表就可得到它们的积。 对数表的建立,使得随后 4 0 0年里一些最伟大的思想家一直为此忙碌,而另一些人却在设 计使用小装置来代替对数表。一种有对数标尺的滑尺已有很长的历史了,它由 Edmund Gunter (1 5 8 1-1 6 2 6)发明并由William Oughtred(1 5 7 4-1 6 6 0)修正。1 9 7 6年,当K e u ff e l & E s s e r公司 将其公司最后制造的滑尺捐赠给华盛顿特区的 Smithsonian 学院时,滑尺的历史也就宣告结束 了,其中的原因是手持计算器的出现。 N a p i e r也发明了一种乘法辅助器,它由刻在骨头、号角、像牙上的数字条组成,因而这样 的辅助器称为N a p i e r骨架。1 6 2 0年左右,Wilhelm Schickard(1 5 9 2-1 6 3 5)制造出了最早的有 点儿自动功能的由 N a p i e r骨架组成的机械计算器。几乎在同时出现了由互相连结的轮子、齿 轮和水平仪组成的另外一种计算器,这种机械计算器的两个最主要的制造者是数学家和哲学 家布莱兹·帕斯卡 ( 1 6 2 3-1 6 6 2 )和莱布尼兹( 1 6 4 6-1 7 1 6 )。 你一定能记得最初的 8位加法器和能自动进行多于 8位数的加法计算的计算机中的进位是 多么令人讨厌。进位原先似乎只是加法运算中的一个小问题,但在加法机中却成了一个中心 问题。即使设计一个能进行除进位外的所有工作的加法机,也不能说工作就算完成了。 进位处理是否成功是评估老式计算机的关键。例如,帕斯卡设计的进位机制禁止减法运 算。为了进行减法,必须加上 9的补码,这在第1 3章中已经讲到。直到1 9世纪后期,才出现了 真正可以为人们所使用的机械计算器
174的 Chinapub co M 下载 个奇特的发明对计算的历史产生了深远的影响,就像它对纺织所产生的深远影响一样, 这就是约瑟夫·玛丽·杰奎德(1752-1834)所发明的自动织布机。杰奎德织布机(大约产生于 1801年)使用上面已打孔的金属卡片(就像钢琴上的金属卡片)来控制编织物的图案。杰奎 德的一大杰作就是用黑白丝线织成的自画像,为此使用了大约1万张卡片。 在18世纪(甚至直到20世纪40年代),计算机就像一个以计算数字谋生的人。使用星星进 行航海导航经常需要对数表,并且三角函数表也是必需的。如果需要发布新表,则需要许多 计算机来工作,然后把结果汇总起来。当然,在这一过程的任何阶段,即从初始化计算到设 置类型来打印最后几页都可能会出现错误 从数学表中消除错误的愿望激发了查尔斯·巴贝芝(1791-1871)。巴贝芝是一位英国的 数学家和经济学家,他和摩尔斯差不多是同一时代的人。 在那时,数学表(以对数表为例)并不是通过计算表中每 项确切的对数值而建立的,因为这得花费很多时间。取而代 之的是选择一些数进行对数计算,而介于这些数中间的那些数 则采用插补,即称作差分的方法,通过相对简单的计算来得到 大约在1820年,巴贝芝认为可以设计并制造一台机器来自 动建立表,甚至可以到自动设置打印类型这一步,这样可以消 除错误。他构想了差分机,这是一个很大的机械加法机。通过 切换,可使位于10个不同位置的轮子来表示各位数的十进制数 字,负数用10的补码来计算。尽管一些早期的模型可以证明巴 贝芝的设计是可行的,并且也从英国政府获得了一些支持,但差分机却从未完成过。巴贝芝 于1833年放弃了这一工作 然而,就在那个时候,巴贝芝又有了一个更好的构想,这就是解析机(重复的设计和再设 计不断耗费着巴贝芝的生命,直到他死去),解析机是19世纪最接近计算机的发明。在巴贝芝 的设计中,有一个存储系统(类似于今天存储器的概念)和运算器(算术单元)。乘法由重复 加法来实现,除法由重复减法来实现。 解析机最精华的部分在于它可以用卡片来编程,这些卡片是由杰奎徳的按图案编织的织 布机上的卡片经过改造而制成的。正如艾达·奥古斯塔,即拉弗雷斯女伯爵(1815-1852)在 她翻译的由一个意大利数学家写的,关于巴贝芝解析机的文章的按语里写的:“我们可以说解 析机编织的是代数模型,正如杰奎德织布机编织的是花和叶一样”。 巴贝芝可能是第一个意识到计算机中条件转移的重要性的人。拉弗雷斯女伯爵关于此也 曾写道:“操作循环必须理解成一批操作,这些操作可以重复多次。无论是只重复两次还是无 穷次,都是一个循环,归根到底重复组成了循环的这些操作。许多情况下,还会出现一个或 多个循环的重复,即循环的循环或多个循环的循环”。 尽管差分机最终由 Georg和 Edvard Scheutz父子在1853年制成,但巴贝芝的机器那时己被 遗忘了很久,直到20世纪30年代人们开始追寻20世纪计算机的根源时才再次想起。巴贝芝曾 经做的东西已经被后来的技术所超越,除了他对自动化的超前认识外,他并没有为20世纪的 计算机工程留下什么东西 计算机历史上另一个里程碑来源于美国宪法第二部分的第一篇。这一部分里除其他事情 外还要求每10年进行一次人口普査。1880年人口普查的时候,人口信息按年龄、性别及祖籍
一个奇特的发明对计算的历史产生了深远的影响,就像它对纺织所产生的深远影响一样, 这就是约瑟夫·玛丽·杰奎德 ( 1 7 5 2-1 8 3 4 )所发明的自动织布机。杰奎德织布机(大约产生于 1 8 0 1年)使用上面已打孔的金属卡片(就像钢琴上的金属卡片)来控制编织物的图案。杰奎 德的一大杰作就是用黑白丝线织成的自画像,为此使用了大约 1万张卡片。 在1 8世纪(甚至直到2 0世纪4 0年代),计算机就像一个以计算数字谋生的人。使用星星进 行航海导航经常需要对数表,并且三角函数表也是必需的。如果需要发布新表,则需要许多 计算机来工作,然后把结果汇总起来。当然,在这一过程的任何阶段,即从初始化计算到设 置类型来打印最后几页都可能会出现错误。 从数学表中消除错误的愿望激发了查尔斯·巴贝芝( 1 7 9 1—1 8 7 1)。巴贝芝是一位英国的 数学家和经济学家,他和摩尔斯差不多是同一时代的人。 在那时,数学表(以对数表为例)并不是通过计算表中每 一项确切的对数值而建立的,因为这得花费很多时间。取而代 之的是选择一些数进行对数计算,而介于这些数中间的那些数 则采用插补,即称作差分的方法,通过相对简单的计算来得到。 大约在 1 8 2 0年,巴贝芝认为可以设计并制造一台机器来自 动建立表,甚至可以到自动设置打印类型这一步,这样可以消 除错误。他构想了差分机,这是一个很大的机械加法机。通过 切换,可使位于 1 0个不同位置的轮子来表示各位数的十进制数 字,负数用 1 0的补码来计算。尽管一些早期的模型可以证明巴 贝芝的设计是可行的,并且也从英国政府获得了一些支持,但差分机却从未完成过。巴贝芝 于1 8 3 3年放弃了这一工作。 然而,就在那个时候,巴贝芝又有了一个更好的构想,这就是解析机 (重复的设计和再设 计不断耗费着巴贝芝的生命,直到他死去 ),解析机是1 9世纪最接近计算机的发明。在巴贝芝 的设计中,有一个存储系统(类似于今天存储器的概念)和运算器(算术单元)。乘法由重复 加法来实现,除法由重复减法来实现。 解析机最精华的部分在于它可以用卡片来编程,这些卡片是由杰奎德的按图案编织的织 布机上的卡片经过改造而制成的。正如艾达·奥古斯塔,即拉弗雷斯女伯爵( 1 8 1 5-1 8 5 2)在 她翻译的由一个意大利数学家写的,关于巴贝芝解析机的文章的按语里写的:“我们可以说解 析机编织的是代数模型,正如杰奎德织布机编织的是花和叶一样”。 巴贝芝可能是第一个意识到计算机中条件转移的重要性的人。拉弗雷斯女伯爵关于此也 曾写道:“操作循环必须理解成一批操作,这些操作可以重复多次。无论是只重复两次还是无 穷次,都是一个循环,归根到底重复组成了循环的这些操作。许多情况下,还会出现一个或 多个循环的重复,即循环的循环或多个循环的循环”。 尽管差分机最终由G e o rg和Edvard Scheutz 父子在1 8 5 3年制成,但巴贝芝的机器那时已被 遗忘了很久,直到 2 0世纪3 0年代人们开始追寻 2 0世纪计算机的根源时才再次想起。巴贝芝曾 经做的东西已经被后来的技术所超越,除了他对自动化的超前认识外,他并没有为 2 0世纪的 计算机工程留下什么东西。 计算机历史上另一个里程碑来源于美国宪法第二部分的第一篇。这一部分里除其他事情 外还要求每1 0年进行一次人口普查。 1 8 8 0年人口普查的时候,人口信息按年龄、性别及祖籍 174 编码的奥秘 下载
Chinaopub.coM 第18章从算盘到芯片 175 下载 来收集,数据的收集差不多花了七年的时间来进行 由于担心1890年的人口普查可能需要超过10年的时间,人口普查局寻求使该系统工作自 动化的可能性并选用了赫曼·霍勒瑞斯(1860-1929)开发的机器,此人是1880年人口普查的 统计员 霍勒瑞斯的想法是采用马尼拉穿孔卡片,大小是6×34 虽然霍勒瑞斯不可能知道巴贝芝如何使用卡片在他的解析机上编 程,但他却很熟悉杰奎德织布机上卡片的使用。)卡片上的孔组成 24列,每列12个,这样共有288个位置,这些位置表示某个人在人 口普查记录中的某些特征。普查员通过在卡片的适当位置上打1 英寸的方孔来标识这些特征。 本书可能使得人们习惯于用二进制码的概念来思考问题,因 此,你可能马上会想到卡片上的288个穿孔点可以存储288位信息。 但是,这些卡片并不是这样用的 例如,在纯二进制系统中,人口普查卡片会有一个位置来表示性别,可以用打孔表示 性,未打孔表示女性(或者相反)。但是,霍勒瑞斯的卡片用两个位置表示性别,一个位置打 孔表示男性,另一个位置打孔表示女性。同样,用两个穿孔表示年龄,一个穿孔指明一个5年 的年龄范围:0~4、5~9、10~14等等,另一个孔用5个位置中的一个来表明在该范围内的确 切年龄。年龄编码需要卡片上总共28个位置。而纯二进制系统只需要η个位置就可编码0~127 的任何年龄。 我们应该原谅霍勒瑞斯在记录人口普查信息时没有采用二进制系统,对于1890年的人口 普查员来说,把年龄转换成二进制数要求太高了一些。还有一个实际原因来解释穿孔卡片系 统为什么不能全部是二进制的是因为二进制系统可能出现这样一种情形,即所有的孔都被打 孔,使得卡片很脆弱,结构不牢固。 人口普査的数据收集可进行统计或制成表格。你可能想知道每一个区域内有多少人生活, 当然,你也可能对人口的年龄分布统计信息感兴趣。正因为如此,霍勒瑞斯制造了一个制表 机,它能结合手工操作和自动操作。操作员把一个有288个弹簧针的板子压到每一个卡片上 对应于卡片上每一个穿孔的针接触水银池形成电路,电路触发电磁铁使十进制计数器计数 霍勒瑞斯在分类卡片的机器上也用了电磁铁。例如,如果需要统计所记录的每一个职业 的年龄资料,首先需要按职业对卡片分类,然后对每一个职业统计年龄资料。分类机与制表 机一样用手压,但分类机使用电磁铁打开一个开口,对应于26个分隔区域中的一个,操作员 把卡片放入分隔区域,然后用手工关上开口 这项实验在自动进行1890年的人口普查工作中取得了巨大成功,处理了超过6200万张的 卡片,包含的数据是1880年人口普查的2倍,而数据处理只花了大约1880年人口普查所花时间 的1/3。霍勒瑞斯和他的发明享誉全球。1895年,他甚至到了莫斯科并成功地卖出了他的设备, 该设备在1897年第一次用于俄罗斯的人口普查。 霍勒瑞斯开始进行各种活动。1896年,他创立了制表机公司,出租和出售穿孔卡片设备。 1911年,经过合并,该公司成为计算-制表-记录( computing- Tabulating- Recording)公司,即 C-TR公司。到1915年,C-T-R的主席是 Thomas j Watson(1874-1956),他在1924年把公司的 名字改为国际商用机器公司,即IBM
来收集,数据的收集差不多花了七年的时间来进行。 由于担心1 8 9 0年的人口普查可能需要超过 1 0年的时间,人口普查局寻求使该系统工作自 动化的可能性并选用了赫曼·霍勒瑞斯 ( 1 8 6 0—1 9 2 9 )开发的机器,此人是 1 8 8 0年人口普查的 统计员。 霍勒瑞斯的想法是采用马尼拉穿孔卡片,大小是 。 (虽然霍勒瑞斯不可能知道巴贝芝如何使用卡片在他的解析机上编 程,但他却很熟悉杰奎德织布机上卡片的使用。)卡片上的孔组成 2 4列,每列1 2个,这样共有2 8 8个位置,这些位置表示某个人在人 口普查记录中的某些特征。普查员通过在卡片的适当位置上打 1 / 4 英寸的方孔来标识这些特征。 本书可能使得人们习惯于用二进制码的概念来思考问题,因 此,你可能马上会想到卡片上的 2 8 8个穿孔点可以存储 2 8 8位信息。 但是,这些卡片并不是这样用的。 例如,在纯二进制系统中,人口普查卡片会有一个位置来表示性别,可以用打孔表示男 性,未打孔表示女性(或者相反)。但是,霍勒瑞斯的卡片用两个位置表示性别,一个位置打 孔表示男性,另一个位置打孔表示女性。同样,用两个穿孔表示年龄,一个穿孔指明一个 5年 的年龄范围:0~4、5~9、1 0~1 4等等,另一个孔用5个位置中的一个来表明在该范围内的确 切年龄。年龄编码需要卡片上总共 2 8个位置。而纯二进制系统只需要 7个位置就可编码0~1 2 7 的任何年龄。 我们应该原谅霍勒瑞斯在记录人口普查信息时没有采用二进制系统,对于 1 8 9 0年的人口 普查员来说,把年龄转换成二进制数要求太高了一些。还有一个实际原因来解释穿孔卡片系 统为什么不能全部是二进制的是因为二进制系统可能出现这样一种情形,即所有的孔都被打 孔,使得卡片很脆弱,结构不牢固。 人口普查的数据收集可进行统计或制成表格。你可能想知道每一个区域内有多少人生活, 当然,你也可能对人口的年龄分布统计信息感兴趣。正因为如此,霍勒瑞斯制造了一个制表 机,它能结合手工操作和自动操作。操作员把一个有 2 8 8个弹簧针的板子压到每一个卡片上, 对应于卡片上每一个穿孔的针接触水银池形成电路,电路触发电磁铁使十进制计数器计数。 霍勒瑞斯在分类卡片的机器上也用了电磁铁。例如,如果需要统计所记录的每一个职业 的年龄资料,首先需要按职业对卡片分类,然后对每一个职业统计年龄资料。分类机与制表 机一样用手压,但分类机使用电磁铁打开一个开口,对应于 2 6个分隔区域中的一个,操作员 把卡片放入分隔区域,然后用手工关上开口。 这项实验在自动进行 1 8 9 0年的人口普查工作中取得了巨大成功,处理了超过 6 2 0 0万张的 卡片,包含的数据是 1 8 8 0年人口普查的2倍,而数据处理只花了大约 1 8 8 0年人口普查所花时间 的1 / 3。霍勒瑞斯和他的发明享誉全球。1 8 9 5年,他甚至到了莫斯科并成功地卖出了他的设备, 该设备在1 8 9 7年第一次用于俄罗斯的人口普查。 霍勒瑞斯开始进行各种活动。 1 8 9 6年,他创立了制表机公司,出租和出售穿孔卡片设备。 1 9 11年,经过合并,该公司成为计算-制表-记录 ( c c o m p u t i n g - Ta b u l a t i n g - R e c o r d i n g )公司,即 C - T- R公司。到1 9 1 5年,C - T- R的主席是Thomas J.Wa t s o n ( 1 8 7 4-1 9 5 6 ),他在1 9 2 4年把公司的 名字改为国际商用机器公司,即 I B M。 6 5 8 ´ 3 1 4 第18章 从算盘到芯片 175 下载
176编的奥 Chinapub. coM 下载 1928年,原先的1890年的人口普查卡片已经演化成为著名的“不会卷曲、折叠’、翘页” 的IBM卡片,有80列12行。它们用了50多年,即使在最后几年也被称作霍勒瑞斯卡片。在第 20、21和24章将要讲到这些卡片的影响。 在把目光移到20世纪之前,不要对19世纪那个年代有太多的偏见。显然,本书主要着眼 于数字系统的发明,这些发明包括电报、布莱叶盲文、巴贝芝机器和霍勒瑞斯卡片。当与数 字概念和数字设备一起工作时,很容易会把整个世界都想像成数字世界。但是,19世纪的特 征更多体现在那些不是数字的发明及发现上。的确,我们感受到的自然世界只有很小一部分 是数字的,它更接近于是连续的而不那么容易被量化。 尽管霍勒瑞斯在他的卡片制表机和卡片分类机上用了继电器,但是直到20世纪30年代中 期,人们才真正开始用继电器来制造计算机(后来叫机电式计算机)。这些机器上用的继电器通 常不是电报继电器,而是那些用来在电话系统中控制呼叫路由的继电器。 早期的继电器计算机并不像我们在上一章中制造的继电器计算机(将会看到,后者计算 机的设计基础是基于从20世纪70年代开始的微处理器)。特别地,今天对我们来说计算机内采 用二进制数是显然的,但那时并不是这样 我们所设计的继电器计算机与早期的继电器计算机之间的另一个区别是在20世纪30年代, 没有人会狂热到用继电器构造524288位的存储器!所需的造价、空间及功耗使得这样大的存储 器不可能实现。可用的很小的存储器只是用来存储中间结果,而程序本身存储在像带有穿孔的 纸带这样的物理媒体上。的确,把代码和数据放入存储器的处理方式是一个很现代化的概念。 按年代排列,第一个继电器计算机似乎是由 Conrad zuse(1910-1995)建造的。1935年 当他还是一个工程系的学生的时候,他就开始在他父母位于柏林的住所里制造计算机。他采 用的是二进制数,但却是早期版本,且用的是机械存储器而不是继电器。Zuse在老式的35毫 米的电影胶片上穿孔来进行计算机编程 1937年,贝尔电话实验室的 George Stibitz(1904-1995)把一对电话继电器安装在家里, 并且又连接了一个1位加法器到餐桌上,后来他的夫人称它为“K机器”(K表示 kitchen,厨房) 该实验导致在1939年产生了贝尔实验室的复数计算机。 与此同时,哈佛大学的研究生 Howard aiken(1900-1973)因需要某种方法来做大量重 复计算,从而使得哈佛大学和IBM合作,制造出了最终称为 Harvard Mark I的自动顺序控制 计算机(AScC: automated sequence controlled calculator),此项工作在1943年完成。这是 第一台打制表格的数字计算机,它终于实现了巴贝芝的梦想。 Mark ll是以巨大的继电器为基 础的机器,使用了13000个继电器。由 Aiken领导的哈佛计算实验室讲授了计算机科学的第1 继电器并不是制造计算机的最好器件,因为它是机械的,工作时需弯曲一个金属簧片 如果超负荷工作,簧片就会折断:如果有一小片污垢或纸片粘在触点之间,继电器就会失效。 个著名的事件发生在1947年,从 Harvard mark I计算机的一个继电器中找到一只蛾子 Grace Murry Hopper(1906-1992)1944年加入 Aiken的小组,此人后来在计算机程序设计语 言领域非常有名。他在计算机日志中记录了这只蛾子,写道“第一次发现了真正的bug 继电器的一种可能的替代品是真空管,真空管由 John Ambrose fleming(1849-1945) 和 Lee de forest(1873-1961)发明用来同无线电设备连接。到20世纪40年代,真空管早已 用来放大电话信号。事实上,每一家的落地式收音机都装上了用来放大无线电信号的真空管
1 9 2 8年,原先的1 8 9 0年的人口普查卡片已经演化成为著名的“不会卷曲、折叠’、翘页” 的I B M卡片,有8 0列1 2行。它们用了5 0多年,即使在最后几年也被称作霍勒瑞斯卡片。在第 2 0、2 1和2 4章将要讲到这些卡片的影响。 在把目光移到 2 0世纪之前,不要对 1 9世纪那个年代有太多的偏见。显然,本书主要着眼 于数字系统的发明,这些发明包括电报、布莱叶盲文、巴贝芝机器和霍勒瑞斯卡片。当与数 字概念和数字设备一起工作时,很容易会把整个世界都想像成数字世界。但是, 1 9世纪的特 征更多体现在那些不是数字的发明及发现上。的确,我们感受到的自然世界只有很小一部分 是数字的,它更接近于是连续的而不那么容易被量化。 尽管霍勒瑞斯在他的卡片制表机和卡片分类机上用了继电器,但是直到 2 0世纪3 0年代中 期,人们才真正开始用继电器来制造计算机 (后来叫机电式计算机)。这些机器上用的继电器通 常不是电报继电器,而是那些用来在电话系统中控制呼叫路由的继电器。 早期的继电器计算机并不像我们在上一章中制造的继电器计算机(将会看到,后者计算 机的设计基础是基于从 2 0世纪7 0年代开始的微处理器)。特别地,今天对我们来说计算机内采 用二进制数是显然的,但那时并不是这样。 我们所设计的继电器计算机与早期的继电器计算机之间的另一个区别是在 2 0世纪3 0年代, 没有人会狂热到用继电器构造524 288位的存储器!所需的造价、空间及功耗使得这样大的存储 器不可能实现。可用的很小的存储器只是用来存储中间结果,而程序本身存储在像带有穿孔的 纸带这样的物理媒体上。的确,把代码和数据放入存储器的处理方式是一个很现代化的概念。 按年代排列,第一个继电器计算机似乎是由 Conrad Zuse(1 9 1 0-1 9 9 5)建造的。1 9 3 5年 当他还是一个工程系的学生的时候,他就开始在他父母位于柏林的住所里制造计算机。他采 用的是二进制数,但却是早期版本,且用的是机械存储器而不是继电器。 Z u s e在老式的3 5毫 米的电影胶片上穿孔来进行计算机编程。 1 9 3 7年,贝尔电话实验室的 G e o rge Stibitz(1 9 0 4-1 9 9 5)把一对电话继电器安装在家里, 并且又连接了一个1位加法器到餐桌上,后来他的夫人称它为“K机器”(K表示k i t c h e n,厨房)。 该实验导致在1 9 3 9年产生了贝尔实验室的复数计算机。 与此同时,哈佛大学的研究生 Howard Aiken(1 9 0 0-1 9 7 3)因需要某种方法来做大量重 复计算,从而使得哈佛大学和 I B M合作,制造出了最终称为 Harvard Mark I的自动顺序控制 计算机(A S C C:automated sequence controlled calculator),此项工作在1 9 4 3年完成。这是 第一台打制表格的数字计算机,它终于实现了巴贝芝的梦想。 Mark II是以巨大的继电器为基 础的机器,使用了 13 000个继电器。由 A i k e n领导的哈佛计算实验室讲授了计算机科学的第 1 课。 继电器并不是制造计算机的最好器件,因为它是机械的,工作时需弯曲一个金属簧片, 如果超负荷工作,簧片就会折断;如果有一小片污垢或纸片粘在触点之间,继电器就会失效。 一个著名的事件发生在 1 9 4 7年,从 Harvard Mark II计算机的一个继电器中找到一只蛾子。 Grace Murry Hopper (1 9 0 6—1 9 9 2)1 9 4 4年加入A i k e n的小组,此人后来在计算机程序设计语 言领域非常有名。他在计算机日志中记录了这只蛾子,写道“第一次发现了真正的 b u g”。 继电器的一种可能的替代品是真空管,真空管由 John Ambrose Fleming(1 8 4 9—1 9 4 5) 和Lee de Forest(1 8 7 3—1 9 6 1)发明用来同无线电设备连接。到 2 0世纪4 0年代,真空管早已 用来放大电话信号。事实上,每一家的落地式收音机都装上了用来放大无线电信号的真空管, 176 编码的奥秘 下载
第8章从算盘到片177 下载 以便人们能听见。真空管可以连接成与、或、与非和非门,这一点非常像继电器 逻辑门是由继电器还是由真空管来制造的并不重要。利用逻辑门可集成加法器、选择器 译码器、触发器和计数器。前面几章讲的基于继电器的器件在当继电器被换成真空管时仍然 用。 不过真空管也有问题,它们昂贵、耗电量大、散发的热量多。然而最大的问题在于它们 最终会被烧毁,这也就是它们的寿命问题。有真空管收音机的人就习惯于隔一段时间更换这 些管子。电话系统设计成有许多多余的管子,因此损失点儿管子也不是大的问题。(没有人能 指望电话系统不出一点儿问题。)然而计算机中的一个管子烧毁以后,并不能很快被检测到 而且,计算机中使用了如此多的真空管,可能每几分钟就会烧毁一个 使用真空管相对于继电器的最大好处在于它每百万分之一秒(即1微秒)就可以跳变一次 真空管改变状态(开关闭合或断开)的速度比继电器快1000倍,在最好的情况下,继电器状态 的变化大约需1毫秒,即千分之一秒。有趣的是,在早期计算机的研究中,速度问题并不是最 重要的,这是因为早期计算机总的计算速度与机器从纸带或电影胶片中读取程序的速度密切相 关。正是因为计算机是基于这种方式制造的,真空管比继电器速度快多少也就无关紧要了。 在20世纪40年代初,真空管开始在新的计算机中替换继电器。直到1945年,晶体管制成 正如继电器机器称为机电式计算机,真空管则是第一台电子计算机的基础。 在英国, Colossus计算机(1943年开始使用)用于破译德国的“ Enigma”代码生成器生 成的密码。为这个项目(和英国以后的一些计算机项目)做出贡献的人是艾伦·M·图灵 (1912-1954),他当时由于写了两篇很有影响的论文而闻名于世。第一篇论文发表于1937年 其中首先提出了“计算能力”的概念,用以分析计算机可以做到和不能做到的事。他构思出 了现在称为图灵机的计算机抽象模型。图灵写的第二篇著名论文的主题是人工智能,他介绍 了一个测试机器智能的方法,现在称作图灵测试法。 在摩尔电气工程学校, J Presper Eckert(1919-1995)和 John Mauchly(1907-1980)设计了 ENIAC( electronic numerical integrator and computer,电子数字积分器和计算机)。它采用了 18000个真空管,于1945年末完成。纯粹按吨位(大约30吨)计算, ENIAC是曾经制造出来 的(也许以后也是)最大的计算机。到1977年,你可以在电器行买到更快的计算机。然而 Eckert和 Mauchly的专利却被 John v Atanasoff(1903-1995)给阻挠了。 Atanasoff在早期曾设 计了一个电子计算机,但它从未很好地工作过。 ENIAC引起了数学家约翰·冯·诺依曼(1903-1957)的兴趣。从1930年开始,匈牙利出 生的冯·诺依曼就一直住在美国。他是一个令人瞩目的人物, 因能在脑子里构思复杂的算法而享有很高的声誉,他是普林斯 顿高级研究学院的一名数学教授,研究范围很广,从量子理论 到游戏理论的应用再到经济学。 冯·诺依曼帮助设计了 ENIAC的后继产品 EDVAO ( electronic discrete variable automatic computer)。特别是在 946年与 Arthur v. Burks和 Herman h goldstine合写的论文 <Preliminary Discussion of the logical Design of an Electroni Computing instrumert》中,他描述了有关计算机的几点功能 这些功能使得 EDVAC比 ENIAC更先进。 EDVAC的设计者感觉
以便人们能听见。真空管可以连接成与、或、与非和非门,这一点非常像继电器。 逻辑门是由继电器还是由真空管来制造的并不重要。利用逻辑门可集成加法器、选择器、 译码器、触发器和计数器。前面几章讲的基于继电器的器件在当继电器被换成真空管时仍然 可用。 不过真空管也有问题,它们昂贵、耗电量大、散发的热量多。然而最大的问题在于它们 最终会被烧毁,这也就是它们的寿命问题。有真空管收音机的人就习惯于隔一段时间更换这 些管子。电话系统设计成有许多多余的管子,因此损失点儿管子也不是大的问题。(没有人能 指望电话系统不出一点儿问题。)然而计算机中的一个管子烧毁以后,并不能很快被检测到, 而且,计算机中使用了如此多的真空管,可能每几分钟就会烧毁一个。 使用真空管相对于继电器的最大好处在于它每百万分之一秒(即 1微秒)就可以跳变一次。 真空管改变状态(开关闭合或断开)的速度比继电器快 1 0 0 0倍,在最好的情况下,继电器状态 的变化大约需1毫秒,即千分之一秒。有趣的是,在早期计算机的研究中,速度问题并不是最 重要的,这是因为早期计算机总的计算速度与机器从纸带或电影胶片中读取程序的速度密切相 关。正是因为计算机是基于这种方式制造的,真空管比继电器速度快多少也就无关紧要了。 在2 0世纪4 0年代初,真空管开始在新的计算机中替换继电器。直到 1 9 4 5年,晶体管制成。 正如继电器机器称为机电式计算机,真空管则是第一台电子计算机的基础。 在英国,C o l o s s u s计算机(1 9 4 3年开始使用)用于破译德国的“ E n i g m a”代码生成器生 成的密码。为这个项目(和英国以后的一些计算机项目)做出贡献的人是艾伦· M·图灵 ( 1 9 1 2—1 9 5 4 ),他当时由于写了两篇很有影响的论文而闻名于世。第一篇论文发表于 1 9 3 7年, 其中首先提出了“计算能力”的概念,用以分析计算机可以做到和不能做到的事。他构思出 了现在称为图灵机的计算机抽象模型。图灵写的第二篇著名论文的主题是人工智能,他介绍 了一个测试机器智能的方法,现在称作图灵测试法。 在摩尔电气工程学校, J.Presper Eckert(1919-1 9 9 5 )和John Mauchly(1907—1 9 8 0 )设计了 E N I A C(electronic numerical integrator and computer,电子数字积分器和计算机)。它采用了 18 000个真空管,于1 9 4 5年末完成。纯粹按吨位(大约 3 0吨)计算,E N I A C是曾经制造出来 的(也许以后也是)最大的计算机。到 1 9 7 7年,你可以在电器行买到更快的计算机。然而, E c k e r t和M a u c h l y的专利却被John V. A t a n a s o ff ( 1 9 0 3—1 9 9 5 )给阻挠了。A t a n a n s o ff在早期曾设 计了一个电子计算机,但它从未很好地工作过。 E N I A C引起了数学家约翰·冯·诺依曼 ( 1 9 0 3—1 9 5 7 )的兴趣。从1 9 3 0年开始,匈牙利出 生的冯·诺依曼就一直住在美国。他是一个令人瞩目的人物, 因能在脑子里构思复杂的算法而享有很高的声誉,他是普林斯 顿高级研究学院的一名数学教授,研究范围很广,从量子理论 到游戏理论的应用再到经济学。 冯·诺 依曼 帮助设 计了 E N I A C 的后 继产品 E D VA C (electronic discrete variable automatic computer)。特别是在 1 9 4 6年与 Arthur W. B u r k s和Herman H.Goldstine合写的论文 《Preliminary Discussion of the logical Design of an Electronic Computing instrumert》中,他描述了有关计算机的几点功能, 这些功能使得 E D VA C比E N I A C更先进。E D VA C的设计者感觉 第18章 从算盘到芯片 177 下载
178的奥 Chia°pdow 下载 到在计算机内部应该使用二进制数,而 ENIAC用的是十进制数:计算机应该具有尽可能大的 存储器,当程序执行时,这个存储器可用来存储程序代码和数据:( ENIAC中的情况不是这 样,对 ENIAC进行编程是通过断开开关和插上电缆来进行的。)指令应该在存储器中顺序存放 并用程序计数器来寻址,但也应该允许条件转移。这种设计思想叫作存储程序概念。 这种设计思想是重要的革命化的一步,今天称为冯·诺依曼体系结构,上一章建造的计 算机就是典型的冯·诺依曼机器。但冯·诺依曼体系结构也带来冯·诺依曼瓶颈,冯·诺依 曼型机器需要花费大量的时间从存储器中取出指令来准备执行。应该还记得第17章最后设计 的计算机取指令的时间占整个指令周期的3/4 在 EDVAC时代,用真空管构建存储器是不值得的,因而人们使用一些古怪的方法来解决 这个问题。一个成功的方法就是水银延迟线存储器,它使用5英尺长的水银管子。在管子的 端,每隔1微秒向水银发一个小脉冲。这些脉冲需要1毫秒的时间到达管子的另一端(此时,它 们像声波一样会被检测到,然后送回到开始的地方),因此每个水银管可存储大约1024位信息 直到20世纪50年代中期,磁芯存储器才开发出来。这种存储器由大量的环绕着电线的电 磁金属环组成,每个小环保存1位信息。在磁芯存储器被其他技术取代后的相当一段时期内 还经常听到老程序员把由处理器访问的存储器称作磁芯。 在20世纪40年代,冯·诺依曼并不是唯一一个对计算机的本质进行概念上思考的人。 克劳德·香农(1916年出生)是另外一个有着重大影响的思想家。第11章曾经提到他1938年 的硕士论文,论文中确立了开关、继电器和布尔代数之间的关系。1948年,当他在贝尔电话 实验室工作时,他在《 Bell System Technical Journal》上发表了一篇题为《 A Mathematical Theory of Communication》的论文,其中不仅引入了“位”的概念,而且确立了一个现代称 为“信息理论”的研究领域。信息理论涉及在噪声(经常阻碍信息传送)存在的情况下传送 数字信息以及如何进行信息补偿等问题。1949年,他写了第1篇关于编写让计算机下棋的程序 的文章:1952年他设计了通过继电器控制的机械老鼠,这个老鼠可以在迷宫中记住路径。香 农同时也因为他会骑独轮车,玩变戏法而在贝尔实验室很出名 Norbert Wiener((1894-1964)l8岁时就在哈佛大学取得了数学博士学位,因《 Cybernetics, or control and communication in the animal and macbine》(1948)一书而闻名于世。他首次 使用控制论( Cybernetics)这个词来表示一种把人及动物的生物活动与计算机及机器人的机 理联系起来的理论。在现代文化里,广泛使用 cyber-前缀表示与计算机相关的东西。更特别的 是,成千上万的计算机通过因特网进行的互连称作 cyberspace(信息空间),这个词来自科幻 小说作家 William Gibson1984年的小说《 Neuromancer,》中的词 cyberpunk 1948年, Eckert- Mauchly计算机公司( Remington rand公司的后继者)开始开发第一台商 用计算机 UNIVAC( universal automatic computer),并于1951年完成。第一台被送往人口普查 局。 UNIVAC的首次网络应用是用于CBS,用来预测1952年的总统选举结果。 Walter cronkite 称它为“电脑”。同样是在1952年,IBM发布了它的第一个商用计算机系统,即701。 从此,开始了社团和政府使用计算机的漫长历史。然而,之所以对这段历史感兴趣可能 是因为我们要追踪另一段历史轨迹——即降低计算机造价和大小并且使它进入家庭的轨迹, 它开始于1947年一场几乎不被人注意的电子技术突破。 贝尔电话实验室许多年里都是这样一个地方:聪明的人可以在此做他感兴趣的任何事 所幸的是,他们之中有人对计算机感兴趣,如已经提到的 George Stibitz和 Claude shannon
到在计算机内部应该使用二进制数,而 E N I A C用的是十进制数;计算机应该具有尽可能大的 存储器,当程序执行时,这个存储器可用来存储程序代码和数据;( E N I A C中的情况不是这 样,对E N I A C进行编程是通过断开开关和插上电缆来进行的。)指令应该在存储器中顺序存放 并用程序计数器来寻址,但也应该允许条件转移。这种设计思想叫作存储程序概念。 这种设计思想是重要的革命化的一步,今天称为冯·诺依曼体系结构,上一章建造的计 算机就是典型的冯·诺依曼机器。但冯·诺依曼体系结构也带来冯·诺依曼瓶颈,冯·诺依 曼型机器需要花费大量的时间从存储器中取出指令来准备执行。应该还记得第 1 7章最后设计 的计算机取指令的时间占整个指令周期的 3 / 4。 在E D VA C时代,用真空管构建存储器是不值得的,因而人们使用一些古怪的方法来解决 这个问题。一个成功的方法就是水银延迟线存储器,它使用 5英尺长的水银管子。在管子的一 端,每隔1微秒向水银发一个小脉冲。这些脉冲需要 1毫秒的时间到达管子的另一端(此时,它 们像声波一样会被检测到,然后送回到开始的地方),因此每个水银管可存储大约1 0 2 4位信息。 直到2 0世纪5 0年代中期,磁芯存储器才开发出来。这种存储器由大量的环绕着电线的电 磁金属环组成,每个小环保存 1位信息。在磁芯存储器被其他技术取代后的相当一段时期内, 还经常听到老程序员把由处理器访问的存储器称作磁芯。 在2 0世纪4 0年代,冯·诺依曼并不是唯一一个对计算机的本质进行概念上思考的人。 克劳德·香农( 1 9 1 6年出生)是另外一个有着重大影响的思想家。第 11章曾经提到他1 9 3 8年 的硕士论文,论文中确立了开关、继电器和布尔代数之间的关系。 1 9 4 8年,当他在贝尔电话 实验室工作时,他在《 Bell System Technical Journal》上发表了一篇题为《 A Mathematical Theory of Communication》的论文,其中不仅引入了“位”的概念,而且确立了一个现代称 为“信息理论”的研究领域。信息理论涉及在噪声(经常阻碍信息传送)存在的情况下传送 数字信息以及如何进行信息补偿等问题。 1 9 4 9年,他写了第1篇关于编写让计算机下棋的程序 的文章;1 9 5 2年他设计了通过继电器控制的机械老鼠,这个老鼠可以在迷宫中记住路径。香 农同时也因为他会骑独轮车,玩变戏法而在贝尔实验室很出名。 Norbert Wi e n e r ( 1 8 9 4-1 9 6 4 ) 1 8岁时就在哈佛大学取得了数学博士学位,因《 C y b e r n e t i c s , o r Control and Communication in the Animal and Macbine》(1 9 4 8)一书而闻名于世。他首次 使用控制论( C y b e r n e t i c s)这个词来表示一种把人及动物的生物活动与计算机及机器人的机 理联系起来的理论。在现代文化里,广泛使用 c y b e r-前缀表示与计算机相关的东西。更特别的 是,成千上万的计算机通过因特网进行的互连称作 c y b e r s p a c e(信息空间),这个词来自科幻 小说作家William Gibson 1984年的小说《N e u r o m a n c e r》中的词c y b e r p u n k。 1 9 4 8年,E c k e r t - M a u c h l y计算机公司(Remington Rand公司的后继者)开始开发第一台商 用计算机U N I VAC(universal automatic computer),并于1 9 5 1年完成。第一台被送往人口普查 局。U N I VA C的首次网络应用是用于 C B S,用来预测1 9 5 2年的总统选举结果。Walter Cronkite 称它为“电脑”。同样是在1 9 5 2年,I B M发布了它的第一个商用计算机系统,即 7 0 1。 从此,开始了社团和政府使用计算机的漫长历史。然而,之所以对这段历史感兴趣可能 是因为我们要追踪另一段历史轨迹—即降低计算机造价和大小并且使它进入家庭的轨迹, 它开始于1 9 4 7年一场几乎不被人注意的电子技术突破。 贝尔电话实验室许多年里都是这样一个地方:聪明的人可以在此做他感兴趣的任何事。 所幸的是,他们之中有人对计算机感兴趣,如已经提到的 G e o rge Stibitz 和Claude Shannon, 178 编码的奥秘 下载
chinaopub.coM 第18章从算盘到芯片 179 下载 他们在贝尔实验室工作的时候都为早期的计算机作出了突出的贡献。后来,在20世纪70年代 尔实验室诞生了很有影响的操作系统UNIX和程序设计语言C语言,这些在随后的几章里将 925年1月1日,美国电话电报公司正式把它的科学和技术研究部分与商业部分分离,另 外建立附属机构,这样贝尔实验室诞生了。贝尔实验室的主要目的是为了研究能够提高电话 系统性能的技术。幸运的是,它的要求非常含糊,可以包含所有的事情。但在电话系统中, 个明确的长期的目标是:在线路上传输的声音信号能不失真地放大 从1912年起,贝尔电话系统就采用了真空管放大器,大量的研究和工程人员着手提高电 话系统使用的真空管的性能。尽管这样,真空管仍然有许多问题。管子体积大,功耗大且最 终会烧毁。不过,在当时却是唯一的选择。 1947年12月16日,当贝尔实验室的两个物理学家 John bardeen(1908-1991)和 Walter Brattain(1902-1987)在装配一个不同类型的放大器时,所有的一切都改变了。这种新型放大 器由锗片—一种称作半导体的元素一和一条金箔构成。一个星期后,他们给他们的上司 William Shockley(1910-1989)进行了演示。这就是第一个晶体管,一种被人们称为20世纪 最伟大的发明的器件 晶体管不是凭空产生的。8年前,即1939年12月29日, Shockley在笔记本写下:“今天我 想用半导体而不是真空管做放大器在原理上是可能的。”第一个晶体管被发明以后,随后许多 年它继续被完善。1956年, Shockley、 Bardeen和 Brattain获得诺贝尔物理学奖——“因为他们 在半导体上的研究并且发明了晶体管。” 本书的前面谈到了导体和绝缘体。之所以称作导体是因为它们非常容易导电,铜、银和 金都是很好的导体。并非巧合,所有这三种元素都在元素周期表的同一列 前面讲过,原子中的电子分布围绕在原子核的外层。上述三种导体的特征是只有一个单 独的电子在最外层。这个电子很容易与原子的其余部分分离并自由移动形成电流。与导体相 对的是绝缘体,像橡皮和塑料,它们几乎不能导电。 锗和硅元素(还有一些化合物)称为半导体,并不是因为它们的导电性是导体的一半, 而是因为它们的导电性可以用多种方法来控制。半导体最外层有4个电子,是最外层所能容纳 电子最大数目的一半。在纯半导体中,原子彼此非常稳固地结合在一起,具有与金刚石相似 的晶状结构。这种半导体不是好的导体。 但是半导体可以掺杂,意思是与某种杂质相混合。半导体很容易与其他杂质结合而变得 不纯。有一类杂质为原子的结合提供额外的电子,这种半导体叫N型半导体(N表示 negative);另一种类型的杂质掺杂生成P型半导体。 两个N型半导体中夹一个P型半导体可制成放大器,称作NPN晶体管,对应的三部分分别 是集电极( Collector)、基极(Base)和发射极( Emitter 下面是一个NPN晶体管的示意图: 集电极
他们在贝尔实验室工作的时候都为早期的计算机作出了突出的贡献。后来,在 2 0世纪7 0年代, 贝尔实验室诞生了很有影响的操作系统 U N I X和程序设计语言 C语言,这些在随后的几章里将 要讲到。 1 9 2 5年1月1日,美国电话电报公司正式把它的科学和技术研究部分与商业部分分离,另 外建立附属机构,这样贝尔实验室诞生了。贝尔实验室的主要目的是为了研究能够提高电话 系统性能的技术。幸运的是,它的要求非常含糊,可以包含所有的事情。但在电话系统中, 一个明确的长期的目标是:在线路上传输的声音信号能不失真地放大。 从1 9 1 2年起,贝尔电话系统就采用了真空管放大器,大量的研究和工程人员着手提高电 话系统使用的真空管的性能。尽管这样,真空管仍然有许多问题。管子体积大,功耗大且最 终会烧毁。不过,在当时却是唯一的选择。 1 9 4 7年1 2月1 6日,当贝尔实验室的两个物理学家 John Bardeen(1908—1 9 9 1 )和Wa l t e r B r a t t a i n ( 1 9 0 2—1 9 8 7 )在装配一个不同类型的放大器时,所有的一切都改变了。这种新型放大 器由锗片—一种称作半导体的元素—和一条金箔构成。一个星期后,他们给他们的上司 William Shockley(1 9 1 0—1 9 8 9)进行了演示。这就是第一个晶体管,一种被人们称为 2 0世纪 最伟大的发明的器件。 晶体管不是凭空产生的。 8年前,即1 9 3 9年1 2月2 9日,S h o c k l e y在笔记本写下:“今天我 想用半导体而不是真空管做放大器在原理上是可能的。”第一个晶体管被发明以后,随后许多 年它继续被完善。1 9 5 6年,S h o c k l e y、B a r d e e n和B r a t t a i n获得诺贝尔物理学奖—“因为他们 在半导体上的研究并且发明了晶体管。” 本书的前面谈到了导体和绝缘体。之所以称作导体是因为它们非常容易导电,铜、银和 金都是很好的导体。并非巧合,所有这三种元素都在元素周期表的同一列。 前面讲过,原子中的电子分布围绕在原子核的外层。上述三种导体的特征是只有一个单 独的电子在最外层。这个电子很容易与原子的其余部分分离并自由移动形成电流。与导体相 对的是绝缘体,像橡皮和塑料,它们几乎不能导电。 锗和硅元素(还有一些化合物)称为半导体,并不是因为它们的导电性是导体的一半, 而是因为它们的导电性可以用多种方法来控制。半导体最外层有 4个电子,是最外层所能容纳 电子最大数目的一半。在纯半导体中,原子彼此非常稳固地结合在一起,具有与金刚石相似 的晶状结构。这种半导体不是好的导体。 但是半导体可以掺杂,意思是与某种杂质相混合。半导体很容易与其他杂质结合而变得 不纯。有一类杂质为原子的结合提供额外的电子,这种半导体叫 N型半导体( N表示 n e g a t i v e);另一种类型的杂质掺杂生成 P型半导体。 两个N型半导体中夹一个 P型半导体可制成放大器,称作 N P N晶体管,对应的三部分分别 是集电极(C o l l e c t o r)、基极( B a s e )和发射极( E m i t t e r )。 下面是一个N P N晶体管的示意图: 第18章 从算盘到芯片 179 下载 集电极 发射极 基极
180编的奥 Chinapub.com 下载 基极上的一个小电压能控制一个很大的电压经过集电极到发射极。若基极上没有电压, 它会有效截止晶体管 晶体管通常被封装在一个直径大约为1/4英寸的小金属容器里,有三个引脚伸出: 晶体管首创了固态电子器件,意思是晶体管不需要真空,可由固体做成,特别是指由半 导体和当今最普遍的硅制成。除了比真空管体积更小外,晶体管功耗小,发热少,并且更耐 用。携带一个电子管收音机很不方便。晶体管收音机靠小电池供电,并且不像电子管,它不 会变热。对于1954年圣诞节早晨收到礼物的幸运者来说携带晶体管收音机已成为可能。那些 第一批袖珍晶体管收音机是由徳克萨斯仪器公司制造的,该公司是半导体革命中的一个重要 然而,晶体管的第一个商业应用是助听器。为了纪念贝尔一生为聋人的贡献,AT&T公 司允许助听器生产厂家不用付任何专利权税就可使用晶体管技术。第一台晶体管电视机出现 于1960年,而今天,电子管器件几乎已消失了。(然而,并未完全消失,一些高保真发烧友及 电子吉他手还是喜欢用电子管放大器来放大声音而不是用晶体管。) 1956年, Shockley离开贝尔实验室成立 Shockley半导体实验室。他迁到加利福尼亚的Palo Alto—他的成长之地。他的公司是那里成立的第一家从事这种工作的公司。后来,其他半导 体及计算机公司也在那儿建立了业务,于是旧金山南部的这个地方也就成为现在非正式地称 作硅谷( Silicon Valley)的地方。 真空管原是为放大信号而开发的,但它们也用来作为逻辑门的开关。晶体管也是如此。 下面你将会看到一个由晶体管组成的与门在构造上很像用继电器组成的与门。只有当A输入 为1且B输入为1时,两个晶体管才都导通,输出才为1。这里所示的电阻用来防止短路。 正如你所看到的,下图连接了两组晶体管,右边一个是或门,左边一个是与门。在与门 电路里,上面管子的发射极连接到下面管子的集电极。在或门电路里,两个晶体管的集电极 都连到电源,发射极连到一起 或门 门 A输入 B输入
基极上的一个小电压能控制一个很大的电压经过集电极到发射极。若基极上没有电压, 它会有效截止晶体管。 晶体管通常被封装在一个直径大约为 1 / 4英寸的小金属容器里,有三个引脚伸出: 晶体管首创了固态电子器件,意思是晶体管不需要真空,可由固体做成,特别是指由半 导体和当今最普遍的硅制成。除了比真空管体积更小外,晶体管功耗小,发热少,并且更耐 用。携带一个电子管收音机很不方便。晶体管收音机靠小电池供电,并且不像电子管,它不 会变热。对于 1 9 5 4年圣诞节早晨收到礼物的幸运者来说携带晶体管收音机已成为可能。那些 第一批袖珍晶体管收音机是由德克萨斯仪器公司制造的,该公司是半导体革命中的一个重要 公司。 然而,晶体管的第一个商业应用是助听器。为了纪念贝尔一生为聋人的贡献, AT&T公 司允许助听器生产厂家不用付任何专利权税就可使用晶体管技术。第一台晶体管电视机出现 于1 9 6 0年,而今天,电子管器件几乎已消失了。(然而,并未完全消失,一些高保真发烧友及 电子吉他手还是喜欢用电子管放大器来放大声音而不是用晶体管。) 1 9 5 6年,S h o c k l e y离开贝尔实验室成立S h o c k l e y半导体实验室。他迁到加利福尼亚的 P a l o A l t o—他的成长之地。他的公司是那里成立的第一家从事这种工作的公司。后来,其他半导 体及计算机公司也在那儿建立了业务,于是旧金山南部的这个地方也就成为现在非正式地称 作硅谷(Silicon Va l l e y)的地方。 真空管原是为放大信号而开发的,但它们也用来作为逻辑门的开关。晶体管也是如此。 下面你将会看到一个由晶体管组成的与门在构造上很像用继电器组成的与门。只有当 A 输入 为1且B输入为1时,两个晶体管才都导通,输出才为 1。这里所示的电阻用来防止短路。 正如你所看到的,下图连接了两组晶体管,右边一个是或门,左边一个是与门。在与门 电路里,上面管子的发射极连接到下面管子的集电极。在或门电路里,两个晶体管的集电极 都连到电源,发射极连到一起: 180 编码的奥秘 下载 与门 或门 A输入 A输入 B输入 B输入 输出 输出
第8章从算盘到片181 下载 因此,我们所学的有关由继电器构造逻辑门和其他部件的知识也适用于晶体管。继电器、 电子管和晶体管最初主要用来放大信号,但也可用同样的方法连接成逻辑门来建造计算机 第一台晶体管计算机制造于1956年,短短几年内,新计算机的设计中就放弃使用电子管了 这里有一个问题:晶体管当然使计算机更可靠,更小和更省电,但晶体管能使计算机的 制造更简单吗? 并非如此。虽然晶体管使得在一个小空间里能安装更多的逻辑门,但你还得担心这些组 件的互连。连接晶体管形成逻辑门像连接继电器和真空电子管一样困难,某种程度上,它甚 至更困难,因为晶体管较小,不容易掌握。如果想用晶体管建造第17章所建造的计算机及 KB的RAM阵列,设计工作中的一部分将是设法发明某种能容纳所有组件的结构。这些劳 动是乏味的,需要在数百万晶体管之间建立起数百万连接。 然而,就像我们所发现的,一些晶体管的连接会重复出现。许多对晶体管几乎都是先连 接成门,门再连接成触发器、加法器、选择器或译码器,触发器再组成多位锁存器或RAM 列。如果晶体管事先能连接成通用的结构,那么组装一台计算机就容易多了。 种思想应该首先由英国物理学家 Geoffrey Dummer(1909出生)在1952年5月的一次演讲 中提出,他说: “我想预测一下未来。随着晶体管的出现及半导体的日益广泛应用,现在似乎可以设想电 子设备在一个固体块里而无需接线。这个块由隔离、传导、整理、放大四个层组成,电子功 能通过各层的隔离区域直接连接起来。” 然而,真正可用的产品还不得不再等几年。 在对 Dummer的预言毫不知情的情况下,1958年7月,德克萨斯仪器公司的 Jack Kilby(生 于1923年)想到了在一个硅片上造出许多晶体管、电阻及其他电子组件的方法。6个月以后 即1959年1月, Robert Noyce(1927-1990)也找到了基本上相同的方法。 Noyce.原先曾为 Shockley半导体实验室工作过,但在1957年,他和其他7位科学家离开实验室并成立了 Fairchild(仙童)半导体公司。 在技术史上,同时产生的发明很普遍,可能超出了你的想像。尽管Kiby比 Noyce早6个月 发明了这项技术,并且德克萨斯仪器公司比仙童公司也早申请专利,但Noyc还是首先获得了 专利。法律上的争斗随之而来,但仅过了10年,问题就得到了令他们都满意的解决。尽管他 们从未在一起工作过,但 Kilda和Noyc被认为是集成电路,或称IC,更普遍的是叫芯片的共 同发明者。 集成电路要经过复杂的工序才能生产出来,这些工序包括把很薄的硅晶片分层,精确地 上涂料,和在不同的区域蚀刻形成微部件。尽管开发一种新的集成电路很昂贵,但收益来自 于它的大量生产—生产得越多,就越便宜 实际的硅晶片薄且很脆弱,为了保护芯片并提供某种方法使芯片中的部件与别的芯片 接,芯片必须安全地封装。集成电路的封装有几种不同的方式,但通常多采用矩形塑料双排 直插式封装(或 dual inline package,DP),有14、16或40个管脚从旁边伸出
因此,我们所学的有关由继电器构造逻辑门和其他部件的知识也适用于晶体管。继电器、 电子管和晶体管最初主要用来放大信号,但也可用同样的方法连接成逻辑门来建造计算机。 第一台晶体管计算机制造于 1 9 5 6年,短短几年内,新计算机的设计中就放弃使用电子管了。 这里有一个问题:晶体管当然使计算机更可靠,更小和更省电,但晶体管能使计算机的 制造更简单吗? 并非如此。虽然晶体管使得在一个小空间里能安装更多的逻辑门,但你还得担心这些组 件的互连。连接晶体管形成逻辑门像连接继电器和真空电子管一样困难,某种程度上,它甚 至更困难,因为晶体管较小,不容易掌握。如果想用晶体管建造第 1 7章所建造的计算机及 6 4 K B的 R A M阵列,设计工作中的一部分将是设法发明某种能容纳所有组件的结构。这些劳 动是乏味的,需要在数百万晶体管之间建立起数百万连接。 然而,就像我们所发现的,一些晶体管的连接会重复出现。许多对晶体管几乎都是先连 接成门,门再连接成触发器、加法器、选择器或译码器,触发器再组成多位锁存器或 R A M阵 列。如果晶体管事先能连接成通用的结构,那么组装一台计算机就容易多了。 这种思想应该首先由英国物理学家 G e o ffrey Dummer(1909出生)在1 9 5 2年5月的一次演讲 中提出,他说: “我想预测一下未来。随着晶体管的出现及半导体的日益广泛应用,现在似乎可以设想电 子设备在一个固体块里而无需接线。这个块由隔离、传导、整理、放大四个层组成,电子功 能通过各层的隔离区域直接连接起来。” 然而,真正可用的产品还不得不再等几年。 在对D u m m e r的预言毫不知情的情况下, 1 9 5 8年7月,德克萨斯仪器公司的Jack Kilby(生 于1 9 2 3年)想到了在一个硅片上造出许多晶体管、电阻及其他电子组件的方法。 6个月以后, 即1 9 5 9年1月,Robert Noyce(1 9 2 7—1 9 9 0)也找到了基本上相同的方法。 N o y c e原先曾为 S h o c k l e y半导体实验室工作过,但在 1 9 5 7年,他和其他 7位科学家离开实验室并成立了 F a i r c h i l d(仙童)半导体公司。 在技术史上,同时产生的发明很普遍,可能超出了你的想像。尽管 K i l b y比N o y c e早6个月 发明了这项技术,并且德克萨斯仪器公司比仙童公司也早申请专利,但 N o y c e还是首先获得了 专利。法律上的争斗随之而来,但仅过了 1 0年,问题就得到了令他们都满意的解决。尽管他 们从未在一起工作过,但 K i l d y和N o y c e被认为是集成电路,或称 I C,更普遍的是叫芯片的共 同发明者。 集成电路要经过复杂的工序才能生产出来,这些工序包括把很薄的硅晶片分层,精确地 上涂料,和在不同的区域蚀刻形成微部件。尽管开发一种新的集成电路很昂贵,但收益来自 于它的大量生产—生产得越多,就越便宜。 实际的硅晶片薄且很脆弱,为了保护芯片并提供某种方法使芯片中的部件与别的芯片连 接,芯片必须安全地封装。集成电路的封装有几种不同的方式,但通常多采用矩形塑料双排 直插式封装(或dual inline package,D I P),有1 4、1 6或4 0个管脚从旁边伸出: 第18章 从算盘到芯片 181 下载
182 编码的奥秘 下载 这是一个16管脚的芯片。如果你拿着芯片,并使芯片上的凹陷朝左时(如图),从芯片左 下角起环绕到右边至末端,管脚依次编号为1~16,第16管脚在左上角。每一边管脚之间相距 刚好为1/10英寸。 20世纪60年代,空间项目和军备竞赛刺激了早期的集成电路市场。在民用方面,第一个 包含有集成电路的商业产品是1964年由 Zenith出售的助听器。1971年,德克萨斯仪器公司开 始出售第一批袖珍计算器,同时 Pulsar出售了第一块数字表(显然数字手表中集成电路的封装 完全不同于刚才图示的例子)。随后出现了其他很多种包含有集成电路的产品。 1965年,戈登·E·摩尔(当时在仙童公司,后来是 Intel公司的合伙创始人)注意到技术 以这样一种方式在发展:1959年后,可以集成到一块芯片上的晶体管的数目每年都翻一番。 他预测这种趋势将继续下去。事实上后来这种趋势放慢了些,因此摩尔定律(最终这样命名) 修改为预计每18个月在一个芯片上集成的晶体管数量将增长一倍。这仍是一个令人惊异的增 长速度,这也就解释了为什么家用电脑只用了短短几年好像就已过时了。一些人认为摩尔定 律将继续适用到2015年 早期,人们习惯于说小规模集成电路,即SSI(smal- scale integration),指那些少于10个 逻辑门的芯片:中规模集成电路,即MSI(10~100个门):大规模集成电路,即LSI(100~ 5000个门)。随后的术语为超大规模集成电路,即ⅥLSI(5000~50000个门):极大规模集 成电路,即SLSI(50000~100000个门):特大规模集成电路,即超过100000个门。 本章的其余部分和下一章将把时钟停留在20世纪70年代中期,即第一部《星球大战》发 行前的年代,那时,VLSI刚刚出现,且好几种技术用来制作构成集成电路的组件 种技 术有时被称为一个IC家族。到70年代中期,两个“家族”流行开来:TIL和CMOS。 TTL代表晶体管-晶体管逻辑。70年代中期,如果你是一位数字电路设计工程师(即用IC 来设计大的电路),一本1.25英寸厚的、德克萨斯仪器公司于1973年出版的名为《 The TTL Data Book for Design engineer》(IIL工程师设计数据手册)的书(以下简称《TTL数据手册》)就 会是你书桌上的常客。这是一本关于德克萨斯仪器公司和其他公司出售的TTL集成电路7400系 列的完整的参考书,之所以这样称呼是因为该家族的每个集成电路都以开头是74的数字标识 7400系列中每一个集成电路由许多预先按特定方式连接的逻辑门组成。一些具备简单的 预先连接的逻辑门的芯片可以用来建造更大的组件。还有一些芯片提供通用组件,如:触发 器、加法器、选择器和译码器。 7400系列中第一个集成电路是号码7400本身,它在《TIL数据手册》里描述为:“四个双 输入正与非门”。这意味着这个特定的集成电路包含四个2输入与非门。它们之所以称为“正” 与非门是因为有一个电压值与逻辑1对应,没有电压值与逻辑0对应。这个集成电路是一个14 管脚的芯片,数据手册中的一个小图展示了管脚对应的输入和输出: 1A 1B 1Y 2A 2B 2Y
这是一个1 6管脚的芯片。如果你拿着芯片,并使芯片上的凹陷朝左时(如图),从芯片左 下角起环绕到右边至末端,管脚依次编号为 1~1 6,第1 6管脚在左上角。每一边管脚之间相距 刚好为1 / 1 0英寸。 2 0世纪6 0年代,空间项目和军备竞赛刺激了早期的集成电路市场。在民用方面,第一个 包含有集成电路的商业产品是 1 9 6 4年由Z e n i t h出售的助听器。 1 9 7 1年,德克萨斯仪器公司开 始出售第一批袖珍计算器,同时 P u l s a r出售了第一块数字表(显然数字手表中集成电路的封装 完全不同于刚才图示的例子)。随后出现了其他很多种包含有集成电路的产品。 1 9 6 5年,戈登·E·摩尔(当时在仙童公司,后来是 I n t e l公司的合伙创始人)注意到技术 以这样一种方式在发展: 1 9 5 9年后,可以集成到一块芯片上的晶体管的数目每年都翻一番。 他预测这种趋势将继续下去。事实上后来这种趋势放慢了些,因此摩尔定律(最终这样命名) 修改为预计每 1 8个月在一个芯片上集成的晶体管数量将增长一倍。这仍是一个令人惊异的增 长速度,这也就解释了为什么家用电脑只用了短短几年好像就已过时了。一些人认为摩尔定 律将继续适用到2 0 1 5年。 早期,人们习惯于说小规模集成电路,即 S S I(small-scale integration),指那些少于1 0个 逻辑门的芯片;中规模集成电路,即 M S I(1 0~1 0 0个门);大规模集成电路,即 L S I(1 0 0~ 5 0 0 0个门)。随后的术语为超大规模集成电路,即 V L S I(5 000~50 000个门);极大规模集 成电路,即S L S I(5 0 0 0 0~100 000个门);特大规模集成电路,即超过 100 000个门。 本章的其余部分和下一章将把时钟停留在 2 0世纪7 0年代中期,即第一部《星球大战》发 行前的年代,那时, V L S I刚刚出现,且好几种技术用来制作构成集成电路的组件,每一种技 术有时被称为一个I C家族。到7 0年代中期,两个“家族”流行开来: T T L和C M O S。 T T L代表晶体管-晶体管逻辑。 7 0年代中期,如果你是一位数字电路设计工程师(即用 I C 来设计大的电路),一本1 . 2 5英寸厚的、德克萨斯仪器公司于 1 9 7 3年出版的名为《 The TTL Data Book for Design Engineer》( T T L工程师设计数据手册)的书(以下简称《T T L数据手册》)就 会是你书桌上的常客。这是一本关于德克萨斯仪器公司和其他公司出售的 T T L集成电路7 4 0 0系 列的完整的参考书,之所以这样称呼是因为该家族的 每个集成电路都以开头是7 4的数字标识。 7 4 0 0系列中每一个集成电路由许多预先按特定方式连接的逻辑门组成。一些具备简单的 预先连接的逻辑门的芯片可以用来建造更大的组件。还有一些芯片提供通用组件,如:触发 器、加法器、选择器和译码器。 7 4 0 0系列中第一个集成电路是号码 7 4 0 0本身,它在《T T L数据手册》里描述为:“四个双 输入正与非门”。这意味着这个特定的集成电路包含四个 2输入与非门。它们之所以称为“正” 与非门是因为有一个电压值与逻辑 1对应,没有电压值与逻辑 0对应。这个集成电路是一个 1 4 管脚的芯片,数据手册中的一个小图展示了管脚对应的输入和输出: 182 编码的奥秘 下载