吳俊杰
在之前對于二進制編碼和解碼的討論中,我們對通過傳輸并且模擬數(shù)字電報的編碼和解碼過程已經(jīng)有了初步的了解,但是這種編碼和解碼的過程都是發(fā)生在同一臺計算機上的。這意味著從嚴格意義上講,信息并沒有通過通信設(shè)備和線纜傳遞到其他物理地址。經(jīng)典的信息論將信息的傳播過程視為信源、信道和信宿三個部件之間的聯(lián)系,因此我們之前的工作雖然在計算機本機上也經(jīng)歷了編碼和解碼的過程,但從信息傳播的全過程來看,只能算是信源的準備工作。當準備工作完成之后,我們將發(fā)送的數(shù)字如先轉(zhuǎn)變?yōu)槎M制編碼信息,然后再轉(zhuǎn)化為高低不同的電壓,頻率有別的脈沖或者強弱的光線,這都是可以通過線纜傳播的信息,只有在將這些物理信號準備好,發(fā)射出去,信源的工作才算真正完成。本節(jié)我們就嘗試著用Scratch測控板來完成信源信息的發(fā)射。
在Labplus Scratch測控板軟件中,選擇編輯菜單當中的“顯示輸出模塊”,之后在動作菜單中就能夠看到輸出設(shè)備的控制選項(如圖1)。
程序可以控制對輸出設(shè)備供電的各種參數(shù),從上到下依次是:控制設(shè)備供電一段時間之后關(guān)閉,打開和關(guān)閉輸出設(shè)備的供電,設(shè)定輸出設(shè)備供電的電壓強度,設(shè)置輸出設(shè)備供電的正負極。如果輸出設(shè)備是一個馬達,我們就可以通過以上代碼控制馬達是否轉(zhuǎn)動、轉(zhuǎn)動的快慢、轉(zhuǎn)動的時間以及轉(zhuǎn)動的方向。如果輸出設(shè)備是一只燈泡,則可以控制燈泡是否亮、亮度的強弱、亮的時間。由于發(fā)光二極管是單向?qū)ǖ模敲慈绻褂幂敵隹刂?,就?yīng)該只有一個電流方向讓其發(fā)光,因此通過這些控制指令可以控制發(fā)光二極管是否發(fā)光、發(fā)光的強弱、發(fā)光的時間,但是由于單向?qū)ǖ奶匦?,關(guān)閉發(fā)光二極管的方法除了停止電壓輸出之外,還可以將輸出模式相反即通過電流反向的方法關(guān)閉這個發(fā)光二極管。
連接設(shè)備之后,點擊,我們發(fā)現(xiàn)測控板上的發(fā)光二極管的顏色由藍轉(zhuǎn)綠,代表插在USB線旁邊的耳機線的鱷魚夾上面已經(jīng)有電壓輸出。此時如果放一個馬達在鱷魚夾上,只要該馬達能夠承受5V的電壓,就能夠轉(zhuǎn)動起來(如圖2)。
經(jīng)典的信息控制理論認為信息的通信過程如圖3所示,而本案例主要解決發(fā)送變換器所做的工作,即從信源經(jīng)過信源編碼轉(zhuǎn)化為二進制之后,通過發(fā)送變換器進行信道編碼,轉(zhuǎn)化為信道可以傳播的信息形式。
信源編碼
如果要發(fā)送的是一段英文,我們可以將發(fā)送數(shù)字的4位二進制編碼形式升級一位,轉(zhuǎn)化為五位二進制編碼。最方便的形式是按照26個英文字母的順序使其和五位二進制的31個有效狀態(tài)的前26個狀態(tài)對應(yīng)起來,此外為了通訊方便,還可將英文常見的標點符號進行編碼,如下表所示。
接下來,我們需要將信源編碼完成,而后將上面的編碼表用程序代碼輸出(如圖4)。
在Scratch語言中,當代碼的長度很長時,拖動起來會很慢,因此可以使用廣播指令將一個長度為31的“如果判斷”拆分為四個部分,每個部分單獨處理。這個代碼很長,但是結(jié)構(gòu)很簡單,我們輸入一個字母,這個字母就會轉(zhuǎn)化為一個五位的字符串(如圖5)。
接下來,如果我們輸入一組字符串,則需將這一組字符串轉(zhuǎn)化為二進制字符(如圖6)。
圖7所示的是我們將“hello world”這個經(jīng)典的字符串轉(zhuǎn)化為二進制的編碼。至此,我們就完成了信源編碼的過程。
信道編碼
如果我們需要兩種有差別的輸出來體現(xiàn)出二進制中0和1的區(qū)別,如用短的聲音和長的聲音,用小的聲音和大的聲音,用不同的顏色,用發(fā)光二極管的亮的時間或者亮暗。表述這種差別,如果使用聲音作為傳輸方式,則需要選定能夠傳輸聲音的信道,如空氣。如果使用光作為傳輸方式,則需選用傳輸光的信道,如光導(dǎo)纖維。
如果我們用最簡單的方式來傳輸這組二進制信息,可以使用兩種不同的聲音來表達這段二進制字符串,可以制成一種類似打擊樂的信道編碼(如圖8)。
你此時甚至可以伴隨著有規(guī)律的鼓聲起舞,但這只是開始,如果我們使用發(fā)光二極管的亮滅來表示這種信息(如圖9)。為了標準化這個過程,可以使用廣播指令控制各種輸出方式同時輸出。
這樣我們會驚喜地看到燈伴隨著音樂在同步的傳輸出信源編碼的結(jié)果,這就完成了信道編碼的過程。此時你可能會迫不及待地想把自己的英文名字轉(zhuǎn)化成光影和節(jié)奏。
至此,我們通過一個簡單的案例描述了信源編碼和信道編碼的過程,英文文本信息轉(zhuǎn)換為聲音和發(fā)光二極管的亮暗,通過信道傳輸,在傳輸?shù)倪^程中有可能會碰到噪聲干擾,影響到信宿的接收,但是我們看到信息在節(jié)奏和光影中流轉(zhuǎn)已然是一個美麗的開始了。endprint