關(guān)于crc16校驗(yàn)碼計(jì)算器下載,crc16校驗(yàn)碼計(jì)算器這個(gè)問(wèn)題很多朋友還不知道,今天小六來(lái)為大家解答以上的問(wèn)題,現(xiàn)在讓我們一起來(lái)看看吧!
1、7E 00 05 60 31 32 33 計(jì)算CRC16結(jié)果應(yīng)該是:5B3E方法如下:CRC-16碼由兩個(gè)字節(jié)構(gòu)成,在開(kāi)始時(shí)CRC寄存器的每一位都預(yù)置為1,然后把CRC寄存器與8-bit的數(shù)據(jù)進(jìn)行異或(異或:二進(jìn)制運(yùn)算 相同為0,不同為1;0^0=0;0^1=1;1^0=1;1^1=0), 之后對(duì)CRC寄存器從高到低進(jìn)行移位,在最高位(MSB)的位置補(bǔ)零,而最低位(LSB,移位后已經(jīng)被移出CRC寄存器)如果為1,則把寄存器與預(yù)定義的多項(xiàng)式碼進(jìn)行異或,否則如果LSB為零,則無(wú)需進(jìn)行異或。
2、重復(fù)上述的由高至低的移位8次,第一個(gè)8-bit數(shù)據(jù)處理完畢,用此時(shí)CRC寄存器的值與下一個(gè)8-bit數(shù)據(jù)異或并進(jìn)行如前一個(gè)數(shù)據(jù)似的8次移位。
3、所有的字符處理完成后CRC寄存器內(nèi)的值即為最終的CRC值。
4、1.設(shè)置CRC寄存器,并給其賦值FFFF(hex)。
5、2.將數(shù)據(jù)的第一個(gè)8-bit字符與16位CRC寄存器的低8位進(jìn)行異或,并把結(jié)果存入CRC寄存器。
6、 3.CRC寄存器向右移一位,MSB補(bǔ)零,移出并檢查L(zhǎng)SB。
7、4.如果LSB為0,重復(fù)第三步;若LSB為1,CRC寄存器與多項(xiàng)式碼相異或。
8、5.重復(fù)第3與第4步直到8次移位全部完成。
9、此時(shí)一個(gè)8-bit數(shù)據(jù)處理完畢。
10、6.重復(fù)第2至第5步直到所有數(shù)據(jù)全部處理完成。
11、7.最終CRC寄存器的內(nèi)容即為CRC值。
12、CRC(16位)多項(xiàng)式為 X16+X15+X2+1,其對(duì)應(yīng)校驗(yàn)二進(jìn)制位列為1 1000 0000 0000 0101。
本文分享完畢,希望對(duì)大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請(qǐng)聯(lián)系刪除!