关键词:莫尔学院(Moore School),阿伯丁试验场(Aberdeen Proving Ground), 雷明顿兰德公司(Remington Rand Corporation), IBM院士(IBM Fellow)

这三位人物都是绝对的计算机先驱人物,催生了世界第一台通用电子计算机ENIAC的诞生。

先来说哥尔斯廷,在很多讲述冯诺依曼计算机体系结构历史的文章里,都会提到1944年夏天冯在火车站和美国弹道实验室的军方负责人哥尔斯廷的相遇。在这次相遇后,冯在哥尔斯廷的引见下来到了莫尔学院,在那里又见到了这个项目的负责人莫奇利和埃克特。哥尔斯廷的角色为”军方负责人”,但实际上他还是一位数学家,并且也完整地参与了ENIAC的研发工作。
莫奇利和埃克特是ENIAC的发明者,他们构思了这台机器,并且将构思付诸于工程,带领研发人员制造了ENIAC.

大学

哥尔斯廷于1933年毕业于芝加哥大学数学专业,1934年获得硕士学位,最终在1936年26岁时获得博士学位。
1942年,美国加入二战,29岁的哥尔斯廷参战入伍并被派往位于马里兰州的阿伯丁试验场的弹道研究实验室担任军械数学家,负责计算火炮射击表。

1937年,18岁的埃克特进入宾夕法尼亚大学的金融学院学习商业,但随后他就转到了同一所大学下的莫尔学院学习电气工程学,因为他从小就对电气有浓厚的兴趣,经常有自己的小发明。
1941年,22岁时埃克特拿到了电气工程学学士学位,并留校继续读研究生,在这一年他参与了由美国军方发起,由莫尔学院授课的组织国防训练课程,他教授电气工程的知识。

1925年, 18岁的莫奇利进入约翰霍普金斯大学学习工程学,不久后他转到了物理系,并在1932年获得物理学博士学位;1941年34岁时,被聘任为宾夕法尼亚大学电气工程学的讲师,并在两年后的1943年被晋升为电气工程学的助理教授。

莫尔学院聚首

1941年,22岁的埃克特参与了由美国军方发起,由莫尔学院授课的组织国防训练课程,他教授电气工程的知识;
1941年,34岁的来自宾夕法尼亚州乌尔辛纳斯学院的物理系主任莫奇利参加了这个课程的学习;
二人就此结识,莫奇利提出了研制高速电子计算机的设想,埃克特凭借自己电气工程学的丰富经验,极力赞成这个设想。莫奇利在这个课程结束后也被聘任为宾夕法尼亚大学电气工程学的讲师。至此,莫奇利和埃克特汇聚在了莫尔学院。

莫尔学院与美国陆军军械部有着不同寻常的关系,承担着为设立在马里兰州的阿伯丁试验基地弹道研究实验室培养人才和计算弹道的任务。
1942年,29岁的哥尔斯廷应征入伍,被派往阿伯丁试验场的弹道研究实验室担任军械数学家,负责计算火炮射击表,并且他还作为弹道研究实验室和莫尔学院的联络官。

计算一张射击表涉及到的数学运算非常大,而对应某种型号的火炮需要编制很多张的射击表,所涉及到的计算量巨大,对于传统人力无法完成。于是弹道研究实验室的联络官哥尔斯廷希望莫尔学院能够为阿拉丁试验场研制能够快速运算的机器。埃克特向哥尔斯廷引荐了莫奇利。

莫奇利起草了一份研制电子计算机的报告:“The Use of High-Speed Vacuum Tube Devices for Calculating”,得到哥尔斯廷的认可,之后埃克特又对这个报告进行了细化补充。军队舍得花巨资来支持这个项目,于是项目最终立项。

ENIAC的诞生

