计算机发展历史
第一节:简述计算机
1.1 为什么要学计算机基础
python是编程语言,即python是语言。语言有英语、法语、葡萄牙语等,但凡是语言,都是用来沟通的介质。
程序员编程的本质就是让计算机去工作,而编程语言就是程序员与计算机沟通的介质,程序员要想让计算机工作,必须知道计算机能干什么,怎么干的,这也就是我们必须学习计算机基础的原因。
然而光有编程语言和硬件也并不能满足大家的编程需求,为什么这么说呢?
程序用编程语言写程序,最终开发出的结果就是一个软件,既然是软件,那就与腾讯qq、暴风影音、快播等软件没有区别了。这些软件必须运行在操作系统之上,你肯定会问:为何要有操作系统呢?没错,远古时代的程序员确实是在没有操作系统的环境下,用编程语言之间操作硬件来编程的,你可能觉得这没有问题,但其实问题是相当严重的,因为此时你必须掌握如何操作硬件的所有具体细节,比如如何具体操作硬盘(现在你得把硬盘拆开,然后你能看见的所有的东西,你都得研究明白,因为你编程时要用到它),这就严重影响了开发的效率,操作系统的出现就是运行于硬件之上,来控制硬件的,我们开发时,只需要调用操作系统为我们提供的简单而优雅的接口就可以了。
所以一套完整的计算机系统分为:计算机硬件,操作系统,应用软件,如下图。因而我们的python开发复习课分为计算机硬件基础,操作系统基础,和python编程三部分,就让我们先从计算机硬件学起吧!
1.2 计算机发展历史
1.2.1 早期的计算工具
我们都知道电脑的学名叫计算机,从名字我们可以看出,最初电脑是用来做计算的。那么我们可以推测,电脑的始祖是用来做计算的。
在远古,人们最早使用的计算工具可能是手指,英文单词“digit”既有“数字”的意思,又有“手指“的意思。古人用石头打猎,所以还有可能是石头来辅助计算。
但是手指和石头太低效了,后来就出现了”结绳“记事——结绳慢,绳子还有长度限制。后来又不知过了多久,许多国家的人开始使用”筹码“来计数,最有名的就要数咱们中国商周时期出现的算筹了。古代的算筹实际上是一根根同样长短和粗细的小棍子,大约二百七十几枚为一束; 多用竹子制成,也有用木头、兽骨、象牙、金属等材料制成的。数学家祖冲之计算圆周率时使用的工具就是算筹。
在长期使用算筹进行计算的过程中,算筹的缺点显露了出来,使用算筹计算太麻烦了,很不方便——计算时需要慢慢摆放。
于是,这个时候人们发明了更好的计算工具——算盘
算盘最早可能在汉代萌芽,在南北朝时期定型,利用进位制计数。使用时需要配合一套口诀——好比计算机的软件。算盘本身还可以存储数字,使用时很方便。至今,算盘还在被使用。
15世纪,随着天文和航海的发展,计算工作越来越繁重,计算工具急需改进。1630年,英国数学家奥特雷德在使用当时流行的对数刻度尺做乘法运算时,突然想到,如果用两根相互滑动的对数刻度尺,不久省去了用两脚规度量长度了么。他的这个想法导致了机械化计算吃的诞生,但奥特雷德对这件事情并没有在意,此后200年里,他的发明也就没有被实际应用。
直到18世纪末,发明蒸汽机的瓦特成功制作了第一把计算尺,在尺座上增加了一个滑标,用来“存储”计算的中间结果,这种滑标很长时间一直被后人所沿用。
1850年以后,计算尺迅速发展,成为工程师随身携带的”计算器“,一直到20世纪五六时年代,计算尺仍然是工科大学生的一种身份标志。
第一台真正计算机的出现
1623年,法国数学家帕斯卡出生,三岁丧母,后由担任税务官的父亲养大。在帕斯卡小时候,每每看到父亲费力的计算税率税款的时候,就想帮父亲做点事情。
19岁时(1642),帕斯卡发明了人类有史以来第一台机械计算机——帕斯卡加法器。它是一种系列齿轮组成的装置,外形像一个长方盒子,用儿童玩具那种钥匙旋紧发条后才能转动,只能够做加法和减法。然而,即使只做加法,也有个“逢十进一”的进位问题。聪明的帕斯卡采用了一种小爪子式的棘轮装置。当定位齿轮朝9转动时,棘爪便逐渐升高;一旦齿轮转到0,棘爪就“咔嚓”一声跌落下来,推动十位数的齿轮前进一档。
1662年帕斯卡去世,不久后,在德国的大数学家莱布尼茨看到了帕斯卡关于加法计算机的论文,勾引起了他的发明欲。莱布尼茨早年经历坎坷,后来获得了一次去法国的机会,在巴黎的时候,他聘请了一些著名的机械专家和能工巧匠,终于在1674年制造出了一台更完美的机械计算机。
莱布尼茨发明的新型计算机约有1米长,内部安装了一系列齿轮机构,除了体积较大之外,基本原理继承于帕斯卡。不过,莱布尼茨技高一筹,他为计算机增添了一种名叫“步进轮”的装置。步进轮是一个有9个齿的长圆柱体,9个齿依次分布于圆柱表面;旁边另有个小齿轮可以沿着轴向移动,以便逐次与步进轮啮合。每当小齿轮转动一圈,步进轮可根据它与小齿轮啮合的齿数,分别转动1/10、2/10圈……,直到9/10圈,这样一来,它就能够连续重复地做加法。
连续重复的计算加减法
连续重复的计算加法是现代计算机做乘除法采用的办法,莱布尼茨的计算机加减乘除四则运算一应俱全。
在介绍莱布尼茨的时候还有一个小插曲。
传说大约在1700年左右的某天,莱布尼茨的朋友送给他一副中国的”易图“,其实就是八卦图,在看八卦图的时候,发现八卦的每一种卦象都有阴阳两种符号组成,这不就是有规律的二进制数字么,于是他就由此,率先系统提出了二进制的运算法则,直到今天,我们用到的计算机还是使用的二进制。
1.2.2 1801年:卡片时期
提花编织机是具有升降纱线的提花装置,是一种能使绸布编织出图案花纹的织布机器。
最开始编织机编织图案相当费事。所有的绸布都是用经线(纵向线)和纬线(横向线)编织而成。若要织出花样,织工们必须细心地按照预先设计的图案,在适当位置“提”起一部分经线,以便让滑梭牵引着不同颜色的纬线通过。机器当然不可能自己“想”到该在何处提线,只能靠人手“提”起一根又一根经线,不厌其烦地重复这种操作。
1725 年:法国纺织机械师鲁修发明了“穿孔纸带”的构想。鲁修想出了一个“穿孔纸带”的绝妙主意。布乔首先设法用一排编织针控制所有的经线运动,然后取来一卷纸带,根据图案打出一排排小孔,并把它压在编织针上。启动机器后,正对着小孔的编织针能穿过去钩起经线,其它则被纸带挡住不动。于是,编织针自动按照预先设计的图案去挑选经线,鲁修的“思想”“传递”给了编织机,编织图案的“程序”也就“储存”在穿孔纸带的小孔中。
1790年的时候法国机械师杰卡德,基本形成了改进提花机的构想,由于当时正是法国大革命时期,杰卡德为了参加革命,无暇顾及发明创造,直到1805年才真正完成”自动提花编织机“的制作。杰卡德为他的提花机增加了一种装置,能够同时操纵 1200 个编织针,控制图案的穿孔纸带后来换成了穿孔卡片。
何乐礼在1880年代利用打孔卡发明制表机
美国宪法规定每十年必须进行一次人口普查,1880年排山倒海的普查资料就花费了8年时间处理分析,因此美国统计学家赫尔曼·何乐礼在1890年开发出一种排序机,利用打孔卡储存资料,再由机器感测卡片,协助美国人口调查局对统计资料进行自动化制表,结果不出3年就完成户口普查工作。
何乐礼在1896年成立制表机器公司,几经并购,后来成为国际商业机器有限公司(IBM)的一部分。到了1950年,IBM的卡片已在业界与政府机构广泛使用,为了让卡片可作为证明文件重复使用,卡片上都印有“请勿折叠、卷曲或毁损”的警告字样,这行警语后来还成为后二次大战时期的流行标语。
FORTRAN程式打孔卡
直到1970年代为止,不少电脑设备仍以卡片作为处理媒介,世界各地都有科学系或工程系的大学生拿着大叠卡片到当地的电脑中心递交作业程式,一张卡片代表一行程式,然后耐心排队等著自己的程式被电脑中心的大型电脑处理、编译并执行。一旦执行完毕,就会印出附有身份识别的报表,放在电脑中心外的文件盘里。如果最后印出一大串程式语法错误之类的讯息,学生就得修改后重新再跑一次执行程序。打孔卡直到今日仍未绝迹,其特殊的尺寸(80行的长度)在世界各地仍使用在各式表格、记录和程式用途上。
1.2.3 1835到1900年代:程式化计算机
可编程化是通用计算机的重要定义,意即只要变更指令的储存序列,通用计算机就能模拟其它形式的计算机。
18世纪末,法兰西发起了一项宏大的工程——人工编制《数学用表》,由于当时没有先进的计算工具,导致这项工作极其艰巨。发足数学界调集和大批的数学家,组成人工计算的流水线,算的昏天暗地才完成了17卷大部分的书稿,即便如此,计算出的《数学用表》仍有大量错误。
据说某一天,巴贝奇和著名的天文学家赫舍尔,对两大部头的天文数学用表品头论足,翻一页就是一个错误,翻两页有好几个错误。面对错误百出的《数学用表》,巴贝奇目瞪口呆。
巴贝奇在他的自传《一个哲学家的生命历程》里写到,大约在1812年的,“有一天晚上,我坐在剑桥大学的分析学会办公室里,神志恍惚地低头看着面前打开的一张对数 表。一位会员走进屋来,瞧见我的样子,忙喊道:‘喂!你梦见什么啦?’我指着对数表回答说:‘我正在考虑这些表 也许能用机器来计算!’”
巴贝奇的第一个目标是制作一台”差分机“,
所谓“差分”的含义,是把函数表的复杂算式转化为差分运算,用简单的加法代替平方运算。那一年,刚满20岁的巴贝奇从法国人杰卡德发明的提花编织机上获得了灵感,差分机设计闪烁出了程序控制的灵光──它能够按照设计者的旨意,自动处理不同函数的计算过程。巴贝奇耗费了整整十年光阴,于1822年完成了第一台差分机,它可以处理3个不同的5位数,计算精度达到6位小数,当即就演算出好几种函数表。由于当时工业技术水平极低,第一台差分机从设计绘图到机械零件加工,都是巴贝奇亲自动手完成。当他看着自己的机器制作出准确无误的《数学用表》,高兴地对人讲:“哪怕我的机器出了故障,比如齿轮被卡住不能动,那也毫无关系。你看,每个轮子上都有数字标记,它不会欺骗任何人。”以后实际运用证明,这种机器非常适合于编制航海和天文方面的数学用表。
成功后,巴贝奇连夜上书皇家学会,要求政府资助他建造第二台运算精度为20位的大型差分机。政府看到巴贝奇的研究有利可图,破天荒地与科学家签订了第一个合同。
然而,第二台差分机在机械制造工厂里触上了“暗礁”。第二台差分机大约有25000个零件,主要零件的误差不得超过每英寸千分之一,即使用现在的加工设备和技术,要想造出这种高精度的机械也绝非易事。
由于进度缓慢 到1842年的时候,政府宣布停止对巴贝奇的一切资助,连科学界的有人都用一种怪异的目光看他。
然而在这个时候,巴贝奇收到了一封信,写信人不仅对他表示理解而且还希望与他共同工作。娟秀字体的签名表明了她不凡的身份——伯爵夫人。
收到信函不久后,写信的女士来到了巴贝奇的实验室,巴贝奇感觉与这位女士似曾相识,却有想不起在哪里见过。直到这位女士说”您还记得我吗?十多年前,您还给我讲过差分机原理。”看到巴贝奇迷惑的眼神,她又笑着补充说:“您说我像野人见到了望远镜。”巴贝奇恍然大悟,想起已经十分遥远的往事。 原来这位女士是大名鼎鼎的英国诗人拜伦之独生女——阿达·奥古斯塔。
在大型差分机进军受挫的1834年,巴贝奇提出了一个更新更大胆的设计——通用的数学计算机。巴贝奇称它为“分析机”,它能够自动解算100个变量的复杂算题,每个数字可以达25位,速度每秒1次。
巴贝奇首先为分析机构思了一种齿轮式的“存贮库”,每一齿轮可贮存10个数,总共能够储存1000个50位数。分析机的第二个部件是所谓“运算室”,其基本原理与帕斯卡的转轮相似,但他改进了进位装置,使得50位数加50位数的运算可完成于一次转轮之中。此外,巴贝奇也构思了送入和取出数据的机构、以及在“存储库”和“运算室”之间运输数据的部件。他甚至还考虑到如何使这台机器处理依条件转移的动作。一个多世纪过去后,现代电脑的结构几乎就是巴贝奇分析机的翻版,只不过它的主要部件被换成了大规模集成电路而已。仅此一说,巴贝奇就当之无愧于计算机系统设计的“开山鼻祖”。
阿达非常准确地评价道:“分析机’编织’的代数模式同杰卡德织布机编织的花叶完全一样”。于是,为分析机编制一批函数计算程序的重担,落她的肩头。阿达开天辟地第一回为计算机编出了程序,其中包括计算三角函数的程序、级数相乘程序、伯努利函数程序等等。阿达编制的这些程序,即使到了今天,电脑软件界的后辈仍然不敢轻易改动一条指令。人们公认她是世界上第一位软件工程师。众所周知,美国国防部据说是花了250亿美元和10年的光阴,把它所需要软件的全部功能混合在一种计算机语言中,希望它能成为军方数千种电脑的标准。1981年,这种语言被正式命名为ADA语言,使阿达的英名流传至今。这些都是后话。
在当时,两人为把分析机的图纸变成现实,耗尽了全部财产,搞得一贫如洗,在此期间,两人为筹措研究经费,两人还商量“下海创收”,比如制作国际象棋玩具、赛马游戏机等等。但这并没有带来什么改变,为此,阿达还两次把丈夫家中的祖传珍宝拿去当铺换钱,不过后来又被阿达的母亲赎了回来。
在经历了贫困交加和无休止的脑力劳动,阿达的身体状况急剧恶化,1852年,年仅36岁的阿达怀着对分析机美好的梦想去世了。
阿达去世后,巴贝奇又默默的独自坚持了20年,晚年的他已经不能准确发音 和有条理的表达自己的意思,但仍坚持工作。
1871年巴贝奇去世。
最终分析机没有被制造出来。巴贝奇和阿达设想的分析机超出了他们所处时代至少一个世纪。
伦敦科学博物馆在1991年成功重建巴贝奇的差分机,其间只做过一些无关紧要的修改,差分机依照巴贝奇的原样设计运作,证明他的理论完全正确。馆方使用电脑操作机床建造重要零件,以达到机工时期的制造公差,也有人认为当时的技术无法制造出如此精确的零件,因此这样算是作弊,巴贝奇的失败不仅仅归因政治与财政,他无止尽开发越来越复杂先进的计算机也是主因之一。今日电脑界将这种不断为产品添加功能因而延误发表日期或为后续工作造成瓶颈的行为称作“蔓延危机”。
1.2.4 1930到1960年代:桌上型计算器
时间到了1890年,德国侨民霍列瑞斯博士在美国做人口普查(上一次人口普查人工花了7年),人口普查需要做大量工作,如年龄、性别等用调查表做采集的项目,还要计算每个社区有多少老人、小孩,男人、女人等。霍列瑞斯博士就想用机器自动统计这些数据。几年后
他根据巴贝奇的发明和杰卡德的穿孔纸带设计了机器。结果花了6周就得出了准确的数据。
杰卡德和霍列瑞斯分别用开创了程序设计和数据处理之先河。以历史的目光审视他们的发明,正是这种程序设计和数据处理,构成了电脑“软件”的雏形。
1896年霍列瑞斯博士创办了IBM公司的前身。
到了现在,制造出来的计算机都是机械的,机械计算机向电子计算机发展的过渡时期发生的主要事件。
1906年,美国的德福雷斯特发明了电子管,为计算机的发展奠定了基础。
1907年,德福雷斯特向美国专利局申报了真空三极管(电子管)的发明专利。真空三极管可分别处于“饱和”与“截止”状态。“饱和”即从阴极到屏极的电流完全导通,相当于开关开启;“截止”即从阴极到屏极没有电流流过,相当于开关关闭。其控制速度要比艾肯的继电器快成千上万倍。
1924年,IBM——一个有划时代意义的公司成立了。
1936年,美国青年霍德华·艾肯去哈佛共度物理学博士学位,由于博士论文设计设计空间电荷传导理论,需要计算非常复杂的非线性微分方程。艾肯想发明一种机器代替人工计算,幻想有一台计算机帮他解决数学难题。三年后,艾肯在图书馆里发现了巴贝奇和阿达的论文。 博士毕业后,艾肯进入了美国海军军械局做了一名小小的海军中尉。为了实现计算机的梦想,他想到了IBM。
正好艾肯的一位老师正在IBM出资创办的“哥伦比亚大学统计局”里任职,艾肯从这位老师这里听说了IBM董事长沃森的大名。这位老师为艾肯写了一封推荐信。艾肯拿到推荐信后,准备好了一份可行性报告,就去找沃森。沃森听完了艾肯的话以后,直接给艾肯划了100W美元。
有了钱,艾肯开始了“MARK I”(马克1号)的研发。
马克1号借助电流进行运算,最关键的部件采用继电器组成,马克1号上安装了大约3000个继电器。继电器接通电路表示“1”,继电器断开则表示“0”。继电器能在大约1/100秒内接通或断开电路。
为马克1号编制计算程序的也是一位女数学家格雷斯·霍波(G.Hopper)。有一天,她在调试程序时出现了故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,霍波恢谐地把程序故障统称为“臭虫”(bug,现在表示电脑系统或程序中的一些缺陷或问题)
1944年2月,马克1号计算机在哈佛大学正式运行。从外表看,它的外壳用钢和玻璃制成,长约15米,高约2.4米,自重达到31.5吨,他可以每分钟进行200次以上的运算。可以作23位数加23位数的加法,一次仅需要0.3秒;而进行同样位数的乘法,则需要6秒多的时间。
马克1号被称为最后一台“史前”计算机——机械/电动方式。
时间向前一年,也就是1943年,此时正是二战时期,美国为了实验新式火炮,需要计算火炮的弹道表。需要进行大量计算。一张弹道表需要计算近4000条弹道,每条弹道需要计算750此乘法和更多的加减法,工作量巨大。 你可以想象这样一个场景:一发炮弹大出去,100多人用一种手摇计算机算个不停,还经常出错,费力不讨好。
当时任职宾夕法尼亚大学莫尔电机工程学院的莫希利(John Mauchly)于 1942年提出了试制第一台电子计算机的初始设想——“高速电子管计算装置的使用”,期望用电子管代替继电器以提高机器的计算速度。
美国军方得知这一设想后,拨款成立了一个以莫希利、埃克特(John Eckert)为首的研制小组。终于在1946年2月14日,世界上第二台电子计算机,世界上第一台通用计算机 (多个行业都可以使用)埃历阿克”(ENIAC,译成中文是“电子数字积分和计算机”)诞生于美国宾夕法尼亚大学。
ENIAC长30.48米,宽6米,高2.4米,占地面积约170平方米,30个操作台,重达30英吨,耗电量150千瓦,造价48万美元。它包含了17,468根真空管(电子管)7,200根晶体二极管,1,500 个中转,70,000个电阻器,10,000个电容器,1500个继电器,6000多个开关。
每秒能进行5000次加法运算(据测算,人最快的运算速度每秒仅 5次加法运算),每秒400次乘法运算,是使用继电器运转的机电式计算机的1000倍、手工计算的20万倍。。它还能进行平方和立方运算,计算正弦和余弦等三角函数的值及其它一些更复杂的运算。
以我们的眼光来看,这当然很微不足道。但这在当时可是很了不起的成就!原来需要20多分钟时间才能计算出来的一条弹道,现在只要短短的30秒!
第一台电子计算机:
阿塔纳索夫-贝瑞计算机(Atanasoff–Berry Computer,通常简称ABC计算机)在1937年设计,不可编程,仅仅设计用于求解线性方程组,并在1942年成功进行了测试。然而,这台计算机用纸卡片读写器实现的中间结果存储机制是不可靠的。而且,在发明者约翰·文森特·阿塔纳索夫因为二战任务而离开爱荷华州立大学之后,这台计算机的工作就没有继续进行下去[2]。ABC计算机开创了现代计算机的重要元素,包括二进制算术和电子开关[3]。但是因为缺乏通用性、可变性与存储程序的机制,将其与现代计算机区分开来。这台计算机在1990年被认定为IEEE里程碑之一。
阿塔纳索夫和克利福德·贝瑞的计算机工作直到1960年才被发现和广为人知,并且陷入了谁才是第一台计算机的冲突中。那时候,ENIAC普遍被认为是第一台现代意义上的计算机,但是在1973年,美国联邦地方法院注销了ENIAC的专利,并得出结论:ENIAC的发明者从阿塔纳索夫那里继承了电子数字计算机的主要构件思想。因此,ABC被认定为世界上第一台计算机。
埃历阿克虽然威力强大,但是它毕竟还很不完善,比如存在着耗电多、费用高的缺点。它的耗电量超过174千瓦,据说那些年,只要埃历阿克一开动,整个费城城市的所有灯光顿时黯然失色。那些个电子管发光又发热,平均每隔7分钟要损坏一只。虽然当初只花了军械部40万元的研制费用,可谁能料到,维护它的费用后来竟超过200万之巨!埃历阿克最致命的缺点是程序与计算两分离。指挥埃历阿克2万只电子管工作的程序指令,被存放在机器的外部电路里。需要计算某个题目前,埃克特必须分派几十员精兵强将,把数百条线路用手接通,像一群电话接线员那样手忙脚乱地忙活好几天,才能进行几分钟运算。
这时,冯·诺依曼用高超的理论和技术方法,一举攻克了巨大的难关。
在埃历阿克尚未投入运行前,冯·诺依曼就已开始着手起草一份新的设计报告,要对这台电子计算机进行脱胎换骨的改造。他把新机器的方案命名为“离散变量自动电子计算机”,英文缩写译音是“埃德瓦克”(EDVAC)。1945年6月,冯·诺依曼与戈德斯坦、勃克斯等人,为埃德瓦克方案联名发表了一篇长达101页纸洋洋万言的报告,即计算机史上著名的“101页报告”。这份报告奠定了现代电脑体系结构坚实的根基,直到今天,仍然被认为是现代电脑科学发展里程碑式的文献。报告明确规定出计算机的五大部件(输入系统、输出系统、存储器、运算器、控制器),并用二进制替代十进制运算,大大方便了机器的电路设计。埃德瓦克方案的革命意义在于“存储程序”──程序也被当作数据存进了机器内部,以便电脑能自动依次执行指令,再也不必去接通什么线路。
人们后来把根据这一方案思想设计的机器统称为“诺依曼机”。自冯·诺依曼设计的埃德瓦克始,直到今天我们用“奔腾”芯片制作的多媒体计算机为止,电脑一代又一代的“传人”,大大小小千千万万台计算机,都没能够跳出诺依曼机的掌心。在这个意义上,冯·诺依曼是当之无愧的“电脑之父”。
1.2.5 首代冯·诺伊曼结构及其机种
英国曼彻斯特科学工业博物馆的“宝贝”
第一部成功运作的冯·诺伊曼结构电脑是1948年曼彻斯特大学的小规模实验机,又称“宝贝”。随后在1949年,曼彻斯特马克一号电脑登场,功能完整,以威廉管和磁鼓作为内存媒介,并且引进变址寄存器的功能。
竞逐“第一部数字储存程式电脑”名号的还有在剑桥大学设计建造的延迟存储电子自动计算器(简称EDSAC),EDSAC比曼彻斯特的“宝贝”年轻一个年头,但是解决问题的能力不遑多让,然而实际上,启发EDSAC的就是埃尼阿克的继任者──离散变数自动电子计算机(简称EDVAC)。不像平行处理的埃尼阿克,EDVAC只使用单一的处理单元,此一设计简单好用,走在后来微型化趋势的前端,还增加了可靠的程度。近代电脑结构多取经自曼彻斯特马克一号、EDSAC和EDVAC,有些人也将其视为电脑界的“夏娃”。
欧洲大陆第一部通用型可编程化电脑是小型电子计算机(简称МЭСМ),由苏联基辅电机学会的瑟吉·亚历塞维奇·列别捷夫带领一组科学家团队所建造,МЭСМ在1950年开始运作,使用6000根真空管,25千瓦的电力,每秒可作3000次运算。其它早期电脑还有澳洲设计的科学与工业研究议会自动计算机(简称CSIRAC),在1949年作首次程式测试。
1947年,一家以饮料起家的英国餐饮公司约瑟·里昂公司,对新式的办公室管理技术产生莫大的兴趣,决定积极参与电脑的商业开发。到了1951年,里昂一号电脑起跑,执行了世上第一个办公室电脑的例行指令。
1951年6月,通用自动计算机(简称UNIVAC I)送抵美国人口调查局,这部电脑由雷明顿兰德公司制造,却常被误认为是“IBM的UNIVAC”。雷明顿兰德公司后来以每台百万美金以上的售价,卖出46部。UNIVAC是第一部量产的电脑,使用5200根真空管,125千瓦电力,所使用的水银延迟线存储器能储存11个正十位数字组1000个(72位元字组),UNIVAC不像IBM的电脑,配备有打孔卡读卡机,1930年代风行的金属磁带(即UNISERVO)导入后,结果与有些商用资料储存器件并不相容。那个年代,其它电脑都用高速的打孔带和现代的磁带作为输出输入设备。
1951年11月,约瑟·里昂公司开始每周定期在里昂一号上,运作一支糕饼评估程式,这是第一支在程式储存电脑上的商业应用程序。
1952年,IBM公开IBM 701电子资料处理器,是IBM 700/7000型系列的前锋,也是IBM的第一部大型电脑。1954年推出IBM 704,所使用的磁芯内存后来成为大型电脑的标准配备。第一套可执行的一般用途高阶编程语言FORTRAN也是在1955年到1956年间,IBM为IBM 704所开发的,并在1957年初发表。
1954年,IBM推出一款电脑体积较小,价格和善,后来广受欢迎。这款IBM 650重达900公斤,附属的电力供应器件也有1350公斤左右,两者各安置在与人等高的橱柜里。这款电脑要价50万美金,或可以每月$3500块美金的代价出租。原本其磁鼓内存只能保存2000个十位数字组,还需要晦涩难明的编程程序才能有效运作,诸如此类的内存限制在之后的十年间主宰了编程程序,直到编程模组一番革命性的改变后,软件开发才有了较人性化的转变。
1955年,莫里斯·威尔克斯发明微程式设计,将基础指令的程式内建,方便定义或延伸的工作,广泛运用在大型计算机(和其它诸如IBM 360系列的电脑)的中央处理器和浮点运算单元上。1956年,IBM首部磁盘储存器件统计控制随机存取法(简称RAMAC)面市,使用50面24英寸的金属磁盘,每面100道磁道,总容量5MB,平均每MB需花费1万美金。
第三波电脑世代来临,电脑使用度爆炸性的成长,这些全仰赖杰克·基尔比和罗伯特·诺伊斯的独立发明集成电路(或微芯片),引领英特尔的马辛·霍夫和Federico Faggin佛德里克·法金发明微处理器。在1960年代,大量的电脑技术和过去的第二波电脑世代重叠,直到1975年后期,第二波电脑世代的机器仍在持续量产,像是UNIVAC 494。
微处理器的诞生连带刺激微电脑的发展,轻便小巧,物廉价美的电脑成为个人及小公司唾手可得的工具,微电脑在1970年代初登场,到了1980年代后就已经成为家家户户都可看到的产品了。第一款流行的个人电脑据信是出自苹果电脑公司的创办人之一斯蒂夫·沃茲尼亞克,不过他的第一部电脑Apple I出现得比KIM-1和Altair 8800晚,第一部具有图形音效能力的苹果电脑也晚于Commodore PET。电脑逐渐成为微电脑架构的天下,再加上来自大型电脑的特色后,现如今已主宰大部分的电脑市场。
1.2.6 现代计算机发展时间表
第一代电子管计算机(1946~1958):
特点: 操作指令是为特定任务而编制的,每种机器有各自不同的机器语言,功能受到限制,速度也慢。另一个明显特征是使用真空电子管和磁鼓储存数据。
第二代晶体管计算机 (1956-1963):
特点: 晶体管代替了体积庞大电子管,使用磁芯存储器。体积小、速度快、功耗低、性能更稳定。还有现代计算机的一些部件:打印机、磁带、磁盘、内存、操作系统等。在这一时期出现了更高级的COBOL和FORTRAN等编程语言,使计算机编程更容易。新的职业(程序员、分析员和计算机系统专家)和整个软件产业由此诞生。
第三代集成电路计算机 (1964-1971):
特征是以中小规模集成电路,来构成计算机的主要功能部件。主存储器采用半导体存储器。运算速度可达每秒几十万次至几百万次基本运算。在软件方面,操作系统日趋完善。
第四代大规模集成电路计算机 (1971-至今):
指从1970年以后采用大规模集成电路(LSI)和超大规模集成电路(VLSI)为主要电子器件制成的计算机,重要分支是以大规模、超大规模集成电路为基础发展起来的微处理器和微型计算机。
图片来自Reistlin.Com
1.3 附录参考资料
1.3.1 百度百科:计算机
1.3.2 互动百科:计算机
1.3.3 The Crash Course
1.3.4 林海峰:计算机硬件发展史
1.3.5 R_e :电脑简史
1.3.6 jerson226 :电脑史话