表已经构造好了,但是由于原理理解不够充分,具体算法还不太会,希望大虾们帮解决完成!
     
    public byte[] crc_table = new byte[256];        #region 构造对应表
        /// <summary>
         /// 构造对应表(h(x) = x^8+ x^5+ x^4 + 1)
    /// </summary>
        public CRC8()
{
            crc_table[0] = 0; 
            crc_table[1] = 94; 
            crc_table[2] = 188; 
            crc_table[3] = 226; 
            crc_table[4] = 97;
             。
               。
               。
            crc_table[254] = 107;
            crc_table[255] = 53;
        }
        #endregion
                  #region IVerifier 成员
        /// <summary>
        /// 生成crc8
        /// </summary>
        /// <param name="_valueString">被校验字符</param>
        /// <returns>返回校验码</returns>
        public string GenerateVerifyHexString(string _valueString)
        {            int i;
            int index;
            int crc_High = 0x00;
            //将十六进制数直接保存到数组中
            byte[] mod = new byte[_valueString.Length];
            for (int m = 0; m < _valueString.Length; m++)
            {
                mod[m] = Convert.ToByte(_valueString[m].ToString(), 16);
            } 
            //核心算法
            for (i = 0; i < _valueString.Length; i++)
            {
                此处应该怎么写????          
            }
            int temp = crc_High;
            string Verify = temp.ToString("X");
            return Verify;        }