标题:
CRC-16源码 C语言
[打印本页]
作者:
oiglvy
时间:
2017-3-7 10:26
标题:
CRC-16源码 C语言
#include "stdafx.h"
#include "iostream"
typedef unsigned short ushort;
typedef unsigned char uchar;
using namespace std;
ushort checksum(uchar* ,uchar ); //传字符串,字节数,
int main()
{
uchar array[3]={0x01,0x02,0x03};
uchar len=sizeof(array);
ushort CRC=checksum(array ,len );
cout<<hex<<CRC<<endl;
return 0;
}
ushort checksum(uchar* array,uchar len)
{
ushort CRC=0xFFFF;
for(uchar i=0;i<len;++i)
{
CRC=CRC^(ushort)array[i];
for(uchar j=0;j<8;++j)
{
if((CRC & 0x0001)==0x0001)
{
CRC=(CRC>>=1)^0xA001;
;
}
else
CRC>>=1;
}
}
return CRC;
}
复制代码
作者:
jinhua1916
时间:
2020-4-7 14:45
非常好,和计算器计算的一样。代码好!
作者:
jinhua1916
时间:
2020-4-7 14:46
非常好,我在找A001的,终于找到了。8005的计算结果不一样。
作者:
huangjilin
时间:
2024-5-19 21:58
谢谢分享
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1