1943年,军械部决定采纳莫奇利和埃克特的高速计算机研制方案,决定投资40万美元建造这台电子计算机,这就是ENIAC(Electronic Numerical Integrator and Computer),作为一个保密项目,当时代号为”Project PX”.
莫尔学院组织了50名技术人员投入项目,任命埃克特为总工程师,莫奇利为顾问。
1946年2月15日,ENIAC正式被公布研发成功,它将计算一个弹道需要的传统计算的20个小时缩短到了30秒,取得了巨大的成功。

哥尔斯廷

莫奇利和埃克特

团队解散

1944年夏天哥尔斯廷和冯诺依曼相遇后,冯进入了ENIAC的研发小组担任顾问,那是的冯名气很大,ENIAC研发小组欣然欢迎。

团队解散首先是由”First Draft of a Report on the EDVAC”的署名问题引起,在https://en.wikipedia.org/wiki/First_Draft_of_a_Report_on_the_EDVAC里的描述,是说冯诺依曼在和ENIAC研发小组讨论,回到普林斯顿后经过总结,写出了这个”First Draft”, 之后把手写版的报告寄回了宾夕法尼亚,哥尔斯廷在拿到手写版的报告后,将报告打印并复制,打印版报告上的日期被署为1945年6月30日。在6月25日,哥尔斯廷将24分打印版的报告发给了和ENIAC紧密相关的个人,之后此报告在外界开始被广为传送。然而这个打印版的报告的署名只有冯诺依曼一个人。关于为何只有冯一个人的名字,有各种解释版本……

单独署名问题自然引起了莫奇利和埃克特的不满,而在1946年3月莫尔学院决定修改学院的专利政策,以便能够在任何计算机研发中获得商业利益,这自然引起了莫奇利和埃克特的强烈不满,他们决定辞职,和他们一起辞职的包括大部分当时ENIAC的研发人员。

莫尔课程

虽然莫奇利和埃克特辞职了,但他们之前和莫尔学院签署了在莫尔学院讲授计算机设计的课程,于是历史上著名的计算机课程”数字计算机的理论和技术设计(The Moore School Lectures)”从1946年7月8日开课,到1946年8月31日结课,埃克特讲了11节课,莫奇利和哥尔斯廷分别讲了6节课。参加课程学习的人员既有陆军海军的代表,也有来自麻省理工,剑桥,哥伦比亚,哈佛等大学的人,还有美国国家标准局等机构,再有就是商业机构比如IBM,贝尔实验室等。
此次课程的播种,为计算机行业的雨后春笋般的蓬勃发展打下了基础。

各自发展

1947年莫奇利和埃克特成立了实际上第一家计算机公司,Eckert-Mauchly Computer Corporation,他们的员工也大多来自INIAC项目的研发成员。他们为美国政府机构开发了更加先进的计算机,比如UNIVAC, BINAC。但由于两位计算机先驱不擅长公司经营,最后公司面临财务问题。但以他们在计算机界的顶顶大名,很多公司愿意收购他们,最终被雷明顿兰德公司收购。

之后莫奇利又自己创建了公司并经营;而埃克特则一直留在兰德公司工作,并做到了很高的职位。

哥尔斯廷则是在IBM工作,于1969年被授予IBM院士头衔。他还写了三本关于计算机历史的书,其中在”The Computer from Pascal to von Neumann”中, 哥尔斯廷对冯诺依曼在现代计算机历史上的关键作用的提出了质疑。

莫奇利于1980年1月8日去世,享年73岁。
埃克特于1995年6月3日死于白血病,享年76岁。
哥尔斯廷则2004年6月16日去世,在去世前曾长期挣扎在帕金森病的折磨,享年91岁。

附录(不完整,待完善)

早期计算机

