645 三段式编码
作者:星辰玖    更新:2022-05-29 09:14
  电报编码貌似是很神秘个东西,很多战斗中好像都是电报编码被人破译,然后,便输了。
  其实,那些都是无线电报被人破译后暴露了作战计划,导致战败。
  因为无线电波在一定范围内谁都能收到。
  有线电报其实不存在这个问题,人家只要找不到你的通讯线, 并且对接上去,就接收不到信号。
  当然,这会儿这个问题都不用考虑。
  因为这会儿还没有哪个国家知道电是什么东西,更没人知道电报是什么玩意。
  所以,这会儿编码可以用最简单明了的方式来,只要自己人能弄明白就行了,其他人根本不用管。
  那么,最简单的编码方式是怎么样的呢?
  最简单的编码自然就是二进制编码, 0代表十进制的零,1代表十进制的一,10代表十进制的二,11代表十进制的三,以此类推。
  那么这个编码在电报中又有什么用呢?
  如果光有编码,自然是没有用的,编码还得有相对应的字才行。
  比如,编码1对应你字,编码10对应我字,编码11对应他字。
  这么简单的编码,泰昌细细解释了一遍,方以智还是有点不明白。
  没办法,他这是第一次接触这什么进制什么编码什么的,以前他甚至连十进制是什么意思都不知道呢,怎么可能一下就明白二进制编码。
  这个怎么跟人家解释呢?
  泰昌仔细想了想,干脆命人取来纸笔,给方以智列了个编码表。
  这个编码表很简单, 总共就十六个数字,相对应的也就十六个字。
  0000, 代表十进制的零,对应人字。
  0001,代表十进制的一,对应你字。
  0010,代表十进制的二,对应我字。
  0011,代表十进制的三,对应他字。
  0100,代表十进制的四,对应来字。
  0101,代表十进制的五,对应去字。
  0110,代表十进制的六,对应进字。
  0111,代表十进制的七,对应退字。
  1000,代表十进制的八, 对应上字。
  1001, 代表十进制的九, 对应下字。
  1010,代表十进制的十,对应敌字。
  1011,代表十进制的十一,对应马字。
  1100,代表十进制的十二,对应打字。
  1101,代表十进制的十三,对应围字。
  1110,代表十进制的十四,对应追字。
  1111,代表十进制的十五,对应了字。
  其实,如果光是编码,他根本不用写中间这些,二进制编码代表十进制多少,跟电报的编码并没有多大关系,他只需直接写出编码对应的字就行了。
  不过,为了让方以智明白二进制编码的含义,他还是把中间这段加上去了。
  方以智结果泰昌写好的编码表细细一看,果然露出一丝恍然之色。
  他大致明白这二进制编码与十进制数字的关系了,但后面这些对应的字他却不是很明白。
  这后面对应这些字是什么意思呢?
  他细细看了好一阵,这才小心的问道:“皇上,后面对应的这些字有什么用?”
  泰昌无奈的解释道:“这就是电报发送的内容啊,你把字翻译成编码,通过电报机发给对方,对方接收了电报编码再反过来来翻译成字,就知道电报是什么意思了。”
  呃,这个。
  方以智闻言,又沉思起来。
  看样子,他还是不懂。
  泰昌想了想,干脆提笔写下一段编码。
  1010,0000,0100,1111,1011,1000,1101,1000,0101,1100。
  他写完便把手中的笔递给方以智,随即指着上面的编码表道:“这是朕根据想要发送的字翻译成的编码,你对着上面的编码表,查查,这些编码对应的字,写下来。”
  好吧,这个还是很简单的。
  方以智立马接过毛笔,一个一个把对应的字写到了编码下面。
  1010敌,0000人,0100来,1111了,1011马,1000上,1101围,1000上,0101去,1100打。
  敌人来了,马上围上去,打!
  他写完之后立马就明白了。
  原来,这编码表是这么个意思。
  原来,这电报机就是这么发送讯息的!
  泰昌见他一副恍然大悟的样子,不由略带得意道:“怎么样,现在明白了吧?”
  明白了,明白了。
  方以智连连点了点头,突然间又愣住了。
  紧接着,他又陷入沉思中。
  泰昌见状,不由好奇道:“怎么了?”
  方以智指着编码表琢磨道:“皇上,这才十六个字啊,我们要准确无误的传送讯息,少说也要上千字的编码吧?
  后面的字怎么编码呢,一千个字的编码恐怕得十位以上吧?
  我们连续发这么十余个零和一,中间很有可能会出问题啊!”
  这的确是个大问题。
  一次发送一段四位二进制码,可能还不会出什么问题。
  如果一次发送一段十多位的二进制码,那很有可能会出问题,因为没有就代表零啊,如果中间稍微停顿一下,别人就会误会,多加进去一个零!
  这个怎么办呢?
  泰昌想了想,随即提笔在纸上写了八个1,然后细细算了算。
  这一算,他眉头不由皱了起来,11111111才二百五十五啊!
  也就是说,方以智估摸的一点都没错,要给上千个字编码,最少得十位以上。
  看样子用通和不通来代表1和0不保险,那么,到底怎么办呢?
  他看了看发送信号的开关,又看了看接收信号的铃铛,突然间灵机一动。
  对了,还有一种方式,点一下和按着不松手!
  点一下就代表0,长按一秒或者三秒就代表1,这样就不容易出错了。
  而且,为了保险起见,还可以将长编码分成几段发送。
  想到这里,他果断道:“要不这样,我们改一下,把点一下开关当做0,把摁着开关一个或者三个眨眼时间不松手当做是1。
  然后,我们再把一个编码分成三段发送,每一段都是四位,这样,三段加起来就是十二位了,足以编码数千个字了。”
  呃,这样改一下代码方式再分三段传送好像是不会出问题了。
  问题就是,这一段一段的怎么分呢?
  方以智想了想,又问道:“皇上,我们这三段怎么分,中间停多久呢,毕竟两边没法说话,对面也不知道你这到底是一个编码的分段还是下一个编码的开始。”
  这个,看样子还得有个辅助的东西才行。
  泰昌扫视了一圈,不由灵机一动。
  他指着一旁桌上的沙漏道:“我们做一批一弹指的沙漏,事先约定好,每一段编码中间间隔的时间就是一弹指,发完一短编码就把沙漏翻过来,等沙漏计时结束了再继续下一段。如果中间间隔超过一弹指时间,那就是下一个编码了。”
  一弹指大约是五秒钟时间,发送电报的时候,停五秒钟已经算是不短的时间了,这样应该就不会出现误判了。
  这办法的确不错。
  方以智想了想,又建议道:“皇上,不若这样,我们约定好,双方在发送或者接收完一段四个编码之后同时把沙漏翻转过来,沙漏计时结束之前发送的就算是下一段编码,沙漏计时结束之后发送的就算是下一个编码。”
  聪明!
  这样应该就不会有任何错误了。
  只需把编码表列出来,然后好好操练一番,就可以尝试远距离通讯了。
  想到这里,泰昌不由点头赞赏道:“很好,就这么办,你赶紧把所有字的编码表编出来,同时让工部做一批一弹指的沙漏,我们就可以试试京城到通州之间的远距离通讯了。”
  这就是后世有名的三段式编码雏形。
  当然,这个后世已经不是泰昌脑海里的后世了,而是大明一统的后世。