目录

  • 简介
  • 基本信息
  • 误传
  • 研发过程
    • 研发的原因
    • 时间就是胜利
    • 冯·诺依曼
    • 战争的作用
  • 发展
    • 实际发展
    • 更新发展
    • 历史澄清

简介

ENIAC,全称为Electronic Numerical Integrator And Computer,即电子数字积分计算机。ENIAC是继ABC(阿塔纳索夫-贝瑞计算机)之后的第二台电子计算机和第一台通用计算机。

它是完全的电子计算机,能够重新编程,解决各种计算问题。它于1946年2月14日在美国宣告诞生。 承担开发任务的人员由科学家约翰·冯·诺依曼和“莫尔小组”的工程师埃克特、莫希利、戈尔斯坦以及华人科学家朱传榘组成。总工程师埃克特在当时年仅25岁。

基本信息

世界上第一台现代电子数字计算机埃尼阿克(ENIAC),诞生于1946年2月14日的美国宾夕法尼亚大学,并于次日正式对外公布。

ENIAC长30.48米,宽6米,高2.4米,占地面积约170平方米,30个操作台,重达30英吨,耗电量150千瓦,造价48万美元。它包含了17,468根真空管(电子管)7,200根水晶二极管,1,500 个中转,70,000个电阻器,10,000个电容器,1500个继电器,6000多个开关,计算速度是每秒5000次加法或400次乘法,是使用继电器运转的机电式计算机的1000倍、手工计算的20万倍。

误传

曾有误传ENIAC是第一台计算机,实际上,真正的第一台电子计算机是阿塔纳索夫-贝瑞计算机(Atanasoff–Berry Computer,简称ABC计算机)。事实上ABC计算机不可编程,且非图灵完全,只能进行线性方程组的计算。它的价值是确定了一些现代计算机设计思想,如采用二进制、可重用的存储器等。所以说ENIAC是第一台通用计算机。

研发过程

研发的原因

研制电子计算机的想法产生于第二次世界大战进行期间。当时激战正酣,各国的武器装备还很差,占主要地位的战略武器就是飞机和大炮,因此研制和开发新型大炮和导弹就显得十分必要和迫切。为此美国陆军军械部在马里兰州的阿伯丁设立了“弹道研究实验室”。

美国军方要求该实验室每天为陆军炮弹部队提供6张射表以便对导弹的研制进行技术鉴定。事实上每张射表都要计算几百条弹道,而每条弹道的数学模型是一组非常复杂的非线性方程组。这些方程组是没有办法求出准确解的,因此只能用数值方法近似地进行计算。

时间就是胜利

不过即使用数值方法近似求解也不是一件容易的事!按当时的计算工具,实验室即使雇用200多名计算员加班加点工作也大约需要二个多月的时间才能算完一张射表。在“时间就是胜利”的战争年代,这么慢的速度怎么能行呢?恐怕还没等先进的武器研制出来,败局已定。

为了改变这种不利的状况,当时任职宾夕法尼亚大学莫尔电机工程学院的莫希利(John Mauchly)于 1942年提出了试制第一台电子计算机的初始设想——“高速电子管计算装置的使用”,期望用电子管代替继电器以提高机器的计算速度。

美国军方得知这一设想,马上拨款大力支持,成立了一个以莫希利、埃克特(John Eckert)为首的研制小组开始研制工作、预算经费为15万美元,这在当时是一笔巨款。

冯·诺依曼

让研制工作十分幸运的是,当时任弹道研究所顾问、正在参加美国第一颗原子弹研制工作的数学家冯·诺依曼(von Neumann,1903-1957,美籍匈牙利人)带着原子弹研制(1944年)过程中遇到的大量计算问题,在研制过程中期加入了研制小组。原本的ENIAC存在两个问题,没有存储器且它用布线接板进行控制,甚至要搭接几天,计算速度也就被这一工作抵消了。

1945年,冯·诺依曼和他的研制小组在共同讨论的基础上,发表了一个全新的“存储程序通用电子计算机方案”——EDVAC(Electronic Discrete Variable Automatic Computer)在此过程中他对计算机的许多关键性问题的解决作出了重要贡献,从而保证了计算机的顺利问世。

虽然ENIAC体积庞大,耗电惊人,运算速度不过几千次,但它比当时已有的计算机要快1000倍,而且还有按事先编好的程序自动执行算术运算、逻辑运算和存储数据的功能。ENIAC宣告了一个新时代的开始。从此科学计算的大门也被打开了。

战争的作用

但为什么世界上第一台电子计算机要退至40年代中期才得以问世呢?这里面主要是实际需要是否迫切和资金是否到位的问题。实际需要当然一直都存在,谁不想拥有一种最先进的计算工具呢?但光是需求并不能决定一切。凡研制一种新工具,总是需要先期投入大量资金(研制ENIAC时,一开始就投资15万美元,但最后的总投资高达48万美元,这在40年代可是一笔巨款!)。能为一种未问世的工具大胆出钱的总是少数。

