在網上看了很多crc校驗**,有很多需要付費才能查閱。本著學習的態度自己簡單寫了一下,測試後沒有發現問題,寫在這裡總結一下。
使用c++實現,ide為codeblocks,結構較簡單,歡迎大佬指點,不喜勿噴
**如下:
#include
using namespace std;
void
fcs();
const int chushu_2[4]
=;int length;
cout<<
"輸入原資料長度 :"
; cin>>length;
int shuju[length+3]
; cout<<
"輸入原資料"
<
for(int i=
0; i
)for
(int i=length; i
3; i++
)//模二運算除法
int mid[4]
;for
(int i=
0; i<
3; i++
)for
(int i=
3; i
3; i++)}
else}}
cout<<
"fcs為:"
;for
(int i=
0; i<
3; i++
) cout<
cout<<
"計算已完成"
<
}void
crc();
const int chushu_2[4]
=;cout<<
"輸入待檢驗資料長度:"
; int length;
cin>>length;
int daishuju[length]
; cout<<
"請輸入待檢驗資料:"
;for
(int i=
0;i)//模二運算除法
int mid[4]
;for
(int i=
0; i<
3; i++
)for
(int i=
3; i
else}}
int judge=0;
cout<<
"校驗結果為:"
;for
(int i=
0; i<
3; i++)}
cout<
if(judge==
0) cout<<
"crc校驗完成,未發現錯誤"
<
else cout<<
"crc校驗出錯,該資料幀有差錯"
<
}int main()
執行結果如下
計算機網路 CRC校驗
crc即迴圈冗餘校驗碼 是資料通訊領域中最常用的一種查錯校驗碼,其特徵是資訊字段和校驗欄位的長度可以任意選定。迴圈冗餘檢查 crc 是一種資料傳輸檢錯功能,對資料進行多項式計算,並將得到的結果附在幀的後面,接收裝置也執行類似的演算法,以保證資料傳輸的正確性和完整性。方法 迴圈冗餘檢驗的原理 在資料鏈...
計算機網路 CRC校驗
crc即迴圈冗餘校驗碼 是資料通訊領域中最常用的一種查錯校驗碼,其特徵是資訊字段和校驗欄位的長度可以任意選定。迴圈冗餘檢查 crc 是一種資料傳輸檢錯功能,對資料進行多項式計算,並將得到的結果附在幀的後面,接收裝置也執行類似的演算法,以保證資料傳輸的正確性和完整性。方法 迴圈冗餘檢驗的原理 在資料鏈...
計算機網路 鏈路層 CRC校驗碼
我們在大學 計算機網路 或者是 計算機組成原理 中學過crc校驗碼。做個總結。不想看原理直接翻到例子那裡,簡潔明瞭。迴圈冗餘校驗碼,是眾多校驗碼中的一種,是用來校驗傳送過來的資料是否被修改過的碼。他們的簡單工作原理,可以用乙個10進製的不嚴謹例子表示。首先接收方和傳送方要共同約定,傳送的數字都能被3...