軟考歷程(2) 海明碼校驗

2021-09-07 04:41:42 字數 947 閱讀 8031

這兩天學了校驗碼,在計算機系統基礎知識這塊,校驗還是挺重要的。這裡涉及到的校驗碼有三種:

奇偶校驗碼(

parity

code)

海明碼(hammi

ng code)

迴圈冗餘檢驗碼(

cyclic

redundancy check

,crc)

1.奇偶校驗碼

這是一種最簡單最有效的校驗方法,通過在編碼中新增一位校驗位。使

1的個數為偶數(偶校驗)或奇數(奇校驗)。從而使碼距變為2。

奇校驗能夠檢測**中奇數字出錯的編碼,不能夠發現偶數字出錯的情況。

2.海明碼

這是利用奇偶性來檢錯和糾錯的校驗方法。其構成方法為:在資料位之間插入

k個校驗位。求海明碼的過程能夠分為下面幾個步驟:

(1)依據資料位

n,確定校驗位

k, n和k

滿足關係:2k

-1≥n+k;

(2)設海明碼為h1

。h2。

h3。……h

n+k,

將校驗位依次放在20

,21,22

,2i-1

……的位置上。

(3)將資料位由低位到高位依次放在海明碼剩餘的位置上。

(4)找出每乙個校驗位所校驗的資料位,方法為:第乙個校驗位隔一位校驗一位。第二個校驗位隔兩位校驗兩位,第三個校驗位隔三位校驗三位……每乙個校驗位都校驗它自身;

(5)分別對每乙個校驗位所校驗的資料位做抑或運算,結果為校驗位的值。

(6)將所得校驗位的值填入當中,即得海明碼。

3.迴圈冗餘校驗碼

它由兩部分組成。左邊為資訊碼。右邊為校驗碼。校驗碼是由資訊碼產生的,求

crc編碼時,採用模

2運算。多用於資料通訊領域和磁介質儲存領域,在參加的上個中谷專案中就用到了crc校驗,那會兒對於這個東東還認為蠻深奧的呢!

軟考 海明碼和CRC碼

軟考的過程遇到海明碼和crc的碼,覺得不是很了解,查了一下資料,整理下。也是幫助自己理解,同樣希望可以大家理解海明碼和crc校正碼。核心公式 2r k r 1 其中k為資訊的個數,r為校驗位的個數,那麼我們怎樣來確定校驗位?二進位製碼 101101100,求它的海明編碼 1 資訊為k 9 r的最小值...

海明碼校驗原理

海明校驗的基本思想 將有效資訊按某種規律分成若干組,每組安排乙個校驗位,做奇偶測試,就能提供多位檢錯資訊,以指出最大可能是哪位出錯,從而將其糾正。實質上,海明校驗是一種多重校驗。海明校驗的特點 它不僅具有檢測錯誤的能力,同時還具有給出錯誤所在準確位置的能力。一 校驗位的位數 校驗位的位數與有效資訊的...

海明碼校驗程式設計

海明碼校驗程式設計 1 海明碼編碼 輸入 一串二進位制資料串 輸出 插入海明碼後的二進位制資料串 2 海明碼糾錯 輸入 一串含海明碼的二進位制資料串 輸出 通過海明碼校驗,檢查該二進位制串是否有錯,若有錯誤,則對錯誤位進行糾錯,將糾錯後的二進位制串輸出。這裡我們僅從程式設計實現的角度分析海明碼的編碼...