编辑代码

#include <stdio.h>
unsigned char crc_poly=0x1d;
unsigned char data[]={0x00,0x20,0x00};
unsigned char i;
unsigned char crc(unsigned char *data,unsigned char length)
{
   unsigned char i,bit;
   unsigned char crc=0xff;
   for(i=0;i<length;i++)
   {
    crc=crc^data[i];
    for(bit=0;bit<8;bit++)
    {
    if(crc&0x80)
     {
      crc=crc<<1;
      crc=crc^crc_poly;

     }
     else crc=crc<<1;
    }
   }
   return ~crc;
}

 
int main () {
    i=crc(data,3);
    //JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。 
    printf("crc的值%x",i);
    return 0;
}