【计算机速成课】笔记(2)电子计算机

前言

 

        上篇讲到,计算机的发展史来到了 20 世纪初,当时的早期计算设备虽然在现在看来依然笨拙,但也大大提高了政府的工作效率和工厂的生产效率。然而在那个时代,人类社会的规模在以前所未有的速度增长,全球贸易和运输更加紧密,科学和工程的复杂度也达到新高,我们甚至开始考虑造访其他行星。复杂度的增高导致数据量暴增,人们需要更自动化、计算能力更强的计算机,来提高各种工作的效率。很快,柜子大小的计算机变成房间大小,虽然它们维护费用高,而且容易出错,但正是这些机器,为未来的卓越创新打下基础。
 

Part 1 继电器

       我们在之前说过,计算机的发展经历了机械式,机电式,最后才发展为如今的电子式,在纯机械的计算机无法满足20世纪后人们的计算需求后,机电式计算机出现了。迄今为止,最大的机电计算机之一是IBM 在 1944 完成建造的哈佛马克一号。

      它有76万5千个组件,300万个连接点和500英里长的导线,为了保持内部机械装置同步,它有一个50英尺的传动轴,由一个 5 马力的电机驱动。这台机器最早的用途之一,是给美国研究原子弹的“曼哈顿计划”跑模拟。

       在这里,我们先介绍一下这台机器最重要的地方——继电器。继电器是这台机器的“大脑”,通俗一点来说,就是用电控制的机械开关。在继电器里,有一条“控制线路”,控制电路是开还是关。“控制线路”连着一个线圈,当电流流过线圈,线圈就会产生电磁场,吸引金属臂落下,从而使电路闭合。

       如果这样的描述有些难以想象的话,你可以把继电器想成水龙头,把控制线路想成水龙头把,拧开水龙头,水会流出来,关闭水龙头,水就没有了。继电器是一样的,只不过控制的是电子 ,而不是水,这个控制电路可以连到其他电路,比如马达,马达一通上电,就会让计数齿轮 +1,就像上篇中 Hollerith 的制表机一样。正是因为给计算机用上了这样的继电器,从而让电力代替了大部分人力进行计算,于是,机械和电路共同组成的计算机,就叫做机电式计算机。

       回到对继电器的介绍。继电器内的机械臂相对来说有点笨重,因此无法快速开关,在20世纪40年代,一个好的继电器 1 秒能开关 50 次,听起来好像很快,但以这样的速度运行,还不足以解决复杂的大问题。就哈佛马克一号来说,它1 秒能做 3 次加法或减法运算,一次乘法要花 6 秒,除法要花 15 秒,像计算三角函数这些更复杂的操作,可能需要一分钟以上的时间。

      除了速度慢,另一个缺点就是齿轮磨损,这是机械式计算机的老问题了,机电式计算机也难免如此。任何会动的机械都会随时间磨损,有些部件会完全损坏,有些则是变钝,变慢,随着继电器数量增加,故障的发生概率也会增加。哈佛马克一号有大约3500个继电器,就算假设继电器的使用寿命是 10 年,也意味着平均每天就得换一个故障继电器!这是个很严重的问题,因为有些重要运算要运行好几天,如果在期间有个继电器故障,那就意味着这次运算就前功尽弃了。

       而且还有更多其他问题要考虑,这些又大又黑又暖和的机器很容易吸引诸如蚊子、飞蛾等昆虫。1947年9月,哈佛马克2型的操作员从故障继电器中拔出一只死虫,Grace Hopper说,“从那时起,每当电脑出了问题,我们就说它出了 bug(虫子)。”这就是术语“bug”的来源

