CRC 迴圈冗餘校驗碼 的計算方法

2021-08-13 01:17:12 字數 982 閱讀 2486

迴圈冗餘校驗crc(cyclical redundancy check)字段位於尾部,有32位,有時稱為ieee/ansi標準的crc32.要使用乙個n位crc監測

資料傳輸錯誤,被檢查的訊息首先要追加n位0形成乙個擴充套件訊息(使用模2除法)除以乙個n+1位的值,這個作為出書的紙稱為生成》多項式。放置在訊息的crc欄位的值是這次處罰計算中的餘數的二進位制反碼(商被丟棄)。生成多項式是33位的二進位制數100000100110000010001110110110111。

為了理解如何使用模2除法(mod

2),我麼來看乙個crc4(n=4)的例子。國際電信聯盟將crc4的生成多項式標準化為10011(n+1=4+1=5位),如果我們要傳送16位的訊息100111000101111,首先開始進行圖中的mod

2二進位制除法

這個除法的餘數是4位的1111,通常,該餘數的反碼0000將放置在幀的crc或幀校驗序列fcs欄位中。在接收到資料後,接收方執行相同的除法計算出餘數,並判斷fcs欄位的值是否匹配,如果兩者不匹配,真可能在傳輸過程中受損,通常被丟棄,crc功能可用於提示資訊受損,因為位模式的任何改變極可能導致餘數的改變

模2除法 的計算方法:

模2除法·,從字面上可理解為二進位制下的除法。

模2除法與算術除法類似,但每一位除的結果不影響其它位,即不向上一位借位,所以實際上就是異或。在迴圈冗餘校驗碼(crc)的計算中有應用到模2除法。

1111000除以1101:

想知道模

2除法,只需要知道什麼是異或運算就很容易算出。

計算機中,異或邏輯表示為: (記憶方法:同為0異為

1)1^1

=00^0

=01^0

=10^1

=1

CRC迴圈冗餘校驗碼

1 crc crc迴圈冗餘校驗碼是資料通訊中的一種查錯校驗碼。迴圈冗餘檢查對資料進行多項式計算,將計算結果附加在幀後面,接收資料的裝置執行模2運算,保證資料傳輸的正確性和完整性。2.模2除法 不向上借位,只要除數和被除數的位數相同就可進行計算,不比較它們的大小 模2運算中用到了模2減法,與邏輯異或相...

迴圈冗餘校驗碼CRC

一 基本原理 crc檢驗原理實際上就是在乙個p位二進位制資料序列之後附加乙個r位二進位制檢驗碼 序列 從而構成乙個總長為n p r位的二進位制序列 附加在資料序列之後的這個檢驗碼與資料序列的內容之間存在著某種特定的關係。如果因干擾等原因使資料序列中的某一位或某些位發生錯誤,這種特定關係就會被破壞。因...

CRC迴圈冗餘校驗碼

crc迴圈冗餘校驗碼 crc cyclic redundancy check 迴圈冗餘校驗碼 是常用的校驗碼,在早期的通訊中運用廣泛,因為早期的通訊技術不夠可靠 不可靠性的 是通訊技術決定的,比如電磁波通訊時受雷電等因素的影響 不可靠的通訊就會帶來 確認資訊 的困惑,書上提到紅軍和藍軍通訊聯合進攻山...