Skip to main content
QUICK REVIEW

[论文解读] The Z1: Architecture and Algorithms of Konrad Zuse's First Computer

Raúl Rojas|arXiv (Cornell University)|Jun 7, 2014
History of Computing Technologies参考文献 5被引用 6
一句话总结

本文首次对康拉德·楚泽的Z1——世界上第一台二进制机械计算机(1936–1938年)——进行了全面的架构与算法分析。文章详细阐述了该机器的三维机械设计、二进制浮点数运算、基于微指令的控制逻辑以及存储系统,揭示了其如何通过穿孔纸带程序执行算术运算,且不支持条件分支,同时突出了其与后期Z3之间的关键差异,例如未设置针对规范化浮点数的异常处理电路。

ABSTRACT

This paper provides the first comprehensive description of the Z1, the mechanical computer built by the German inventor Konrad Zuse in Berlin from 1936 to 1938. The paper describes the main structural elements of the machine, the high-level architecture, and the dataflow between components. The computer could execute the four basic arithmetic operations using binary floating-point numbers. Instructions were read from punched tape. A program consisted of a sequence of arithmetical operations, intermixed with memory store and load instructions, interrupted possibly by input and output operations. Numbers were stored in a mechanical memory. The machine did not include conditional branching in the instruction set. While the architecture of the Z1 is similar to the relay computer Zuse finished in 1941 (the Z3) there are some significant differences. The Z1 implements operations as sequences of microinstructions, as in the Z3, but does not use rotary switches as micro-steppers. The Z1 uses a digital counter and a set of conditions which trigger microinstructions for the exponent and mantissa units, as well as for the memory blocks. Microinstructions select one out of 12 layers in a machine with a 3D mechanical structure of binary mechanical elements. The exception circuits for mantissa zero, necessary for normalized floating-point, were lacking; they were first implemented in the Z3. The information for this article was extracted from careful study of the blueprints drawn by Zuse for the reconstruction of the Z1 for the German Technology Museum in Berlin, from some letters, and from sketches in notebooks. Although the machine has been in exhibition since 1989 (non-operational), no detailed high-level description of the machine's architecture had been available. This paper fills that gap.

研究动机与目标

  • 为1936至1938年间康拉德·楚泽研制的开创性机械计算机Z1提供首次高层次的架构描述。
  • 基于原始蓝图和文献资料,重建并解释Z1的数据通路、控制逻辑与机械结构。
  • 阐明Z1与后期Z3之间的差异,尤其在微指令控制与浮点数处理方面的区别。
  • 记录Z1缺乏针对规范化浮点数的条件分支与异常处理电路,而这些功能在Z3中后来被加入。
  • 填补计算史上的关键空白,提供一份基于证据的详尽记述,针对一台非运行状态但具有历史意义的机器。

提出的方法

  • 分析康拉德·楚泽在柏林德国技术博物馆重建Z1时所依据的原始蓝图、信件及笔记本草图。
  • 对Z1的三维机械架构进行逆向工程,重点研究二进制机械元件及其相互连接方式。
  • 识别控制指数与尾数单元的微指令序列,利用数字计数器与基于条件的触发器实现。
  • 映射指令集,包括算术、加载、存储及I/O操作,这些操作通过穿孔纸带输入执行。
  • 考察机械存储系统及其在存储二进制浮点数中的作用。
  • 比较Z1与Z3的控制逻辑,特别关注Z1缺乏旋转开关,而采用分层机械部件实现微指令选择。

实验结果

研究问题

  • RQ1Z1的机械架构如何被设计以支持二进制算术与浮点数计算?
  • RQ2Z1中控制微指令执行的机制是什么?其与Z3的方法有何不同?
  • RQ3为何Z1缺乏针对规范化浮点数的异常处理电路?这对计算可靠性产生了何种影响?
  • RQ4Z1如何通过穿孔纸带与机械部件实现程序的编码与执行?
  • RQ5Z1与后期Z3之间的关键架构差异是什么,特别是在指令执行与控制逻辑方面?

主要发现

  • Z1采用12层三维机械结构实现微指令选择,依赖数字计数器与条件检测,而非旋转开关。
  • 算术运算通过针对指数与尾数单元的微指令序列执行,指令集中不包含条件分支。
  • 该机器通过机械存储系统存储二进制浮点数,其格式要求规范化,但缺乏对尾数为零情况的异常处理。
  • Z1缺乏对尾数为零的异常处理电路——该功能首次在Z3中实现——是其浮点数运算中的关键局限。
  • 尽管自1989年起Z1已无法运行,但其设计已通过原始文档完整重建,使本研究得以首次提供该机器的高层次架构描述。
  • 本文确立Z1的微指令架构虽较Z3更为简单,但已奠定后期电子计算机的基础原则。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。