0
如果我們必須從發送方接收一個數據塊(比如8位)。丟失位的錯誤校正碼
但是,轉移是不可靠的,導致丟失。 (不是位翻轉) 這意味着,塊中的任何位可以不存在,接收器只能接收7位。
我研究了一些糾錯編碼,比如'漢明碼'。但是,在這種情況下,代碼旨在恢復翻轉位,而不是丟失位。
如果我們必須從發送方接收一個數據塊(比如8位)。丟失位的錯誤校正碼
但是,轉移是不可靠的,導致丟失。 (不是位翻轉) 這意味着,塊中的任何位可以不存在,接收器只能接收7位。
我研究了一些糾錯編碼,比如'漢明碼'。但是,在這種情況下,代碼旨在恢復翻轉位,而不是丟失位。
如果您對低熵代碼感到滿意,並且您可以檢測到消息結束,則可以將每個位簡單地發送兩次。
在接收,發現所有的奇數大小的運行,並通過一個比特位擴展它們:
該代碼可以從任意數量的發生在不同的運行缺失的恢復。如果最終的結果少於預期的位數,則無法從多次刪除中恢復。
如果要確保可以恢復的固定錯誤率,請使用位填充。
實施例:
0110
encoded as:
00 11 11 00
a double error occurs:
0x 11 x1 00
received:
011100
'0' and '111' are odd-sized runs. Fix:
00111100
we have 8 bits, and have recovered from a double error.
decode:
0110
實施例2:
0101
encoded as
00110011
transmitted as
0xxx0011
received as
00011
corrected as
000011
decoded as
001
which is shorter than expected. A transmission error has occured.
實施例3(3位的運行後位填充):
0000 1111
stuffed as
00010 11101
sent as
0000001100 1111110011
你高興與(8, 4)可以修復任何單個刪除的代碼? –
,更重要的是,您能檢測到您讀取的內容少於8位,或者您在最後閱讀垃圾嗎? –