1951 年,CSIRAC——澳大利亚第一台可编程数字计算机——完成了一项音乐壮举,这比英国记录到的第一例计算机音乐早了几个月。虽然这台机器是一个原始的、占据整个房间的系统,每秒只能运行 1,000 个周期,但它被用来在澳大利亚第一次计算会议上为国际观众演奏《Bogey 上校》等流行曲。

硬件限制与“鸣笛器”

CSIRAC 是一台串行计算机,一次传递一个数字位,与现代 32 位或 64 位系统的并行处理形成鲜明对比。它拥有非常有限的内存——大约 2KB 的 RAM 和 3KB 的磁盘内存——且缺乏现代显示器,而是依靠打孔纸带进行输出。

房间里 CSIRAC 计算机系统的全景
CSIRAC,澳大利亚第一台可编程数字计算机,安置在一个大房间里。csiropedia.csiro.au

这张图片展示了文章中描述的 CSIRAC 系统的物理规模和硬件。

唯一的熟悉输出设备是一个被称为“鸣笛器”(hooter)的扬声器。通常,程序员使用鸣笛器产生“爆鸣声”——即程序结束时发出的短促声音,以表示完成。为了将这种调试信号转化为音乐,系统必须克服其内存组件的物理特性。

“因此,CSIRAC 是世界上第一台能够演奏音乐的计算机。”

— How Australia played the world’s first music on a computer

克服汞内存计时问题

该计算机的内存由汞声延迟线组成,脉冲通过汞管传输并循环。由于每次内存访问所需的时间不同,将原始脉冲发送到扬声器通常会导致随机的、非音乐的噪音,而不是稳定的音高。

拥有完美音高的数学家 Geoff Hill 通过计算所需的时间来解决这个问题,以确保脉冲以规则的间隔到达扬声器。通过掌握这些时间变化,尽管机器的时钟频率仅为每秒 1,000 个周期,他仍能够编写出音阶的音符。

1952 年 Geoff Hill 和 Trevor Pearcey 与 CSIRAC Mk1 计算机站在一起
1952 年程序员 Geoff Hill 和 Trevor Pearcey 与 CSIRAC Mk1 计算机在一起。www.pearcey.org.au

这张图片描绘了编写第一首计算机音乐的数学家 Geoff Hill 与 CSIRAC 机器在一起的场景。

遗产与重建

尽管 CSIRAC 完成了这一“客厅把戏”,但由于 CSIRO 将重心转向气象科学和初级生产,音乐在当时并未被录制。因此,最初的计算机音乐直到现代努力重建脉冲形状和软件后才被听见。

墨尔本大学的一个团队最近利用原始打孔纸带和重建的电子管硬件准确地重新生成了这些音乐。这个项目让公众终于能够听到 CSIRAC 在 70 多年前演奏的曲目,例如《友谊不死》和《洛蒙德湖的优美岸边》。