zoukankan      html  css  js  c++  java
  • C# CRC

      public static string CRC16(string cmdString)
            {
                try
                {
                    //CRC寄存器
                    //int CRCCode = 0;
                  
                    ushort crc = 0xFFFF;
                    for (int i = 0; i < cmdString.Length / 2; i++)
                    {
                        ushort cmdHex =(ushort)Convert.ToInt16( cmdString.Substring(i * 2, 2),16);
                        crc = (ushort)(crc ^ (cmdHex));
                        for (int j = 0; j < 8; j++)
                        {
                            crc = (crc & 1) != 0 ? (ushort)((crc >> 1) ^ 0xA001) : (ushort)(crc >> 1);
                        }
                    }
                    byte hi = (byte)((crc & 0xFF00) >> 8); //高位置
                    byte lo = (byte)(crc & 0x00FF); //低位置
                    string his = Convert.ToString(hi, 16);
                    string los = Convert.ToString(lo, 16);
                    string res = los + his;
                    return res;
                 
                      
                  
                }
                catch
                {
                    throw;
                }
            }
  • 相关阅读:
    Linux下安装JDK
    Flink源码阅读(五)——Flink中任务相关的核心类简析
    使用CloudFlare Worker 来免费部署 JSProxy 服务
    Nginx:进程调度
    Javassist基本用法汇总
    IO
    IO
    springcloud3(五) spring cloud gateway动态路由的四类实现方式
    架构设计(二) 互联网网关平台对比
    Python 的协程
  • 原文地址:https://www.cnblogs.com/xuchanghua/p/12125694.html
Copyright © 2011-2022 走看看