CRC校验码原理、实例、手动计算 您所在的位置:网站首页 crc32校验码计算器在线 CRC校验码原理、实例、手动计算

CRC校验码原理、实例、手动计算

2023-07-17 17:38| 来源: 网络整理| 查看: 265

#include unsigned int CRC32_table[256] = {0}; void init_CRC32_table() { for (int i = 0; i != 256; i++) { unsigned int CRC = i; for (int j = 0; j != 8; j++) { if (CRC & 1) CRC = (CRC >> 1) ^ 0xEDB88320; else CRC >>= 1; } CRC32_table[i] = CRC; } } unsigned int GetCRC32(unsigned char* buf, unsigned int len) { unsigned int CRC32_data = 0xFFFFFFFF; for (unsigned int i = 0; i != len; ++i) { unsigned int t = (CRC32_data ^ buf[i]) & 0xFF; CRC32_data = ((CRC32_data >> 8) & 0xFFFFFF) ^ CRC32_table[t]; } return ~CRC32_data; } int main() { unsigned char i[8] = {0x00,0x00,0x00,0x00,0x06,0x0d,0xd2,0xe3}; init_CRC32_table(); printf("BUFFER i's CRC32: 0x%x\n", GetCRC32(i,8)); printf("CRC32 TABLE:\n"); for(int i=0;i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有