上周W君摆烂了一天其实就是为了看《三体》。
剧中叶文洁操作了一台机器,拿出了一条上面打孔的纸带,一下子勾起了W君的回忆,今天就聊聊打孔带吧。
剧中的打孔带最早是在织布机上使用的一种“编程”设备,在1725年一卷卷穿孔的纸带就被用于提花织布机。用来控制织布的时候的复杂图案。
到了有电报的时候,这种方便的介质就被打孔机和读取器所利用,用于信息的传递。这也就是电传机。
电传机使用传统的电话网络,发送代表0101的高低音信息,而5个一组的高低音信息也就成了纸带上所记录的信号。相对于当时不成熟的磁性存储,在纸带上打孔也就成了一种相当廉价且可靠的信息记录方式。记录的编码叫做“博科码”。通常以五个一行的打孔来呈现。
在每段信息发布前也有一个固定的hello握手信息,用来区分纸带上其他信息,在信息结束后还会有一系列的满孔作为结束。例如上面的这张图就是 Hello Weapons Database(你好,军武数据库)。
纸袋中间的小圆孔则是用来过齿轮的小孔,可以同步纸带的转动和行数。使机器可以更加准确的读取数据。
后来这种方式也被用于向计算机系统输入程序。在一些控制中,需要计算机往复不断的运行相同指令,于是还有这种首位被粘贴成一个环形的纸带。
它会在计算机的读取器中一直不断转动,而“环形”(Loop),也就成了计算机中“循环”的最初叫法。例如
do somethingloop就使用了纸带环在计算机上的最早用法,这算是一个有意思的历史信息了。
《三体》叶文洁所使用的纸带实际上是记录了接收机的原始输出信息,依旧是以编码的方式来显示内容。这些内容也可以作为输入,到红岸基地的转换器里获得相应的解译计算结果。
解译器缩解出来的信息内容是大家在屏幕上可以看到的信息。只不过……这里有个bug,“不要回答”在屏幕中显示出来的是拉丁字母,后面放了四位数字。这四位数字其实是区位码。是当年我们为了使用计算机处理汉字做出了一个计算机汉字编码。
这是一种前两位表示区(行)后两位数字表示位(列)的汉字编码方式。其实是94X94的一个矩阵,在其中定义来8836个区位的交叉点,每个交叉点就放上一个汉字或字符,这个表格共收录了6763个常用汉字,和682个字符。是我们较为早期的汉字编码规范。
只不过,这个规范形成标准是1980年,比叶文洁查表的时候晚了快1年的时间。所以咱们也不知道当时叶文洁是不是拿到未来的技术。
多一嘴,区位码是以两个十进制数字分别代表行和列,后来把这两个十进制数字扩展了,扩展为16进制,在这个基础上新的编码标准就是我们常说的GB2312。
十多年前游戏厅里的兑奖带[呲牙笑][呲牙笑][呲牙笑]
见过纺织机上花样,就是这么一块块纸板上打孔的[呲牙笑][呲牙笑][呲牙笑][呲牙笑]祖上给资本家打工的,纺织业[呲牙笑][呲牙笑]
各种密码
一看就是新手,你要从制表机扯起才算合格员工
编码而已,但是自解译系统别说在那个年代,就算是现代也是扯淡,不是说不可能开发出自解译而是到现在也没有真正的自解译