帮忙写个CRC校验程序
具体算法如下:
CRC是先调入一值是全“1 ”的16位寄存器,然后调用一过程将消息中连续的8 位字
节各当前寄存器中的值进行处理。仅每个字符中的 8Bit 数据对 CRC有效,起始位和停止位
以及奇偶校验位均无效。
CRC校验字节的生成步骤如下:
① 装一个16位寄存器,所有数位均为1 。
② 取被校验串的一个字节与 16位寄存器的高位字节进行“异或”运算。运算结果放
入这个16位寄存器。
③ 把这个16寄存器向右移一位。
④ 若向右(标记位)移出的数位是 1,则生成多项式1010 0000 0000 0001 和这个寄
存器进行“异或”运算;若向右移出的数位是0 ,则返回③。
⑤ 重复③和④,直至移出8 位。
⑥ 取被校验串的下一个字节
⑦ 重复③~⑥,直至被校验串的所有字节均与 16 位寄存器进行“异或”运算,并移位
8 次。
⑧ 这个16位寄存器的内容即2 字节CRC 错误校验码。
校验码按照先高字节后低字节的顺序存放。
CRC是先调入一值是全“1 ”的16位寄存器,然后调用一过程将消息中连续的8 位字
节各当前寄存器中的值进行处理。仅每个字符中的 8Bit 数据对 CRC有效,起始位和停止位
以及奇偶校验位均无效。
CRC校验字节的生成步骤如下:
① 装一个16位寄存器,所有数位均为1 。
② 取被校验串的一个字节与 16位寄存器的高位字节进行“异或”运算。运算结果放
入这个16位寄存器。
③ 把这个16寄存器向右移一位。
④ 若向右(标记位)移出的数位是 1,则生成多项式1010 0000 0000 0001 和这个寄
存器进行“异或”运算;若向右移出的数位是0 ,则返回③。
⑤ 重复③和④,直至移出8 位。
⑥ 取被校验串的下一个字节
⑦ 重复③~⑥,直至被校验串的所有字节均与 16 位寄存器进行“异或”运算,并移位
8 次。
⑧ 这个16位寄存器的内容即2 字节CRC 错误校验码。
校验码按照先高字节后低字节的顺序存放。
...全文
相关推荐
CRC16校验c写的程序
c写的程序CRC16 校验程序! c写的程序CRC16 校验程序!
CRC校验的测试程序编程
首先,我们需要了解CRC校验的原理。在计算过程中,我们需要选择一个特定的生成多项式,通常用一个多项式的系数表示。常用的CRC生成多项式包括CRC-16和CRC-32等。CRC(Cyclic Redundancy Check)校验是一种常用的数据校验方法,用于检测数据传输中的错误。在本文中,我们将编写一个测试程序来演示如何计算CRC校验码。通过这个程序,我们可以计算给定数据的CRC校验码。最后,函数返回计算得到的CRC校验码。在上述示例程序中,我们定义了一个包含5个字节的数据数组。函数来计算CRC校验码。
VB6.0写的计算CRC校验和的小程序
VB6.0写的计算CRC校验和的小程序,能够计算串口发送数据的校验和(CRC)和异或校验和。经过编译后能够显示为Win7的界面效果。
C#写的CRC校验程序
C#写的计算CRC校验和程序,字节间空格隔开
labview写的CRC-8校验程序
labview CRC-8校验


