通過黑白棋通信

2018-08-09 19:38 更新

思考題

魔術師和他的徒弟在臺上表演,下面有3位觀眾。魔術師蒙著眼睛。

(1)桌上隨機排列著7個黑白棋的棋子(圖3-4)。魔術師蒙著眼睛,看不到棋子。


(2)魔術師的徒弟在看完這7枚棋子之后,又往右面添了一枚棋子,與其他棋子并排,j這時則有8枚棋子(圖3-5)。魔術師依然蒙著眼睛。
(3)這時觀眾可將其中的1枚棋子翻轉,或不翻轉任何棋子(圖3-6)。

此間,徒弟和觀眾不發(fā)一言,魔術師還是蒙著眼睛,并不知道觀眾有沒有翻轉棋子。



(4)魔術師摘下眼罩,觀察8枚棋子,然后馬上就能說出“觀眾翻轉了棋子”有翻轉棋子”,識破觀眾的行為。

提示

徒弟只是放了1枚棋子,而且放棋子的動作在觀眾行動之“前”。那么,徒弟是如何向魔術師傳遞有沒有翻轉棋子的信息的呢?
魔術師和徒弟雖然沒有用語言交流,但是僅通過1枚棋子進行“交流”。我們來思考一下該“交流”方法。

思考題答案


徒弟在觀眾擺放的7枚棋子中,數(shù)出黑棋的個數(shù)。如果黑棋數(shù)是奇數(shù),就添黑棋。如果黑棋數(shù)是偶數(shù),就添白棋。不管哪種情況,在最終的8個棋子中,黑棋必為偶數(shù)個。


觀眾的行動可以是以下(1)~(3)三種情況之一。
(1)觀眾翻轉白棋。那么,黑棋就增加了1枚,即黑棋變?yōu)槠鏀?shù)個。
(2)觀眾翻轉黑祺。那么,黑祺就減少了1枚,黑祺也變?yōu)槠鏀?shù)個。
(3)觀眾不翻轉祺子。黑棋仍然是偶數(shù)個。


魔術師摘下眼罩,馬上數(shù)出黑棋的個數(shù)。如果黑棋為奇數(shù)個,就說“觀眾翻轉了棋子”。如果為偶數(shù)個,就說“沒有翻轉棋子”。

這里,徒弟擺放棋子使“黑棋個數(shù)為偶數(shù)”。若使“黑棋個數(shù)為奇數(shù)”也可以,只要魔術師和徒弟事先商量好就行。


奇偶校驗

我們將魔術師和徒弟表演的戲法想作白棋為2進制的0,黑棋為2進制的1,那么它就和計算機通信中奇偶校驗的方法是一樣的。

徒弟是發(fā)送方,魔術師是接收方。中途翻轉黑白棋的觀眾所扮演的角色就是“干擾通信的噪音(noise)”。


徒弟作為發(fā)送方放置的1個棋子,在通信領域中被稱為奇偶校驗位@31辦池)。魔術師作為接收方,通過檢查擺放的棋子的奇偶性(parity)來判斷是否因噪音發(fā)生了通信錯誤。


至于奇偶校驗位是設為偶數(shù)還是奇數(shù),那是在發(fā)送方和接收方之間的通信規(guī)則中所約定的。


奇偶校驗位將數(shù)字分為兩個集合

另外,也可以這么思考。7枚棋子的排列法總共有27=128種,其中一半(64種)是黑|棋為偶數(shù)個,另一半(64種)是黑棋為奇數(shù)個。128種組合被分為了2組。


魔術師的徒弟添加的1枚棋子,起到了標識目前7枚棋子的擺法屬于哪組的作用。有|擺放黑棋或擺放白棋兩種情況,以此來區(qū)分兩個組。
以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號