IBM 80 列打孔卡纸编码

来自GSXAB的知识库

请注意,这个条目所介绍的术语没有标准称呼。仅仅是为了便于描述建立条目取了一个名字。

这一编码诞生于打孔卡计算机时代,是 IBM 在早期计算机系统中使用的一种字符编码。这一涉及字母与符号的标准随着 1928 年 IBM 打孔卡诞生。

字符库特征

作为早期计算机,只使用数字、一套大写拉丁字母以及部分必要字符,实际编码的字符极少。

码位分配特征

由于 80 列打孔卡为 80 列× 12 行,其中 12 行分别被标记为 12 (或 Y)、 11 、 0 、 1~9 ,如果一列只有一个 0~9 的孔,则代表对应数字,否则 1~9 中有一个孔, 12、11、0 中有一个孔,就会映射到 26 个大写字母和斜杠 / (打孔为 0 + 1 ,夹在 R 和 S 之间),共计 27 个码位。此外还用仅 12、11 打一个孔然后 0~9 部分不打孔支持了负号/连字符 - 、 and 号 & 这两个经常出现在数字和名称中的字符。

对于其他特殊字符,打孔卡中使用 12、11、0 中至多一个孔, 2~7 中打一个孔, 8 打孔的更复杂编码,本文不列出。

码位表

摘自[1]

    _______________________________________________
   / &-0123456789ABCDEFGHIJKLMNOPQR/STUVWXYZ
12|  x           xxxxxxxxx
11|   x                   xxxxxxxxx
 0|    x                           xxxxxxxxx
 1|     x        x        x        x
 2|      x        x        x        x
 3|       x        x        x        x
 4|        x        x        x        x
 5|         x        x        x        x
 6|          x        x        x        x
 7|           x        x        x        x
 8|            x        x        x        x
 9|             x        x        x        x
  |________________________________________________

其中每列是一个字符, x 代表这个字符要在指定位置打孔。

参考资料