Ⅰ crc校驗碼計算方法是什麼
1、循環校驗碼(CRC碼):是數據通信領域中最常用的一種差錯校驗碼,其特徵是信息欄位和校驗欄位的長度可以任意選定。
2、生成CRC碼的基本原理:任意一個由二進制位串組成的代碼都可以和一個系數僅為嘩鋒『0』和『1』取值的多項式一一對應。
例如:代碼1010111對應的多項式為x6+x4+x2+x+1,而多項式為x5+x3+x2+x+1對應的代碼101111。
注意事項
是接受方和發送方的一個約定,也就是一個二進制數,在整個傳輸過程中,這個數始終保持不變。
在發送方,利用生成多項式對信息多項式做模2除生成校驗碼。在接收方利用生亂磨晌成多項式對收到的編碼多項式做模2除檢測和確定錯誤位置。
應滿足以下條件:
1、生成多項式的最高位和最低位必須為1。
2、當被傳送信息(CRC碼)任何一位發生錯誤時,被生成多項式做除後應游讓該使余數不為0。
3、不同位發生錯誤時,應該使余數不同。
4、對余數繼續做除,應使余數循環。
Ⅱ 循環冗餘檢驗的CRC的碼字是多少
問問首頁 問題庫 問問之星| 問問團隊 全部問題 >教育/科學>理工科>問題頁 「我的問問 我的2009」活動獎品發放通知! 已解決問題 收藏 轉載到QQ空間 假設CRC的生成多項式G(x)=x3+x+1轉換成對應的2進制除數1011是如何轉換成二進制的 [ 標簽:crc 多項式,crc,二進制 ] 假設CRC的生成多項式G(x)=x3+x+1,信息碼為11001校驗碼孝瞎橋是多少,碼字多少是CRC錯誤。 /wx夢想 回答:1 人氣:1 解決時間:2009-04-29 18:27 滿意答案在串列傳送(磁碟、通訊)中,廣泛採用循環巧猛冗餘校驗碼(CRC)。CRC也是給信息碼加上幾位校驗碼,以增加整個編碼系統的碼距和查錯糾錯能力。 CRC的理論很復雜,一般書上只介紹已有生成多項式後計算校驗碼的方法。檢錯能力與生成多項式有關,只能根據書上的結論死記。 循環冗餘校驗碼(CRC)的基本原理是:在K位信息碼後再拼接R位的校驗碼,整個編碼長度為N位,因此,這種編碼又叫(N,K)碼。對於一個給定的(N,K)碼,可以證明存在一個最高次冪為N-K=R的多項式G(x)。根據G(x)可以生成K位信息的校驗碼,而G(x)叫做這個CRC碼的生成多項神塵式。 校驗碼的具體生成過程為:假設發送信息用信息多項式C(X)表示,將C(x)左移R位,則可表示成C(x)*2R,這樣C(x)的右邊就會空出R位,這就是校驗碼的位置。通過C(x)*2R除以生成多項式G(x)得到的余數就是校驗碼。 幾個基本概念 1、多項式與二進制數碼 多項式和二進制數有直接對應關系:x的最高冪次對應二進制數的最高位,以下各位對應多項式的各冪次,有此冪次項對應1,無此冪次項對應0。可以看出:x的最高冪次為R,轉換成對應的二進制數有R+1位。 多項式包括生成多項式G(x)和信息多項式C(x)。 如生成多項式為G(x)=x4+x3+x+1, 可轉換為二進制數碼11011。 而發送信息位 1111,可轉換為數據多項式為C(x)=x3+x2+x+1。 2、生成多項式 是接受方和發送方的一個約定,也就是一個二進制數,在整個傳輸過程中,這個數始終保持不變。 在發送方,利用生成多項式對信息多項式做模2除生成校驗碼。在接受方利用生成多項式對收到的編碼多項式做模2除檢測和確定錯誤位置。 應滿足以下條件: a、生成多項式的最高位和最低位必須為1。 b、當被傳送信息(CRC碼)任何一位發生錯誤時,被生成多項式做模2除後應該使余數不為0。 c、不同位發生錯誤時,應該使余數不同。 d、對余數繼續做模2除,應使余數循環
Ⅲ 如何計算CRC校驗碼
我先給你舉個例子:搜謹
已知信息位為1100,生成多項式G(x) = x3+x+1,求CRC碼。
M(x) = 1100 M(x)*x3 = 1100000 G(x) = 1011
M(x)*x3 / G(x) = 1110 + 010 /1011 R(x) = 010
CRC碼為: M(x)*x 3+R(x)=1100000+010 =1100010
其原理腔漏伏是:CRC碼一般在k位信息位之後拼接r位校驗位生成。編碼步驟如下:
(1)將待編碼的k位信息表示成伍攜多項式 M(x)。
(2)將 M(x)左移 r 位,得到 M(x)*xr 。
(3)用r+1位的生成多項式G(x)去除M(x)*xr 得到余數R(x)。
(4)將M(x)*xr 與R(x)作模2加,得到CRC碼。
Ⅳ CRC碼的計算方法
信息碼激寬緩嫌添四個零,明哪亮去除多項式,得到余數,為****
那麼傳送的12個比特就是11001101****。
Computer Networks 自頂向下方法書里有!
Ⅳ 計算機網路原理中求CRC校驗碼。
01100。演算法你可以用手算,或者用代碼計算,代碼分按位和按位元組。手算演算法是:多項式為101101你在信息的後面補5個0信息碼變為1101101100000這時開轎培始用多項式對上面的信息碼進行異或操作,要打的話很麻煩。我只把沒一次運算的結果寫一下1:011011(注意,前面一位已經為零,這時,要在此數後面補一個數,也就是說,現在已經對8為信息碼操作了一位)移位以後變為110111。(此時的首畝悄位又為1,再與多項式異或,下面的類似)2:0110103:0110004:0111015:0101116:000011 注意此時的信息碼已經被操作了5次了,就是說還有3位沒有操作,這時把這個數左移3位就好了,因為他的前3位都為零,所以最後的crc碼為01100整個要發送的數據為11011011+01100中閉耐唯間算的可能有錯誤,開始看crc的時候可能會很難懂,看看代碼很不錯的
Ⅵ crc碼計算 傳輸數據M=110100111001,多項式P=10101,求CRC碼,
當前信息碼字芹此為1011001,生成11001,(即謹首敬多項式G(X)=X^4+X^3+1) 實際傳送的信息碼為?
步驟:
1、看多項式多少階 就是X最大的那個次方(這里是4)
2、如果是n階,就在原來的信息碼字後面加上n個0得到字串A
題目上就是10110010000
3、用多項式的系數對祥慎應生成字串B
題目中多項式G(X)=X^4+X^3+1
帶系數x寫法 G(X)=1* X^4+1* X^3+0*X^2+0*X^1+1*X^0
所以B就是11001
4、 按模2除法用A除以B(模2 除法就是加減都是異或運算)得到的余數就是crc的校驗碼
題目中算出余數就是1010
5、實際傳送的信息就是原來的信息碼+上校驗碼
答案是10110011010