3.海明碼
計算機體系結(jié)構(gòu)中的海明碼也是大家的一大難點。什么是海明碼距?
事實上,海明碼距就是碼距,碼距就是指兩個碼字C1與C2之間不同的比特數(shù)。
例如: 1100與1010的碼距為2,具體的對應(yīng)比較關(guān)系如下表所示。
碼距求解示意表
位 |
D3 |
D2 |
D1 |
D0 |
對應(yīng)位
編碼的比較 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
因為兩個碼字在D1和D2兩位上編碼不同,所以碼距為2。
同理,1111與0000的碼距為4。
一個編碼系統(tǒng)的碼距就是整個編碼系統(tǒng)中任意兩個碼字的的最小距離就是該編碼系統(tǒng)的碼距,例如,一個編碼系統(tǒng)只有四個編碼分別為:0000,0011,1100,1111。此編碼系統(tǒng)中0000與0011的碼距為2,是此編碼系統(tǒng)的最小碼距,所以此編碼系統(tǒng)的碼距為2。
有些書上稱碼距為海明碼距或漢明距,這讓一些同學(xué)產(chǎn)生了誤解,誤認(rèn)為海明碼距就是海明編碼的碼距,這種概念是錯誤的。海明碼距就是碼距,它和海明編碼沒有必然聯(lián)系。
來看一道模擬試題!
●在海明碼編碼方法,若冗余位(檢錯位)為3位且與錯碼位置的對應(yīng)關(guān)系為:
S2S1S0 |
111 |
110 |
101 |
011 |
100 |
010 |
001 |
000 |
錯碼位置 |
a6 |
a5 |
a4 |
a3 |
a2 |
a1 |
a0 |
無錯 |
則冗余位a0的計算公式為__(7)___。
相關(guān)推薦:
2008下半年軟件水平考試軟件設(shè)計師押題試卷 2008年5月計算機軟件水平考試各科試題答案匯總