• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > CRC算法及工作原理

    CRC算法及工作原理

    作者: 時間:2010-08-23 來源:網絡 收藏

      return (accum);

      }

      /* 函數mk-crctbl利用函數crchware建立內存中的數值表 */

      unsigned short *mk-crctbl(poly,crcfn);

      unsigned short poly;/* 除數--生成多項式 */

      R>unsigned short (*crcfn)();/* 指向CRC函數(例如crchware)的指針 */

      {

      /* unsigned short */malloc(); */

      unsigned short *crctp;

      int i;

      if((crctp=(unsigned short*)malloc(256*sizeof(unsigned)))==0)

      return 0;

      for(i=0;i256;i++)

      crctp=(*crcfn)(i,poly,0);

      return crctp;

      }

      /* 函數mk-crctbl的使用范例 */

      if((crctblp=mk-crctbl(CRCCCITT,crchware))==NIL)

      {

      puts(insuff memory for CRC lookup table.n);

      return 1; */

      /* 函數crcupdate用以用查表法計算CRC值并更新CRC累加器值 */

      void crcupdate(data,accum,crctab)

      unsigned short data;/* 輸入的數據 */

      unsigned short *accum;/* 指向CRC累加器的指針 */

      unsigned short *crctab;/* 指向內存中CRC表的指針 */

      {

      static short comb-val;

      comb-val=(*accum>>8)^data;

      *accum=(*accum8)^crctab[comb-val];

      }



    關鍵詞: 原理 工作 算法 CRC

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 会昌县| 邳州市| 贵南县| 浦江县| 东宁县| 敖汉旗| 确山县| 当阳市| 安阳市| 马尔康县| 西畴县| 福安市| 宜章县| 德江县| 道孚县| 文昌市| 杨浦区| 托克托县| 甘德县| 沅陵县| 八宿县| 封丘县| 金沙县| 东台市| 南开区| 砚山县| 霍州市| 祥云县| 长岭县| 舟曲县| 天水市| 屯门区| 桂东县| 什邡市| 星子县| 浑源县| 安康市| 眉山市| 开化县| 阆中市| 贵州省|