Part 2 真空管

       显然,如果想进一步提高计算能力,就需要更快更可靠的东西来代替继电器,幸运的是,替代品早已被发明了。在 1904 年,英国物理学家 John Ambrose Fleming 开发了一种新的电子组件,叫“热电子管”,那是世上第一个真空管,其实就是把两个电极装在一个密封的玻璃灯泡里,其中一个电极可以通过加热来发射电子,这叫 “热电子发射”,另一个电极则会吸引电子,电子从一个电极到另一个电极定向移动,便形成了电流。后来,这样使电流只能单向流动的电子部件被称为“二极管”。 

       不久后的1906 年,美国发明家 Lee de Forest在上面所说的两个电极之间加入了第三个电极,称作控制电极,向控制电极施加正电荷,它会允许电子流动,但如果施加负电荷,则会阻止电子流动,以此来控制电路的开闭,和继电器的功能一样,但重要的是,真空管内没有真正会动的组件,这意味着它的内部不会有磨损的情况!更重要的是,这样的电路每秒可以开闭数千次,因此这些“三极真空管”逐渐取代了含有笨重又容易磨损的机械臂的继电器,成为无线电、长途电话以及其他电子设备的基础,在后来的半个世纪里占领了统治地位。

       但是,真空管并不是完美的,由于要保持密封性,它们的很大一部分是玻璃,因此很脆弱,并且像灯泡一样在高温下会烧坏,尽管如此,它比起机械继电器仍是一次巨大进步。

       第一个大规模使用真空管的计算机是“巨人一号”,由工程师 Tommy Flowers 设计,完工于1943年12月。

       巨人1号被用于破解纳粹的通信,它被认为是第一个可以编辑程序的电子计算机,编程的方法是把几百根电线按需要插入插板,来让计算机执行正确操作。

       后来又出现了电子数值积分计算机“ENIAC”,这是由John Mauchly 和 J. Presper Eckert设计的世界上第一个真正的通用、可编程的电子计算机。

       ENIAC 每秒可执行 5000 次十进制加减法,比前辈快了很多倍,它运作了十年,据估计,它完成的运算,比到当时全人类所做的全加起来还多,但因为真空管很多,所以故障很常见(比起机械式的继电器还是好很多的啦),ENIAC每运行半天左右就会出一次故障。

       到 1950 年代,真空管计算机的发展达到了极限,美国空军的 AN/FSQ-7 计算机于 1955 年完成,是 "SAGE" 防空计算机系统的一部分。

Part 3 晶体管

       故障频发而且造价昂贵的计算机还是无法满足很多人的需求,为了降低成本和大小,同时提高可靠性和计算速度,人们需要一种新的电子开关,1947 年,贝尔实验室的科学家 John Bardeen,Walter Brattain 和 William Shockley 发明了晶体管,一个全新的计算机时代,诞生了。

       晶体管所涉及的物理学原理相当复杂,甚至能牵扯到量子力学,所以在这里,我们只讲一些基础。晶体管就像之前提过的继电器和真空管,它也是一个开关,可以用控制线路来控制开或关。

       晶体管有两个电极,电极之间有一种材料隔开它们,这种材料在不同温度下,导电能力相差极大,所以叫做半导体,控制线连到一个 "门" 电极,通过改变 "门" 的电荷,进而提高或降低温度,就可以控制半导体材料的导电性,就像之前的水龙头比喻。

       贝尔实验室的第一个晶体管就展示了巨大的潜力,它每秒可以开关 10,000 次,而且,比起玻璃制成的易碎的真空管,晶体管是固态的,而且体积远远小于继电器和真空管,可以用于制造更小更便宜的计算机,比如,1957年发布的 IBM 608 就是第一个完全用晶体管的计算机,而且普通的消费者就可以买到。它有 3000 个晶体管,每秒执行 4500 次加法或 80 次左右的乘除法,IBM 很快将研发方向转向了晶体管,把晶体管计算机带入办公室,最终引入家庭。

       如今,计算机里的晶体管小于 50 纳米,而一张纸的厚度大概是 10 万纳米!晶体管不仅小,开关还超级快,每秒可以切换上百万次,并且能工作几十年。很多晶体管和半导体的开发在美国加州的圣克拉拉谷,而生产半导体最常见的材料是 “硅”,所以这个地区就被称为“硅谷”,甚至 William Shockley 都搬了过去,创立了“肖克利半导体”,后来又有了“仙童半导体”,这里面的员工后来创立了英特尔 ——当今世界上最大的计算机芯片制造商。

尾声

       好了,在电子计算机的发展过程中,我们从"继电器"讲到"真空管",再到"晶体管",让电路开闭得非常非常快,但我们是如何用晶体管做计算的?我们没有马达和齿轮啊?  这些问题留到下期为你解答!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值