標(biāo)題:
CRC-16源碼 C語言
[打印本頁]
作者:
oiglvy
時(shí)間:
2017-3-7 10:26
標(biāo)題:
CRC-16源碼 C語言
#include "stdafx.h"
#include "iostream"
typedef unsigned short ushort;
typedef unsigned char uchar;
using namespace std;
ushort checksum(uchar* ,uchar ); //傳字符串,字節(jié)數(shù),
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;
}
復(fù)制代碼
作者:
jinhua1916
時(shí)間:
2020-4-7 14:45
非常好,和計(jì)算器計(jì)算的一樣。代碼好!
作者:
jinhua1916
時(shí)間:
2020-4-7 14:46
非常好,我在找A001的,終于找到了。8005的計(jì)算結(jié)果不一樣。
作者:
huangjilin
時(shí)間:
2024-5-19 21:58
謝謝分享
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1