东东咚咚哒哒哒 2020-05-13 17:17 采纳率: 0%
浏览 246

请问在c#中怎么把这段crc校验函数改成查表法?

>  Little-Endian Mode
>  /*
>  message : data poiner
>  len : data length Value
>  */
>  uint32 GetCRC(void *  message, uint16 len)
>  {   
>         uint32 CRCFull = 0xFFFF;
>       int i = 0, j = 0;
>       uint8 * mess = message;
>       for (i = 0; i < 8; i++)
>       {
>         CRCFull = (uint16)(CRCFull ^ mess[i]);
>         for (j = 0; j < 8; j++)
>       {
>         CRCLSB = (uint8)(CRCFull & 0x0001);
>         CRCFull = (uint16) ((CRCFull >> 1) & 0x7FFF);
>         if (CRCLSB == 1)
>         CRCFull = (uint16)(CRCFull ^ 0xA001);
>       }
>    }
>    return CRCFull;
> }
  • 写回答

1条回答 默认 最新

  • threenewbee 2020-05-13 23:56
    关注

    https://www.cnblogs.com/subendong/p/11908205.html

    查表的话,你从0~255都调用一次,得到返回值,构成一个表,就可以查表了。

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器