美文网首页C/C++学习交流
计算机刚诞生的时候,程序员用纸条来编程?

计算机刚诞生的时候,程序员用纸条来编程?

作者: 工程狮一图 | 来源:发表于2019-05-06 20:01 被阅读2次

    Joyce Wheeler 是首批使用的 EDSAC 的科学家之一

    我们大家都记得自己用过的第一台电脑。Joyce Wheeler 也不例外。但是她的情况略有不同,她是第一批使用电脑的人。

    EDSAC 由英国剑桥大学莫里斯·威尔克斯(Maurice Wilkes)和他的团队受冯·诺伊曼的《First Draft of a Report on the EDVAC》的启发,以EDVAC为蓝本,设计和建造 EDSAC,1949年5月6日正式运行,是世界上第一台实际运行的存储程序式电子计算机。所有现代电脑的鼻祖之一。

    EDSAC使用了约3000个真空管,排在12个柜架上,占地5×4米,功率消耗12Kw。

    EDSAC 使用水银延迟线作存储器,分布在32个槽中,每个槽5英尺长,里面包含32个内存位置,共1024个位置。建造时只实现了一半,512个字,第二组于1952年添加.[3] 1952年增加一个磁带存储,但实际使用中不能良好工作。

    使用的穿孔纸带

    输入采用5路的穿孔纸带,使用电子纸带读入机,速度为每秒

    6·2/3 个字符,1949年10月改进为每秒16字符,1950年使用光电阅读器,达到50字符每秒。输出使用电传打字机,速度6·2/3

    字符每秒,1951年添加一个16字符每秒的纸带打孔机。另外,EDSAC可以外接阴极射线管(CRT),可以用来观察寄存器的值。

    Joyce Wheeler 就是这批科学家之一。当时,她正在著名天文学家 Fred Hoyle 的指导下攻读博士学位。

    EDSAC 帮助 Wheeler 博士研究恒星燃烧的过程

    EDSAC 帮助 Wheeler 博士研究恒星燃烧的过程

    手工完成这些计算是不可能的。

    “手工计算不可能精确无误,”她说,“错误非常多。”

    通过 Maurice Wilkes 发明的机器 EDSAC,可以准确的完成计算,这是 Wheeler 为了获得高级学位要做的。

    思考时期

    首先,她必须学会编写计算程序。

    Wheeler 博士于 1954 年在剑桥大学开始攻读博士学位的时候了解到 EDSAC,这缘于在早期的访问中这台机器曾公开展示过。

    因为热衷于自己的研究,她坐下来翻开一本描述如何编程的小册子,通过手册上的练习学会了编程。

    像 Joyce Wheeler 一样的研究生只能在晚上使用 EDSAC

    The little book was called WWG after its three authors Maurice Wilkes, David Wheeler and Stanley Gill.

    那本小册子被称为 WWG,名字取自它的三位作者 Maurice Wilkes、David Wheeler 和 Stanley Gill 的头字母。

    编程的基础是由 EDSAC 的创造者制定的

    “我发现我每天的编程工作不能超过一定的时间,”她说,“之后你就不会有太大的进展。”

    她说,编程问题的解决方案经常会在她从事一些更平凡的事情时被想出来,比如洗衣服或吃午饭。

    “有时候,不要太过执迷于某件事,学会停下来,对于编程也是一样。”

    夜间工作

    编程结束后,她可以让 EDSAC 做数字运算。作为一个研究生,她不得不在晚上运行她的程序。她一般选择在星期五的晚上。

    “那很好,因为第二天没有课。”她说。

    作为一个操作员,只要签字并提供操作记录,她就可以单独运行 EDSAC。

    “很多时候,它会在夜间崩溃,也许有时你会很幸运可以让它运行一整夜,”她说,“如果它真的崩溃了,那么操作员就需要尝试修复它。”

    “他们甚至不让任何清洁工靠近它。”她说。

    Wheeler 博士已经用一个程序重新调整了 EDSAC 的两个字节的内存,如果这样做没有用,那么她的工作就要暂停一晚上了。

    尽管经常死机,但是关于不同恒星消亡的时间, Wheeler 已经取得了一些成绩。

    国家计算机博物馆陈放的 EDSAC 复制品

    ““我已经得到了关于恒星寿命的一些估值,”她说,“编程带来的好处之一是你可以重复计算,迭代。手工是无法做到这一点的。”

    “我们可以在程序中添加样本数字,并且可以很容易地检查它们,”她补充说,“我可以很快地检查机器上的结果,这非常有用。”

    在 20 世纪 50 年代,“很快”意味着机器执行一次程序需要 30 分钟。然后将结果打印出来,让研究人员仔细查看他们得到的结果。然后需要重新编程,也许要等好几天的时间才可以在 EDSAC 上运行一个稍作修改的程序。

    尽管等待的时间漫长,但可以肯定的是, Wheeler 博士他们都是先行者。

    “我们正在做的工作,不能使用任何其他方式。”她说。尽管按照现代的标准来看,EDSAC 很粗糙并且速度很慢,但是她已经看到一个革命悄然来临。

    “很显然,有一天,当机器越来越快,许多问题将迎刃而解。”

    在宇宙间,一个技术文明等级的重要标志,是它能够控制和使用的微观维度。对于基本粒子的一线使用,从我们那些长毛裸体的祖先在山洞中生起篝火时就开始了,对化学反应的控制,就是在一维层次上操控微观粒子。当然,这种控制也是从低级到高级,从篝火到后来的蒸汽机,再到后来的发电机;现在,人类对微观粒子一维控制的水平已达到了顶峰,有了计算机,也有了你们的纳米材料。但这一切,都局限于对微观维度的一维控制,在宇宙间一个更高级的文明看来,篝火和计算机、纳米材料等等是没有本质区别的,同属于一个层次,这也是他们仍将人类看成虫子的原因。

    ——三体

    学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习C/C++或者为了入行、转行学习C/C++的伙伴可以私信回复小编“学习”领取全套免费C/C++学习资料、视频

    译者:伯乐在线/叙帝利

    相关文章

      网友评论

        本文标题:计算机刚诞生的时候,程序员用纸条来编程?

        本文链接:https://www.haomeiwen.com/subject/vcxjoqtx.html