循環(huán)冗余碼(CRC)及計算方法 循環(huán)冗余校驗碼怎么算?
循環(huán)冗余校驗碼怎么算?循環(huán)冗余校驗碼的計算方法:CRC(cyclic redundancy)循環(huán)冗余校驗碼(cyclic redundancy check,CRC)是一種常用的校驗碼,在早期通信中得到
循環(huán)冗余校驗碼怎么算?
循環(huán)冗余校驗碼的計算方法:CRC(cyclic redundancy)循環(huán)冗余校驗碼(cyclic redundancy check,CRC)是一種常用的校驗碼,在早期通信中得到了廣泛的應用。由于早期的通信技術是不可靠的(不可靠的來源是由通信技術決定的,如電磁波通信中雷電等因素的影響),不可靠的通信會帶來“確認信息”的混亂。書中提到,紅軍和藍軍聯(lián)手攻打山頭的情況下,在敵人的情況下,紅軍向藍軍發(fā)出了第二天進攻的信息。藍軍收到消息后,發(fā)出了確認消息。但藍軍擔心,如果“確認電文”不可靠,不能送達紅軍,豈不是很危險?于是紅軍又發(fā)了一條“求證電文”,但同樣的問題解決不了,紅軍還是不敢貿(mào)然行動。
求循環(huán)冗余校驗碼的步驟?
信息代碼:110信息多項式:K(x)=x2 x
生成代碼:10011生成多項式:G(x)=X4 x 1(r=4)
解決方案:1)K(x)*X4的乘積為x6x5,對應代碼為1100000。
2)產(chǎn)品g(x)(根據(jù)模塊化二算法)。
結果顯示冗余碼為0101,碼字為1100101。
****************************110←Q(x)
g(x)→10011)1100000←f(x)*XR
*******10011
*******10110
**********10011
***********************************************************************************************************
循環(huán)冗余碼:0101
模2:
1-0-0=1]有效信息:m;
除數(shù)g(生成多項式)有:m/g=q R/g;
在這種情況下,可以選擇R作為校驗位,那么Mr是校驗碼。
校驗原理:(M-R)/g=q 0/g
注:將收到的校驗碼除以約定的除數(shù)。如果余數(shù)為0,則可以認為接收到的數(shù)據(jù)是正確的。
示例:有效信息1101,生成多模式1011
循環(huán)校驗碼解決方案:
有效信息1101(k=4),即m(x)=X3 x2 x0,生成多項式1011(r1=4,即R=3);
即g(x)=X3 X1 x0,m(x)·X3=X6 X5 X3,即1101000(左移三位到1101);
m(x)·X3/g(x)=1101000/1011=1111001/1011,即1010的CRC為1101001。
計算如下: