電報編碼貌似是很神秘個東西,很多戰鬥中好像都是電報編碼被人破譯,然後,便輸了。
其實,那些都是無線電報被人破譯後暴露了作戰計劃,導緻戰敗。
因爲無線電波在一定範圍内誰都能收到。
有線電報其實不存在這個問題,人家隻要找不到你的通訊線,并且對接上去,就接收不到信号。
當然,這會兒這個問題都不用考慮。
因爲這會兒還沒有哪個國家知道電是什麽東西,更沒人知道電報是什麽玩意。
所以,這會兒編碼可以用最簡單明了的方式來,隻要自己人能弄明白就行了,其他人根本不用管。
那麽,最簡單的編碼方式是怎麽樣的呢?
最簡單的編碼自然就是二進制編碼,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。
然後,我們再把一個編碼分成三段發送,每一段都是四位,這樣,三段加起來就是十二位了,足以編碼數千個字了。”
呃,這樣改一下代碼方式再分三段傳送好像是不會出問題了。
問題就是,這一段一段的怎麽分呢?
方以智想了想,又問道:“皇上,我們這三段怎麽分,中間停多久呢,畢竟兩邊沒法說話,對面也不知道你這到底是一個編碼的分段還是下一個編碼的開始。”
這個,看樣子還得有個輔助的東西才行。
泰昌掃視了一圈,不由靈機一動。
他指着一旁桌上的沙漏道:“我們做一批一彈指的沙漏,事先約定好,每一段編碼中間間隔的時間就是一彈指,發完一短編碼就把沙漏翻過來,等沙漏計時結束了再繼續下一段。如果中間間隔超過一彈指時間,那就是下一個編碼了。”
一彈指大約是五秒鍾時間,發送電報的時候,停五秒鍾已經算是不短的時間了,這樣應該就不會出現誤判了。
這辦法的确不錯。
方以智想了想,又建議道:“皇上,不若這樣,我們約定好,雙方在發送或者接收完一段四個編碼之後同時把沙漏翻轉過來,沙漏計時結束之前發送的就算是下一段編碼,沙漏計時結束之後發送的就算是下一個編碼。”
聰明!
這樣應該就不會有任何錯誤了。
隻需把編碼表列出來,然後好好操練一番,就可以嘗試遠距離通訊了。
想到這裏,泰昌不由點頭贊賞道:“很好,就這麽辦,你趕緊把所有字的編碼表編出來,同時讓工部做一批一彈指的沙漏,我們就可以試試京城到通州之間的遠距離通訊了。”
這就是後世有名的三段式編碼雛形。
當然,這個後世已經不是泰昌腦海裏的後世了,而是大明一統的後世。
(本章完)