码迷,mamicode.com
首页 > Windows程序 > 详细

C# CRC16校验码 1.0

时间:2019-05-06 10:25:48      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:数组   getc   crc   CRC16   int   lse   static   etc   get   

    /// <summary>

        /// 计算CRC16校验码 1.0

        /// </summary>

        /// <param name="bytes">字节数组</param>

        /// <param name="len">校验的长度</param>

        /// <returns>校验码</returns>

        public static int GetCRC(byte[] bytes, int len)

        {

            int CRC = 0x0000ffff;

            int POLYNOMIAL = 0x0000a001;

            int i, j;

            for (i = 0; i < len; i++)

            {

                CRC ^= ((int)bytes[i] & 0x000000ff);

                for (j = 0; j < 8; j++)

                {

                    if ((CRC & 0x00000001) != 0)

                    {

                        CRC >>= 1;

                        CRC ^= POLYNOMIAL;

                    }

                    else

                    {

                        CRC >>= 1;

                    }

                }

            }

            return CRC;

        }

C# CRC16校验码 1.0

标签:数组   getc   crc   CRC16   int   lse   static   etc   get   

原文地址:https://www.cnblogs.com/z45281625/p/10818093.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!