CRC码如此描述
1)预置16 位寄存器为十六进制FFFF(即全为1>,称此寄存器为CRC 寄存器;
2)把第一个8 位数据与16 位CRC 寄存器的低位相异或,把结果放于CRC寄存器;
3)把寄存器的内容右移一位,用0填补最高位,检查最低位;
4)如果最低位为0:重复第3步(再次移位>;如果最低位为1 ,CRC寄存器与多项式A001(1010 0000 0000 0001)进行异或;
5)重复步骤3到4,直到右移8次,这样整个8位数据全部
进行了处理;
6)重复步骤2 到步骤5,进行下一个8位数据的处理;
B)最后得到的CRC 寄存器即为CRC 校验码
我现在的问题是,第一个8位数据和第二个8位数据都是与CRC的低位相进行运算的话,第一个8位数据运算完右移了8位,那其数值等于是空,没0,又没有进行保存处理,那结果又是怎么来的呢