哥尔斯廷(Herman Heine Goldstine)生平

  • 1913年9月13日出生于美国芝加哥,犹太人;
  • 1933年毕业于芝加哥大学数学专业,1934年获得硕士学位,1936年获得博士学位;
  • 1936-1939的三年内,担任美国数学家吉尔伯特的研究助理;
  • 1939年开始了在密歇根大学的教学生涯;
  • 1941年和 Adele Katz结婚, Adele Katz是ENIAC的程序员;
  • 1942年,美国加入二战,他参战入伍并被派往位于马里兰州的阿伯丁试验场的弹道研究实验室担任军械数学家,负责计算火炮射击表。火炮射击表是根据火炮自身
  • 2004年6月16日去世,在去世前曾长期挣扎在帕金森病的折磨下。

莫奇利(John William Mauchly)生平

  • 1907年8月30日生于美国俄亥俄州的辛辛那提
  • 1925年, 进入约翰霍普金斯大学学习工程学,不久后他转到了物理系,并在1932年获得物理学博士学位
  • 1932年-1933年, 在约翰霍普金斯大学担任研究助理
  • 1933年, 26岁时开始了在位于宾夕法尼亚州的乌尔辛纳斯学院的教学生涯,被任命为物理系主任
  • 1941年, 34岁时,被聘任为宾夕法尼亚大学电气工程学的讲师,并在两年后的1943年被晋升为电气工程学的助理教授
  • 1946年,39岁时,离开莫尔学院
  • 1948年,41岁时和第二任妻子Kathleen Kay McNulty (1921-2006)结婚,Kathleen是最初的ENIAC程序员六人组的一员
  • 从1973年直到1980年去世,他一直担任Sperry UNIVAC的顾问
  • 1980年1月8日去世,享年73岁。

埃克特(J. Presper Eckert)生平

  • 1919年4月9日生于美国费城,小时候就对电气方面有浓厚的兴趣,并且有自己的小发明
  • 1937年,进入宾夕法尼亚大学的金融学院学习商业,但随后他就转到了同一所大学下的莫尔学院学习电器工程学
  • 1941年,22岁时拿到了电气工程学学士学位,并留校。
  • 在这一年他参与了由美国军方发起,由莫尔学院授课的组织国防训练课程,他教授电气工程的知识
  • 1946年3月,27岁时离开莫尔学院

参考:
https://en.wikipedia.org/wiki/Herman_Goldstine
https://en.wikipedia.org/wiki/John_Mauchly
https://en.wikipedia.org/wiki/J._Presper_Eckert
https://en.wikipedia.org/wiki/First_Draft_of_a_Report_on_the_EDVAC

计算机人物系列-Mauchly,Eckert,Goldstine的更多相关文章

  1. Index-技术学习系列博客

    计算机理论基础系列 B树的插入操作 前端系列 安装nodejs和webpack环境 构建vue项目 Json Web Token VO和DO转换(一) 工具汇总 缓存的实现和使用 框架学习系列 shi ...

  2. 计算机&编程语言发展史

    计算机&编程语言发展史 编辑于2020-11-18 计算机的基本组成 计算机的发展经历了哪几代? 第一代 电子管计算机 第二代 晶体管计算机 第三代 集成电路计算机 第四代 大规模和超大规模集 ...

  3. 学习之路~sqh

    推荐博客 Edison Chou: Vamei: 算法∙面试专题 - 简书: 设计模式 极速理解设计模式系列[目录索引]- Caleung: Net设计模式 - 灵动生活: 宅男程序员给老婆的计算机课 ...

  4. EnglishLeaning

    今天看了些hadoop官方reference感觉自己词汇量和语法真是又回到解放前了.于是,痛下决心要好好学习英语.找到了一些学习的方法,自己记录下来,也和大家一起借鉴 努力目标: 掌握大量的计算机英语 ...

  5. IT书籍的选择与阅读

    拍摄是一件艰苦而有趣的事情. 它需要眼睛和心灵完全融合投入, 需要耐心等待排除干扰, 需要敏捷捕捉稍纵即逝的瞬间. 但是, 非艰苦不成乐趣. 人生也应该选择一件有难度的事情来做. 做不成, 可以收获过 ...

  6. 李洪强iOS开发之零基础学习iOS开发】【02-C语言】01-概述

    前面已经给大家介绍了iOS开发相关的一些基础知识,其实iOS开发就是开发iPhone\iPad上的软件,而要想开发一款软件,首先要学习程序设计语言.iOS开发需要学习的主要程序设计语言有:C语言.C+ ...

  7. HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端

    协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...

  8. 移动端目标识别(2)——使用TENSORFLOW LITE将TENSORFLOW模型部署到移动端(SSD)之TF Lite Developer Guide

    TF Lite开发人员指南 目录: 1 选择一个模型 使用一个预训练模型 使用自己的数据集重新训练inception-V3,MovileNet 训练自己的模型 2 转换模型格式 转换tf.GraphD ...

  9. 借鉴 学习 DELPHI 通用函数 哈哈

    [转]关于Delphi通用涵数 http://m.blog.csdn.net/blog/dragonjiang5460/1196927 2006-9-8阅读2016 评论0 DELPHI程序注册码设计 ...

