CRC 迴圈冗餘校驗簡明解釋

2021-10-20 11:27:13 字數 735 閱讀 4693

表示方式:多項式 (所以crc又稱為多項式編碼方式)

g(x) =$x^4 + x^3 + 1$=11001 常數項就是第0位

選擇方式:隨機、標準

除數:k位二進位制位元串

被除數:m+k-1 位二進位制位元串

要傳送的資料幀m位 +末尾新增上 k-1位 「0」

餘數:k-1位 即改crc校驗碼,也稱fcs(幀校驗序列)

餘數的位數必須為k-1位,全為0也不能省略。

000為補上的k-1位資料。

【說明】「模2除法」與「算術除法」類似,但它既不向上位借位,也不比較除數和被除數的相同位數值的大小,只要以相同位數進行相除即可,實際上等同於異或運算

再把這個餘數作為校驗碼附加在原資料幀後面,構建乙個新幀傳送到接收端

(就是m位的幀,不是在後面形成的m+k-1位的幀)

接收端再把這個新幀以「模2除法」方式除以前面選擇的除數,如果沒有餘數,則表明該幀在傳輸過程中沒出錯,否則出現了差錯。

迴圈冗餘校驗 CRC校驗

一 crc校驗概念 即迴圈冗餘校驗碼 cyclic redundancy check 是資料通訊領域中最常用的一種查錯校驗碼,迴圈冗餘檢查 crc 是一種資料傳輸檢錯功能,對資料進行多項式計算,並將得到的結果附在幀的後面,接收裝置也執行類似的演算法,以保證資料傳輸的正確性和完整性。其特徵是資訊字段和...

迴圈冗餘校驗CRC

網上搜到的內容不全面,維基百科講的比較好,原理很清楚傳送門 其實對於程式設計師來講,不用太在意它的數學原理,另外生成碼的選擇不是隨意的,這可能影響到校驗的效能。注意其中的加法不進製,減法不借位,類似是異或邏輯。關於怎樣產生crc,有這樣乙個演算法 下面為crc的計算過程 1 設定crc暫存器,並給其...

CRC迴圈冗餘校驗

crc校驗原理 crc校驗原理看起來比較複雜,好難懂,因為大多數書上基本上是以二進位制的多項式形式來說明的。其實很簡單的問題,其根本思想就是先在要傳送的幀後面附加乙個數 這個就是用來校驗的校驗碼,但要注意,這裡的數也是二進位制序列的,下同 生成乙個新幀傳送給接收端。當然,這個附加的數不是隨意的,它要...