最后还是战争使计算机的诞生成为现实。事实上各种各样的社会需求中,战争期间的需求始终是最迫切的,因为事关生死存亡。政府和军方总是出手大方,将最新的科技成果应用到诸如战略和常规武器的研制工作上,以确保己方在军事上处于领先地位。

电子计算机正是在第二次世界大战弥漫的硝烟中开始研制的。如前面所述,当时为了给美国军械试验提供准确而及时的弹道火力表,迫切需要有一种高速的计算工具。因此在美国军方的大力支持下,世界上第一台通用计算机ENIAC于1942年开始研制。参加研制工作的是以宾夕法尼亚大学莫尔电机工程学院的莫西利和埃克特为首的研制小组。

发展

实际发展

ENIAC每秒能进行5000次加法运算(据测算,人最快的运算速度每秒仅 5次加法运算),每秒400次乘法运算。它还能进行平方和立方运算,计算正弦和余弦等三角函数的值及其它一些更复杂的运算。

这在当时是很了不起的成就。原来需要20多分钟时间才能计算出来的一条弹道,现在只要短短的30秒。这可一下子缓解了当时极为严重的计算速度大大落后于实际要求的问题。

由于当时冯·诺依曼正参与原子弹的研制工作,他是带着原子弹研制过程中遇到的大量计算问题加入到计算机的研制工作中来的。因此可以说,ENIAC为世界上第一颗原子弹的诞生也出了不少力。

但即使在当时看来,ENIAC也是有不少缺点的:除了体积大,耗电多以外,由于机器运行产生的高热量使电子管很容易损坏。只要有一个电子管损坏,整台机器就不能正常运转,于是就得先从这1.8万多个电子管中找出那个损坏的,再换上新的,是非常麻烦的。

更新发展

人们当然不会满足于此的。所以自第一台计算机问世以后,越来越多的高性能计算机被研制出来。计算机已从第一代计算机发展到了第四代计算机,正在向第五代计算机、第六代计算机发展。像最初制造出来的ENIAC一样,许多高性能的计算机总是在为尖端和常规武器、特别是核武器的研制服务。

和人类发明的所有工具一样,计算机的产生也是由于实际需要方得以问世的。从18世纪以来,科学技术水平有了长足的进步。制造电子计算机所必需的逻辑电路知识和电子管技术已经在19世纪末和20世纪初出现并得以完善。因此可以说制造计算机的基础科学知识已经完备了。

历史澄清

在国内的绝大部分媒体上都会出现世界上第一台电子计算机是上世纪1946年由美国人莫克利(John Mauchly)发明的ENIAC文字记载,但另一种说法却是:世界上第一台电子计算机是由美国爱荷华州立大学的约翰· 文森特·阿塔纳索夫(John Vincent Atanasoff)教授和他的研究生克利福特·贝瑞(Clifford Berry)先生在1937年至1941年间开发的“阿塔纳索夫-贝瑞计算机(Atanasoff-Berry Computer,简称ABC)”。

而在国内的朋友们竟很少有人知道此事真相, 不少国内的作者在他们的专著、教材中,甚至科普活动中,仍然宣传ENIAC是世界上第一台计算机。因此,做为一名IT工作者有必要本着科学的精神,替前人查清事实,希望通过此文有助于纠正这个在国内知识界长期存在的重大学术误会,以正视听。

这里有计算机、电子计算机、通用电子计算机等概念,计算机的出现甚至可以追述到17世纪的加法机。(也称帕斯卡机,这是一台机械计算机)。ABC计算机是第一台电子化的计算机,非图灵完备、不可编程是其最大限制。而现代计算机的概念应等同于通用电子计算机,即图灵完备,可编程等。

经证实,世界上的第一台电子计算机应为“ABC”。1941年,“ENIAC”的发明者之一莫科里在阿坦纳索夫家借住5天,借此机会“盗取”了研究成果及想法,之后与埃克特一起制造了“ENIAC”并申请了专利,被世人称为“现代计算机之父”而阿坦纳索夫并未重视自己的重大发明“ABC”,学校也没有重视此项发明,并拆掉了“ABC”。后经过美国法院判决,推翻并吊销了莫科里的专利,“现代计算机的基本想法是来自约翰-文森特-阿坦纳索夫。事实上,阿塔纳索夫所在的爱荷华大学并没有为ABC计算机申请专利,而且打官司的也不是几位计算机设计者本人,而是两家计算机公司,Honeywell和Sperry Rand公司。

本文完。整理不易,希望大家支持。

