| 信息 | 生成碼 | 信息 | 生成碼 | 信息 | 生成三 | 信息 | 生成碼 |
| 0000 0001 0010 0011 | 00000000 00010111 00101101 00111010 | 0100 0101 0110 0111 | 01001110 01011001 01100011 01110100 | 1000 1001 1010 1011 | 10001011 10011100 10100110 10110001 | 1100 1001 1110 1111 | 11000101 10011100 11101000 11111111 |
2.2 譯碼方法
用查詢法對(8,4)碼進行譯碼,需要建造有256個值的查詢表。按照譯碼編寫查詢表。先定出擴展?jié)h明碼的校驗矩陣,實際上就是將原校驗矩陣H1擴展,記為H1,

對于作一8位的接收碼矢量R,進行RH1 T運算,得到一個4位的伴隨矢量,再按如下步驟比較確定原信息。
(1)如果伴隨式矢量是全0矢量,接收碼是正確的,碼的前(低)4位就是信息。
(2)如果伴隨矢量的最后一位是1,則有一位錯,可糾正。將伴隨矢量與矩 陣H1的每一列相比較,找出相同的那一列,記下列號,再將接收碼與該列號相對應(yīng)的那一位變號(1變0,0變1),得到的碼就是糾正后的原碼,信息取碼的前(低)4位。
(3)否則,是一位以上的錯碼且不能糾正。
將一個字節(jié)可能出現(xiàn)的所有0~255個可能值值都按上面的譯碼步驟做一遍得到查詢表,留作譯碼用。另外譯碼和編碼還可以對整個信息字節(jié)作一字節(jié)的垂直校驗以增強校驗能力。
上述檢驗方式已在江蘇、寧夏、福建等地的實際工作中得到了驗證。CRC校驗雖不具備糾錯功能但有很高的檢錯率,應(yīng)用面也很廣。其中,直接模2除法CRC方式因編程簡單、占用程序空間少(不用查詢表),適合于數(shù)據(jù)通信量不大且程序及內(nèi)存空間有限的場合,反之可選用快速CRC方式。在對數(shù)據(jù)完整性要求高的場合,可根據(jù)具體情況考慮使用漢明碼呀擴展?jié)h明碼。某些要求更高的特殊情況下,則可選用更復雜一些的校驗碼,同時通信條件的好壞也是影響校驗方式選用的因素之一。





