1. 程式人生 > >CRC16校驗的原理

CRC16校驗的原理

假設資料傳輸過程中需要傳送15位的二進位制資訊g=101001110100001,那麼這串二進位制碼可表示為代數多項式g(x) = x^14 + x^12 + x^9 + x^8 + x^7 + x^5 + 1。將g(x)乘以x^m,既將g後加m個0,然後除以m階多項式h(x),得到的(m-1)階餘項r(x)對應的二進位制碼r就是CRC編碼。

備註:

g(x)和h(x)的除運算,可以通過g和h做xor(異或)運算。比如將11001與10101做xor運算

例子說明:

使用CRC-8演算法求101001110100001的效驗碼。CRC-8標準的h(x) = x^8 + x^7 + x^6 + x^4 + x^2 + 1,既h是9位的二進位制串111010101。

 

 

參考文章:

https://blog.csdn.net/xing414736597/article/details/78693781
源於這裡