具体算法如下: 
CRC是先调入一值是全“1 ”的16位寄存器,然后调用一过程将消息中连续的8 位字
节各当前寄存器中的值进行处理。仅每个字符中的 8Bit 数据对 CRC有效,起始位和停止位
以及奇偶校验位均无效。 
CRC校验字节的生成步骤如下: 
①  装一个16位寄存器,所有数位均为1 。 
②  取被校验串的一个字节与 16位寄存器的高位字节进行“异或”运算。运算结果放
入这个16位寄存器。  
③  把这个16寄存器向右移一位。  
④  若向右(标记位)移出的数位是 1,则生成多项式1010 0000 0000 0001 和这个寄
存器进行“异或”运算;若向右移出的数位是0 ,则返回③。  
⑤  重复③和④,直至移出8 位。  
⑥  取被校验串的下一个字节  
⑦  重复③~⑥,直至被校验串的所有字节均与 16 位寄存器进行“异或”运算,并移位
8 次。  
⑧  这个16位寄存器的内容即2 字节CRC 错误校验码。 
校验码按照先高字节后低字节的顺序存放。