如果能帮我们做算术的东西就能称得上是计算机的话,古代的算盘应该也称得上是一种计算机,不过它完全是手动的。
在17世纪到20世纪的几百年间,曾经出现过一批不带电的计算机,这些计算机里面没有电路板,只有一堆机械齿轮。
17世纪法国有一位“全能超人”帕斯卡,他是数学家、物理学家,也是哲学家、流体动力学家,还是概率论的创始人之一。帕斯卡造出了一个内部装着一堆齿轮的盒子,只要旋紧发条,它就可以转起来。不过,这个“第一台机械式计算机”只能进行简单的加减运算,其水平大概只相当于幼儿园小朋友。
后来,德国数学家莱布尼茨制造出了一台可以进行加减乘除运算的机械式计算机,它的计算能力达到了小学生的水平。英国数学家巴贝奇在19世纪20年代制造出的差分机,则会计算一些数学函数。虽然巴贝奇梦想着制造出一台功能更齐全的第二代差分机,但他最后并没有成功。
后来人们意识到,如果只使用机械齿轮进行计算,计算能力是极其有限的,要想让计算机拥有更强的计算能力,只有另辟蹊径。于是,电子计算机应运而生。依靠电力来工作比依靠齿轮工作速度更快,因此电子计算机有更强的计算能力。在第二次世界大战期间,战场上飞机、炮弹的飞行轨迹需要大量复杂的计算来获取,这让电子计算机有了一展身手的机会。以世界上第一台大型自动数字计算机“马克1号”为例,它可以储存72组数据,每组数据有23位小数。进行加法运算一次需300毫秒,乘法运算一次需6秒,除法运算一次需153秒,尽管现在看起来这个速度比较慢,但是它实现了计算技术历史性的突破,帮助人们完成了大量计算任务。
那么,电子计算机的发明者是谁呢?也有好几种答案。1936年英国数学家图灵首先提出了一种以程序和输入数据相互作用产生输出的计算机构想,后人将这种机器命名为通用图灵机。1938年出现了首台采用继电器进行工作的计算机“z-1”,但继电器有机械结构,不完全是电子器材。1942年阿坦那索夫和贝利发明了首台采用真空管的计算机,以他们俩名字的首字母命名为abc。不过abc只能求解线性方程组,不能干其他的工作。在图灵指导下,第一台可以编写程序执行不同任务的计算机“科洛萨斯”在1943年诞生于英国,用于密码破译。
而公认的人类历史上第一台现代电子计算机是1946年在美国宾夕法尼亚大学诞生的eniac。尽管它比前面提到的那些机器晚诞生了一段时间,但它拥有了今天计算机的主要结构和功能,是通用计算机,并且是第一台与通用图灵机等效的计算机。
它是一个庞然大物,由17468个电子管、6万个电阻器、1万个电容器和6千个开关组成;占地170平方米,重达30吨,耗电功率约150千瓦,每秒钟可进行5000次运算,这在现在看来微不足道,但在当时却是破天荒的。eniac以电子管作为元器件,所以又被称为电子管计算机,是计算机的第一代。电子管计算机由于使用的电子管体积很大,耗电量大,易发热,因而工作的时间不能太长。
好在如今的德国有技术优势,晶体管技术已经日渐成熟,开始应用在了很多设备中。因此这时空的第一台计算机是以晶体管为主,电子管为辅的电子产品。
原时空的从20 世纪50 年代起,晶体管开始逐渐替代真空电子管,并最终实现了集成电路和微处理器的大批量生产。
起初,晶体管和晶体管化的设备并不受欢迎,因为它太贵了。但是美军高层很感兴趣,因为军用设备对便携性、可靠性和耐用性有着特殊的要求。在50 年代的大部分时间里,正是军高层的支持才让年轻的晶体管产业生存下来。
1957 年,苏联卫星“斯普尼克”上天,正式掀起了美苏太空竞赛的序幕。1961 年,美国肯尼迪总统宣布“在1970 年以前把人送到月球上”。与苏联相比,美国的火箭技术略微落后一些,所以减轻重量就更有必要了,所有的电子设备都尽可能地是用晶体管。以晶体管为基础的半导体产业也因此而突飞猛进。集成电路成为了这个时期的主角。
有趣的是同一时期的苏联军用电子设备却走了一条截然不同的路,在很长一段时期内仍然对真空管情有独钟。由于延续二战中对武器装备简单、成熟、可靠,便于生产的研制思路,苏联认为真空管技术成熟,易于做出大功率元件,所以把主要精力都集中在真空管的小型化上,在模拟电路和数字电路的选择中,苏联专家同样认为模拟电路更成熟,更适合真空管的工作特性,所以大力发展以运算放大器为核心的模拟电路。
赫鲁晓夫也曾经表示“真空电子管在核电磁脉冲下的生存性能比晶体管要强,苏联以后不要搞晶体管,集中力量搞电子管小型化。”由于政策原因,苏联的半导体工业一直落后与西方,生产出的晶体管质量迟迟不过关,最终形成了恶性循环,越来越形成对真空管的依赖。
到了20世纪70年代中期,苏联工程人员终于发现,真空管小型化的路已经走到尽头,如果再使真空管的体积减小一个数量级,其耗费将是天文数字。而此时西方国家研制的集成电路,可在05平方厘米的硅片上集成14万个晶体管。苏联用十年时间证明了电子管小型化方面无法和晶体管集成电路相比。进入80年代,苏联的电子工业开始奋起直追,在解体前已能够生产中规模集成电路,接近西方80年代初期的水平。
第三百九十五章 计算机(2)
“感谢诸位为帝国做出的贡献,诸位的成就可以说是打开了第三次工业革命的大门。”第一次工业革命是蒸汽技术革命,第二次工业革命是电力技术革命,第三次工业革命是计算机及信息技术革命。
雅尼克来到51区的计算机研发部门,与众人一一握手,并亲自给四个负责人颁发代表着国家最高荣誉的帝国勋章。这四人分别是冯诺依曼,克康拉德楚泽,图灵,汤米费劳尔斯。雅尼克原本是打算把美国的摩彻利和埃卡特基拉拢过来,可惜俩人不识相;俩人便在几年前一次湖中钓鱼时不慎溺水身亡。
冯诺依曼和图灵不用多说;康拉德楚泽后世被誉为数字计算机之父,他发明的计算机便是著名的z系列计算机。
20世纪30年代,康拉德楚泽在汉希飞机制造厂任结构设计工程师,同时攻读土木工程的学位。由于工程计算量的逐年增大,他有意于设计和制造适合工程计算的功能强大的计算机。经过长期的探索研究和锲而不舍的努力,他发明了一系列以“z”命名的自动计算机,并依靠它们来处理复杂的工程计算问题。
为了使机器的效率更高,楚泽甚至设计了一种编程语言nkalkuel,这一成果使楚泽跻身于计算机语言先驱者行列。
而汤米费劳尔斯是可与冯诺依曼相媲美的英国计算机专家。
前文提过eniac是世界第一台电子计算机,而英国也有一台自称世界第一台电子计算机的“科洛萨斯”,而且它比eniac早两年面世。
不过eniac计算机的管子数是“科洛萨斯”的近十倍;“科洛萨斯”非通用,一般认为是用来对付德国统帅部战略加密系统的解密,而eniac有通用计算特点;12台“科洛萨斯”中在战后被立即销毁了10台,其余两台在六几年也灭了,一张图纸也没留下;而eniac则通达天下。
虽如此“科洛萨斯”确实为战争出过不少的贡献。
“洛仑兹密码机”是二战后期包括小胡子在内的德军高级将领之间通信用的主要加密机,破译经它加密过的密码难度非常大。小胡子至死都认为“洛仑兹密码机”是不可战胜的。英国人研制“科洛萨斯”计算机的主要目的是破译经“洛仑兹密码机”加密过的密码。使用其他手段破译这种密码需要6至8个星期,而使用‘科洛萨斯’计算机则仅需6至8小时,因而自它投入使用后,德军大量高级军事机密很快被破译,盟军如虎添翼。
“科洛萨斯”计算机研制工作的负责人便是汤米费劳尔斯博士;几年前他也被雅尼克“拐”到了德国,为德国效力。
除了勋章之外他们还能受领以阿尔伯特博士的名义设立了科学类奖金。
四人激动的心情更是无语言表,冯诺依曼博士激动的有些哽咽道。“这多亏殿下的英明领导。”他这话倒不是单纯的奉承,在计算机研发期间雅尼克根据后世的知识帮他们解决了不少难题,他们是打心底对雅尼克佩服的。
这就是穿越者的,只要把后世那些最浅显的拿出来,就是一个个的新创意,而且,绝对是正确的,优胜劣汰,那些错误的早就消失在历史的长河里。
颁奖仪式结束后几位负责人便为雅尼克演示第一台计算机的运作。
因为这时空的第一台计算机是以晶体管为主,电子管为辅的,因此体积上比原时空的第一台计算机小得多,占地也不过20平方米。
“开机!”随着冯诺依曼博士下达命令,旁边的助手按下电源按钮。
“嗡!”机器发出一阵低沉的轰鸣声,启动开来。
“一号稳定器,运行正常,供电稳定!”
“二号稳定器,电压非常稳定,没有任何变化……”
图灵等几位负责人亲自操作这台机器,时不时交流仪表上的数值。
原时空第一台计算机eniac包括控制部分、高速存储部分、运算部分和输入输出部分,采用十进制,运算部件能通过直接计数而不是用逻辑电路进行加、减、乘、除等四则运算和开平方运算,其累加器则具有加法运算和存储i力能。输出采用ib的穿孔卡片机,每分钟能输入125张卡片,输出100张卡片。输入输出可以重叠并具有缓冲能力。eniac中还有只读存储器ro、累加器和程序面板一起实现程序控制,通过改变面板插接线改变程序。eniac中的基本电路包括“门”(逻辑与)、缓冲器(逻辑或)和触发器,这些都是后来计算机的标准元件。除了没有存储程序的功能以外,它几乎体现或包括了现代计算机的一切主要概念和成分。eniac主频100 khz,加法时间0.2 s。
eniac延生后,冯诺依曼提出了重大的改进理论,主要有两点;其一是电子计算机应该以二进制为运算基础;其二是电子计算机应釆用“存储程序”的方式工作,并且进一步明确指出了整个计算机的结构应由五个部分组成;运算器、控制器、存储器、输入装置和输出装置,冯诺依曼的这些理论的提出,解决了计算机的运算自动化的问题和速度配合问题,对后来计算机的发展起到决定性的作用。直至后世,绝大部分的计算机还是釆用冯诺依曼方式工作。
虽然雅尼克不是程序员,但也写过“hello rld”之类的再简单不过的代码,对于编程的原理还是有一定了解的。
所谓编程就是告诉计算机做什么。计算机本质上是一大堆或开或关的小型电子开关。编程原理就是通过设置这些开关的不同组合,使计算机做一些事情。编程语言计算机使用一种只包含1和0的简单语言,其中1表示“开”,0表示“关”。尝试用计算机自己的语言与其交谈就好像尝试用摩尔斯电报码与朋友交谈一样。编程语言相当于您和计算机之间的翻译。
雅尼克将编程的原理讲给这些人听,不愧是这方面的专家,几人很快就理解了其中之意,研究出了相应的汇编语言。
第三百九十六章 计算机(3)
经过各方面的努力,如今德国的第一代计算机在性能上直逼原时空的第二代晶体管计算机;提前出现的高级汇编语言令计算机的逻辑运算能力更加强大,可靠性大大提高,运算速度提高到每秒十几万次。
看完这款计算机的演示后雅尼克满意的点点头,吩咐道。“一台送去情报部门,从今以后敌人的密码对我们来说是透明的。”
密码从诞生的那天起,就受到了使用者的严加保护为了确保密码的安全,人们绞尽脑汁,可谓是机关算尽,同时因为密码中拥有很多重要的军事机密,所以对于间谍来说密码就是最好的情报,甚至费尽心机。
根据史料记载,密码最早产生于希腊,进入到16世纪以后,世界各国之间互相设立常驻使节成为了一种制度,外交人员经常传递所获取的各种情报,因为在密码和密码通道之间有了长足的发展,最简单的就是书信往来的密码辨识,在战争中密码也被广泛的使用。战争史上,因为不重视使用密码或密码被敌方破译而招致作战失败的例子数不胜数。
第一次世界大战期间的1914年8月17日深夜,驻守在马林堡地区的德军无线电台报务员的耳机中突然响起了清晰的嘀达——达的电报声。经翻译,这是俄军发出的一份明码电报,内容是俄军沙门索罗夫集团军的行动计划,以及和另一个集团军之间相互协同的战役企图。起初德军并不敢相信这么重要的军事机密会用明码发出,但经过仔细的侦察核实,证明这个情报是真实的。