10 早期的编程方式(Early Programming)

169 阅读4分钟

10. 早期的编程方式-Early Programming_哔哩哔哩_bilibili

1. 简介

在第 10 集中,视频主要介绍了早期程序如何进入计算机及编程方式的演变。从初期的机械装置到后来的内存存储,视频详细阐述了编程方法的历史发展,以及如何从简单的硬件操作逐渐过渡到需要专业知识的编程语言。

2. 早期编程的机械装置

2.1 雅卡尔织布机

早在计算机出现之前,编程的需求已经存在。纺织制造业中的雅卡尔织布机便是早期编程的一个著名例子。织布机利用穿孔卡片控制应该织出什么样的图案。卡片上的孔决定了织线是高是低,从而形成不同的图案。通过多张卡片的排列,形成一系列指令,使得织布机能够自动完成复杂的花样织物。

2.2 美国 1890 年人口普查

穿孔卡片在1890 年美国人口普查中被用来记录数据。每张卡片上记录了一个人的种族、婚姻状况、子女数量和出生国家等信息。穿孔的位置对应了不同的答案,穿孔机通过读卡来统计对应的数据总量。

3. 从穿孔卡到可编程的计算机器

3.1 机电计算机和插线板

随着技术发展,20 世纪初的机电计算机开始具备一定的编程能力,程序员通过控制面板插入电线来传递信号和数据。然而,这种方式编程复杂且容易出错。20 世纪 20 年代,插线板变为可拔插,使得编程更加方便。

3.2 ENIAC 和通用计算机

ENIAC 是世界上第一台通用电子计算机,使用大量插线板来编程。尽管程序在纸上设计好后,物理连接 ENIAC 仍可能花费数周时间。高昂的成本和低效率促使人们寻求一种更快速、更灵活的编程方式。

4. 存储程序计算机和冯诺依曼架构

到 20 世纪 40 年代晚期和 50 年代初,电子内存开始普及,存储程序计算机应运而生。这类计算机可将程序和数据统一存储在内存中,程序更易于修改,CPU 也能快速访问。John Von Neumann 提出的冯诺依曼架构成了此类计算机的基础:包括一个包含算术逻辑单元、数据寄存器、指令寄存器和指令地址寄存器的处理单元,以及存储数据和指令的内存。

5. 穿孔卡片与程序加载

尽管电子内存的出现大大提升了计算机性能,但程序依然需要通过某种方式加载到内存中。穿孔卡片在这里继续发挥作用。到 1980 年代,几乎所有计算机都配备了穿孔卡片读取器,可以将卡片内容写入内存,并顺序加载整个程序。一些大型程序,如 1955 年美国空军的 SAGE 防空系统,需要数万张穿孔卡片存储。

6. 其他编程方式

6.1 穿孔纸带

穿孔纸带与穿孔卡片类似,但以连续的方式记录数据,广泛用于早期计算机。

6.2 面板编程

50 和 60 年代的计算机常配备巨大的控制台,满是开关和按钮,以便通过面板编程输入指令。这种方式虽然技术上可行,但效率不高且用户体验差。

早期家用计算机,如 Altair 8800,用户通过拨动面板上的开关输入程序。尽管这方式繁琐,但降低了计算机的使用成本,使计算机进入普通家庭成为可能。

7. 总结

  • 早期的编程方式从机械装置开始,例如雅卡尔织布机。
  • 穿孔卡片和穿孔纸带是早期输入程序和数据的重要方式。
  • 冯诺依曼架构的出现,使得程序和数据存储在一个内存中变得可能。
  • 20 世纪 50 年代到 80 年代,面板编程和穿孔卡片仍然广泛应用。
  • 编程逐渐发展为需要专业知识的领域,引发了对更简易编程语言的需求。