热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

现存最古老计算机手册重见天日,比ENIAC要先进!

点击上方“AI遇见机器学习”,选择“星标”公众号重磅干货,第一时间送达来源:Google编辑:QJP【导读】据外媒报道&#x

点击上方“AI遇见机器学习”,选择“星标”公众号

重磅干货,第一时间送达

来源:Google

编辑:QJP

【导读】据外媒报道,近日苏黎世联邦理工学院的档案管理员发现了世界上最古老的Z4数字计算机的使用手册,这使得后人可以更好的理解Z4的工作方式。

世界上现存最古老的数字计算机「Zuse Z4」一直被放置在苏黎世联邦理工学院,该校的档案管理员Evelyn Boesch的父亲Rene Boesch自1956年以来一直在该校的飞机建造学院工作,他在父亲的文件中找了「Zuse Z4」的使用手册。

现存最古老计算机Z4的使用手册被发现

 

Rauscher是P-16飞机的顾问,而Boesch则有收集历史文献的本领,Z4手册正好就在他的收藏中。

        

研究人员在Z4丢失已久的手册被找到后,将能够更深入地了解这台被认为是世界上现存最古老的(数字)计算机。

这台建造于1945年的 Z4,运行在磁带上,占据了一个房间的大部分空间来摆放,并且需要几个人来操作。这台机器现在在慕尼黑的德意志博物馆安家落户,但是它已经很久没有使用了。

               

在 Boesch 的文件中有关于Z4解决的数学问题的记录,这些问题与「P-16喷气式战斗机」的研制有关。

布鲁德尔在计算机协会(Association of Computing Machinery)的一篇博客文章中写道: 「这些计算包括火箭弹道、飞机机翼、振动和俯冲的计算」。

               

这台古老的计算机本身有相当传奇的背景故事。

据布鲁德勒说,德国土木工程师Konrad Zuse在纳粹政权时期发明了Z4,而且很可能就是手册的作者。有一次,纳粹希望祖斯把电脑转移到集中营,在那里,政府强迫劳工制造火箭弹和飞行炸弹。但他拒绝了,并且把 Z4搬到了一个偏远小镇的谷仓里等待二战结束。

 

数学家 Eduard Stiefel 后来收购了苏黎世联邦理工学院应用数学研究所的 Z4。在1960年 Z4被转移到德意志博物馆之前,它在法德圣路易斯研究所呆了几年。

 

比Z4还早的计算机--Zuse Z1

 

Zuse计算机最早系列的「Z1」是德国发明家康拉德·祖思(Konrad Zuse)1936~1938年期间在柏林建造的机械式计算机。Raul Rojas在一篇论文中对对该计算机的主要结构零件、高层架构,及其组件之间的数据交互进行了描述。

               

Z1能用浮点数进行四则运算。从穿孔带读入指令。一段程序由一系列算术运算、内存读写、输入输出的指令构成。使用机械式内存存储数据。其指令集没有实现条件分支。

        图为Z1的复制品

 

Z1的架构与祖思在1941年实现的继电器计算机Z3十分相似,它们之间仍然存在着明显的差异。

Z1和Z3都通过一系列的微指令实现各类操作,但前者用的不是旋转式开关。Z1用的是数字增量器(digital incrementer)和一套状态位,它们可以转换成作用于指数和尾数单元以及内存块的微指令。

计算机里的二进制零件有着立体的机械结构,微指令每次要在12个层片(layer)中指定一个使用。在浮点数规格化方面,没有考虑尾数为零的异常处理,直到Z3才弥补了这一点。

               

以现在的视角来看,Z1计算机中最重要的改进有如下这些:

 

基于完全的二进制架构实现内存和处理器。

 

内存与处理器分离。在复制品中,机器大约一半由内存和穿孔带读取器构成,另一半由处理器、I/O控制台和微控制单元构成。

 

可编程:从穿孔带读入8比特长的指令,指令只有8种:四则运算、内存读写、从十进制面板读入数据、将结果寄存器里的内容显示到十进制展板。

 

内存和处理器中的内部数据以浮点型表示。处理器分为两个部分:一部分处理指数,另一部分处理尾数。

参数或结果为0的特殊情况由浮点型中特殊的指数值来处理(这一点到了Z3才实现,Z1及其复制品都没有实现)。

 

CPU是微代码结构的:操作被分解成一系列微指令,一个机器周期一条微指令。

 

内存和处理器可以分别独立运行:只要穿孔带给出命令,内存就在通信接口写入或读取数据。处理器也将在执行存取操作时在通信接口写入或读取。可以关闭内存而只运行处理器,也可以关了处理器而只运行内存。

      

康拉德·祖思这么年轻就对计算机引擎给出了如此优雅的设计,而在美国,ENIAC或MARKI团队都是由经验丰富的科学家和电子专家组成的。

从架构上看,我们今天的计算机与1938年的祖思机一致,反而与1945年的ENIAC不同。直到后来的EDVAC报告草案,以及冯·诺依曼和图灵开发的位串行机中,才引进了更优雅的体系结构。

冯·诺依曼也1926~1929年间居于柏林,那些年,康拉德·祖思和冯·诺依曼或许能在不经意间相遇相知。在那疯狂席卷和黑夜笼罩德国之前,柏林本该有着许多的可能。

 

参考论文:

《The Z1: Architecture and Algorithms of Konrad Zuse’s First Computer》

欢迎关注我们,看通俗干货!



推荐阅读
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 基于事件驱动的并发编程及其消息通信机制的同步与异步、阻塞与非阻塞、IO模型的分类
    本文介绍了基于事件驱动的并发编程中的消息通信机制,包括同步和异步的概念及其区别,阻塞和非阻塞的状态,以及IO模型的分类。同步阻塞IO、同步非阻塞IO、异步阻塞IO和异步非阻塞IO等不同的IO模型被详细解释。这些概念和模型对于理解并发编程中的消息通信和IO操作具有重要意义。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
author-avatar
Vin-莹持_366
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有