兩個碼組對應位上數字的不同位的個數稱為碼組的距離,簡稱碼距,又稱海明(Hamming)距離。
基本介紹
- 中文名:碼距
- 外文名:Hamming
- 詞性:名詞
- 又稱:海明(Hamming)距離
基本概念,
基本概念
任何編碼都由一組碼字(code word)組成,兩個碼字間變化的二進制位數稱為碼距(code distance)。而在一種編碼中任意兩個碼字之間最少變化的二進制位數稱為該數據編碼的最小碼距(minimum code distance)。
碼距是編碼體制里的一個概念。
兩組代碼之間不同位的個數稱為這兩個碼字間的距離。
對於一個編碼體制,將其中所有的合法碼字的最小距離值稱為這個編碼體制的碼距。
而校驗碼的目的就是為了擴大碼距,通過校驗規律來識別錯誤代碼
8421碼碼距d=1無查錯、糾錯能力。 偶校驗 1011001和10110110碼距d=2(其中有一位不同)。例如00110和00100碼距為1,12345和13344碼距為2,Caus和Daun碼距為2。
d個單比特錯就可以把一個碼字轉換成另一個碼字,為了檢查出d個錯(單比特錯),需要使用海明距離為d+1的編碼;為了糾正d個錯,需要使用海明距離為2d+1的編碼。
例如對於信息位長度為K,監督碼長度為r,則要指示一位錯的N(N=K+r)個可能位置,即糾正一位錯,則必須滿足如下關係:
2^r-1≥N=K+r
因此當信息位為5時,滿足2^r-1≥K+r=5+r,則r=4。
碼距和查錯、糾錯能力的關係
碼距和查錯、糾錯能力具有以下關係:
若碼距為奇數,可發現 d-1 位錯誤,可糾正 (d-1)/ 2 位錯誤。
若碼距為偶數,可發現 d-1位錯誤,可糾正 d / 2 - 1 位錯誤。
碼距與其檢錯、糾錯能力的關係:
在任意長碼字的情況下,差錯控制的最小碼距Dmin與其檢錯、糾錯能力
(1)在一個碼集中檢測e個錯誤,要求最小碼距滿足:Dmin>=e+1
(2)在一個碼集中糾正t個錯誤,要求最小碼距滿足:Dmin>=2t+1
(3)在一種碼集中糾正t個錯誤的同時檢測e(e>=t)個錯誤,要求最小碼距滿足:
Dmin>=t+e+1