随机推荐

  1. solr_架构案例【京东站内搜索】(附程序源代码)

    注意事项:首先要保证部署solr服务的Tomcat容器和检索solr服务中数据的Tomcat容器,它们的端口号不能发生冲突,否则web程序是不可能运行起来的. 一:solr服务的端口号.我这里的sol ...

  2. angular实现统一的消息服务

    后台API返回的消息怎么显示更优雅,怎么处理才更简洁?看看这个效果怎么样? 自定义指令和服务实现 自定义指令和服务实现消息自动显示在页面的顶部,3秒之后消失 1. 显示消息 这种显示消息的方式是不是有 ...

  3. logstash file输入,无输出原因与解决办法

    1.现象 很多同学在用logstash input 为file的时候,经常会出现如下问题:配置文件无误,logstash有时一直停留在等待输入的界面 2.解释 logstash作为日志分析的管道,在实 ...

  4. [APUE]标准IO库(上)

    一.流和FILE对象 系统IO都是针对文件描述符,当打开一个文件时,即返回一个文件描述符,然后用该文件描述符来进行下面的操作,而对于标准IO库,它们的操作则是围绕流(stream)进行的. 当打开一个 ...

  5. java 利用ManagementFactory获取jvm,os的一些信息--转

    原文地址:http://blog.csdn.net/dream_broken/article/details/49759043 想了解下某个Java项目的运行时jvm的情况,可以使用一些监控工具,比如 ...

  6. PHP之用户验证和标签推荐的简单使用

    本篇主要是讲解一些最简单的验证知识 效果图 bookmark_fns.php <?php require_once('output_fns.php'); require_once('db_fns ...

  7. 开发者的利器:Docker 理解与使用

    困扰写代码的机器难免会被我们安装上各种各样的开发工具.语言运行环境和引用库等一大堆的东西,长久以来不仅机器乱七八糟,而且有些相同的软件还有可能会安装不同的版本,这样又会导致一个项目正常运行了,却不小心 ...

  8. 【SAP业务模式】之ICS(四):组织单元的配置

    SAP的ICS业务后台配置主要有以下几个配置点: 1.组织单元的配置(公司代码.销售组织.工厂.采购组织等): 2.主数据的部分: 3.订单和开票的定价过程: 4.开票输出类型: 5.公司间发票的配置 ...

  9. iOS - 模态Model视图跳转和Push视图跳转的混合需求实现原理

    在研发中总会遇到一些莫名的需求,本着存在即合理的态度跟大家分享一下"模态Model视图跳转和Push视图跳转的需求实现",本文仅仅传授研发技术不传授产品以及UE的思想,请大家合理对 ...

  10. ECharts数据图表系统? 5分钟上手!

    目录: 前言 简介 方法一:模块化单文件引入(推荐) 方法二:标签式单文件引入 [前言] 最近在捣鼓各种插件各种框架,发现这个ECharts还是比较不错的,文档也挺全的,还是中文的,给大家推荐一下. ...