什么是打孔卡?2025年2月5日 | 阅读7分钟 打孔卡(也称为“punched cards”)是带有手工或机器打孔的纸卡,用于表示计算机数据和指令。Pluck卡有时也被称为Hollerith卡或IBM卡。它们曾是人们将数据输入第一台计算机的主要方法。卡片被插入连接到计算机的读卡器中,读卡器将卡片上的孔转换为机器语言或数字数据。 这些卡片曾是存储数据的初始方法,例如选举中投票的总数。此外,当与其他卡片组合时,它们能够存储程序。例如,早期的计算机程序员会手工设计程序,并使用打孔卡机将其转换为多张打孔卡。然后,程序员会将卡片堆带到计算机上,并使用读卡器输入软件。图中展示了一位女士使用打孔卡机制作打孔卡的例子。 在最早期、最简陋的计算系统中,打孔卡被输入到内存或数据存储容量很小的庞大计算机中。曾经,这些庞大的计算机通常被称为巨大的铁机器。使用打孔卡技术的设备的一个例子是著名的图灵计算机,由当时的计算机技术先驱艾伦·图灵开发。 ![]() 随着更先进的数据存储形式的出现,打孔卡技术迅速过时,这主要是由于其明显的设计缺陷。值得注意的是,现代存储介质上记录的最小数据单元通常与打孔卡使用的数据单元不符。打孔卡使用单个字符,主要由字母和数字组成,卡上的每个孔都表示选择了单个字符,这与当今普遍存在的二进制数据形成对比。 打孔卡已演变成重要的历史遗物,类似于20世纪后期出现的巨型机和超级计算机。 打孔卡是一种简单的纸板,上面有战略性地放置的小孔,以便计算机或其他设备可以读取数据。它是计算机编程早期阶段的遗留物,在今天使用的许多数据存储进步之前就被使用了。 打孔卡的别名有:punched cards、IBM cards 和 Hollerith cards。 历史早在 **1725** 年,就使用打孔卡来控制纺织织机。例如,在19世纪,**约瑟夫·玛丽·雅卡尔** 利用打孔卡和雅卡尔织机编织了一幅丝绸自画像。之后,在 **1832** 年,**谢苗·科尔萨科夫** 使用打孔卡存储和搜索信息。随后,赫尔曼·何乐礼在1890年发明了一种技术,使机器能够为美国人口普查记录和存储打孔卡数据。后来,他创立了今天所知的IBM公司。 ![]() 打孔卡:它是什么?打孔卡最初是输入和输出计算机数据的主要媒介。它们经常被称为Hollerith卡或穿孔带数据存储卡。这些是长方形的硬纸板,上面被打孔以表示不同尺寸的各种命令和字符。每张卡上的孔都匹配80列文本数据。在1990年代图形用户界面(GUI)操作系统开发之前,大多数计算机系统都使用打孔卡作为其主要数据输入机制。 打孔卡数据如何编码?打孔卡在80列中存储数据,每列有两行40个字符,使用二进制编码。每行有一个字节,即0或1。两比特(或两个打孔)组成一列,可以表示四种不同的值:00、01、10和11分别表示没有孔、有孔、没有孔。通过计算每列的组合数量并进行排序,可以识别卡片上出现的精确字符。 打孔卡起到了什么作用?打孔卡主要用于方便数据的存储和检索。这在过去尤其重要,因为当时的计算机并不总是像现在这样连接到网络。任何五金店都会提供简单的设备,如机械打孔机或读卡器,可以轻松地在打孔卡上记录或读取数据。此外,个人打孔卡可以按主题手动分类,如果需要,也可以按字母顺序排序。 计算机如何使用打孔卡?在那个时代,打孔卡主要被用作一种快速有效的方法,可以将大量的计算机程序存储在内存中以供计算机使用。随后,这些编码的程序可以直接加载到计算机中进行处理,无需事先将程序加载到磁带或磁盘上。打孔卡读卡器通过在卡片上刻写特定序列,可以轻松快捷地创建复杂的算法,而无需在终端界面中逐个输入大量的字母指令。 在打孔卡的背景下使用了哪些编程语言?打孔卡与多种计算机语言兼容,例如 **Pascal** 和 **FORTRAN**,这些语言至今仍在被使用。随后,**PL/I、ALGOL** 和 **COBOL** 也经历了渐进的实现过程。与当时的磁带或磁盘等替代存储介质相比,打孔卡成本较低,并且格式易于阅读,因此也常被用于简单的数据输入和处理操作。 为什么要放弃使用打孔卡编写计算机程序?打孔卡数据输入曾经在计算机中非常普遍。然而,由于其固有的局限性和效率低下,它们在现代计算机技术中已经过时。打孔卡的数据存储容量有限,任何错误都需要重复打孔过程。打孔卡机的操作成本也很高,而且速度很慢。随着技术的发展,发明了更有效的数据输入和存储系统,如磁带和磁盘驱动器。由于这些发展使得更大的存储容量和更快的处理速度成为可能,打孔卡在当前的计算领域变得过时了。 打孔卡使用了多久?即使在赫尔曼·何乐礼因在1880年生产打孔卡并获得美国人口普查局使用它们进行数据制表而获得认可之前,打孔卡的概念已经存在了几十年。然而,打孔卡在1950年代被积极地用于计算机编程,部分原因是对何乐礼发现的解读。这些卡片非常适合计算机应用,直到1990年代图形用户界面(GUI)系统的出现。 描述一张“chuck card”一种被称为“**chuck card**”的打孔卡主要在20世纪50年代和60年代使用,当时它被用作一种类似于“插线板”的机械设备,可以通过孔插入电线来物理控制电气电路,其组合和排列由更有经验的用户创建,他们希望在每次想要基于给定的参数(通过硬件或后来通过软件输入)产生结果时,能够更灵活地控制系统,而不必每次都编写指令。随着计算机技术随时间推移而进步,它将人类带入了更多的发展、演变、文化对相互联系的理解、解放等等的实现。然后,chuck card会被放入插线板的每个插槽中,每个插槽代表一个不同的命令,当供电时,该命令就可以执行。 打孔卡还在使用吗?不,打孔卡在当今环境中不再以任何有意义的方式使用。这是因为现在的计算机功能强大且效率高,大多数任务都可以更快、更有效地完成,例如软件应用程序可以在现代机器上快速准确地从内存中运行复杂的算法,而无需费力地手动处理堆叠的带有孔的纸张来完成每项数据任务。事实上,打孔卡可能仍然存在于某个地方,但现代技术已经使它们变得无用。 打孔卡是如何过时的?磁带是第一种逐渐取代打孔卡的存储形式。在这个阶段,卡带转换机(类似于穿孔带使用的机器)作为将数据从打孔卡传输到磁带的一种方式而广受欢迎。 打孔卡编码过程是怎样的?与今天相比,当时的编码效率更高。在最后一年,打孔卡学生会参加一个实验,他们会学习FORTRAN课程。每段程序都有三次执行机会。我们对系统在仅两次尝试中就完成了大部分25个程序的能力感到惊讶,这就像点击了三次“运行”按钮。随后,第三次尝试可用于探索其他选项或改进结果的格式。在指定的编码页面上彻底实现程序的第一个迭代。 打印第一次运行的输出;编译错误将显而易见。将其带回家,使用打印件手动运行,而不是立即尝试修复。随后,仔细找出打印件中存在的任何错误,并进行必要的修改。一次只挑选一张有错误的卡片,直到它被放回正确的列。随后,修正卡片上显示的错误。下次请将其带回计算机中心。 在试验期间,我们不得不操作一台机器进行纠正。一旦两张卡片按指示放置,就按下复制按钮将其移动到正确的列。当自动机器发生拥堵时,我们经常不得不通过弯曲手指在手动Hollerith编码机上手动打孔。机器看起来是这样的,只是为了增加混乱,它只显示数字而不是这张照片中描绘的字母。 下一主题安装 VMware |
我们请求您订阅我们的新闻通讯以获取最新更新。