世界第一台通用计算机:ENIAC相关推荐

  1. 世界上第一台通用计算机是多少年诞生的,世界上第一台通用计算机ENIAC是( )年诞生的。...

    摘要: 世界上第年抛弃国外优越的生活与工作条件,历尽千难万险,回归祖国的怀抱,投身到祖国的建设中的,被评为"两弹一星"的功臣而受到国家的表彰的爱国科学家是( ).配置某浓度的盐酸标 ...

  2. 现代计算机eniac的诞生,eniac诞生于哪一年(第一台电脑eniac诞生在哪国)

    人类文明从石器时代发展到信息时代,生产工具不断变化,原始的人类"茹毛饮血",求得生存就已经很不容易了,现代人的精神要求和生活水平更高,因此电脑手机这样的工具是必不可少的,世界第一台 ...

  3. 1946年第一台通用计算机被谁发明出来了,世界上第一台电脑是什么时候发明的...

    电脑相信大家都用过,各种牌子轻薄又好用的电脑,不管是工作还是玩游戏娱乐,现在很多人都离不开它.但是你知道世界上第一台电脑吗,第一代电子计算机可没有现在的方便好用,光是那重量就是现在很多人无法想象的存在 ...

  4. 【历史上的今天】2 月 14 日:第一台通用计算机面世;IBM 诞生;Julia 公开发布

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 2 月 14 日,在 1819 年的今天,打字机和第一台 QWERTY 布局键盘的发明者克里斯托弗· ...

  5. 【历史上的今天】2 月 14 日:第一台通用计算机面世;IBM 成立;Julia 公开发布

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2023 年 2 月 14 日,在 1819 年的今天,打字机和第一台 QWERTY 布局键盘的发明者克里斯托弗· ...

  6. 世界上第一台通用计算机的英语缩写,世界上第一台计算机诞生

    1946年2月14日,世界上第一台电脑ENIAC在美国宾夕法尼亚大学诞生. ENIAC一个部分的背面细节,展示出了电子管 电子数值积分计算机(英语:Electronic Numerical Integ ...

  7. 第一台通用计算机的名称,世界上第一台计算机的名称是什么

    现在很多人工作的时候都要用到电脑,比如制作幻灯片.剪辑视频.分析数据等等,这些工作都离不开电脑.那么,你知道世界上第一台计算机的名称是什么吗?接下来,让我们一起来看看民族文化的介绍吧! 你可能感兴趣: ...

  8. 世界上第一台多用途计算机是,世界上第一台电子计算机--ENIAC.doc

    文档介绍: 世界上第一台电子计算机--ENIAC 世界上第一台电子计算机叫 ENIAC (电子数字积分计算机的简称,英文全称为 Electronic Numerical Integrator pute ...

  9. 世界上第一台计算机内存容量,29、世界上第一台电子计算机ENIAC诞生于.doc

    文档介绍: 姓名:班级:电话:总得分:一.单选题,在正确的答案前打"√".(每题1分,共50分)1.世界上第一台电子计算机ENIAC诞生于().A)1946年 B) 1964年 C ...

最新文章

  1. 移动互联网下半场,iOS开发者如何“高薪”成长?
  2. spring boot 开发 提交form表单出错
  3. leetcode 521. 最长特殊序列 Ⅰ(Java)
  4. 【JS 逆向百例】网洛者反爬练习平台第六题:JS 加密,环境模拟检测
  5. Linux安装CUDA的正确姿势
  6. linux sonar 安装教程,Linux下为Sonarqube安装中文插件
  7. 计算机VFP基础知识,VFP基础教程章数据库系统基础知识4
  8. 使用J-Link打印日志——SEGGER Real-Time Transfer(RTT)工具的移植使用
  9. c4d怎么导入图片描图建模_巧用C4D的参考图学习角色人物建模(躯干)
  10. 在ubuntu kylin优麒麟中运行league of legends英雄联盟(LOL)
  11. 多态性练习:定义一个基类BaseClass,从他派生出类DerivedClass。BaseClass有成员函数 fn1(),fn2()
  12. 企业如何做好品牌推广工作?
  13. java 评论功能_博客项目实现文章评论功能(重点是评论回复)
  14. JS中的curry化(柯里化)
  15. iPhone显示返回的是html界面,iPhone X怎么回到主界面?苹果X返回主页的两种方法...
  16. Unityt涂抹擦除功能
  17. Docker Dockerfile 验证Docker内部使用jmap报错问题解决
  18. 设置屏幕色调、饱和度、亮度来保护眼睛
  19. oro什么意思_oro
  20. php7生成随机字符和随机数

热门文章

  1. 别再说你不会,规则引擎Drools了
  2. Omnipeek空口抓包(3):过滤器的设置和使用
  3. java data jpa_java中Spring data jpa通过Predicate查询时间段
  4. ISP算法介绍--------super Good
  5. depth peel_10个jQuery Page Peel插件
  6. Koomail:企业网管的好助手!
  7. Binder通信机制原理解析
  8. matlab怎么添加注释快捷键,Matlab注释技巧
  9. Python中Pickle模块的dump()方法和load()方法
  10. 一些有难度的网络流问题