CRC校驗學習筆記

2021-10-04 15:06:44 字數 585 閱讀 1354

在兩台裝置傳輸過程中,如果對資料要求較高,需要高的準確性,那麼校驗是必不可少的。一般用到的校驗方式有奇偶校驗和crc校驗。

假設我們要用微控制器和pc之間進行通訊,每次資料不能出錯,如果出錯,那麼這一幀資料直接無效,那麼用什麼方法可以檢驗其有效性?

假設資料為111010(資料段)+(校驗位)。

下面就上述例子介紹crc校驗:

首先傳送端要將資料進行打包處理。就上述而言,每次我們要傳送6+n個資料,n為crc的n位冗餘碼,將這些資料報打包後構成一幀完整的資料傳送出去。

資料處理的方法如下:

注:這裡說明一下,如果約定的除數為n為二進位制,那麼得到的餘數規定為n-1位,也就是n-1個冗餘碼。

假設約定的除數為1101,那麼就用111010除以1101得到餘數為011,即三位冗餘碼。

有3為冗餘碼就要把原來的資料左移3位,即:

2^3*(原資料)

處理之後原來的資料變成了6+3個,即111010011

這就完成了傳送端的處理。

接收端:

接受每一幀資料以後,拿這幀資料除以1101,得到餘數為0.

111010011/1101=0

校驗完畢!

資料校驗 CRC校驗

工作原理 crc即迴圈冗餘校驗碼 cyclic redundancy check 是資料通訊領域中最常用的一種查錯校驗碼,其特徵是資訊字段和校驗欄位的長度可以任意選定。迴圈冗餘檢查 crc 是一種資料傳輸檢錯功能,對資料進行多項式計算,並將得到的結果附在幀的後面,接收裝置也執行類似的演算法,以保證資...

CRC校驗原理

crc校驗原理 1 迴圈校驗碼 crc碼 是資料通訊領域中最常用的一種差錯校驗碼,其特 徵是資訊字段和校驗欄位的長度可以任意選定。2 生成crc碼的基本原理 任意乙個由二進位制位串組成的 都可以和乙個系 數僅為 0 和 1 取值的多項式一一對應。例如 1010111對應的多項 式為x6 x4 x2 ...

CRC校驗程式設計

程式的宗旨 通過編寫crc的校驗程式,加深對crc原理的理解,同時學會將書本上的原理運用於實際,動手實踐才能學得更快。注 本文關於crc原理那部分內容,來自網路蒐集。1.需求分析 編寫乙個crc校驗的模擬程式,該程式實現的功能如下 輸入 一串二進位制位元串 輸出 crc校驗碼 2.crc校驗原理分析...