草庐IT

c++ - CCITT CRC 16 位起始值 0xffff

我需要计算作为参数传递的数据的CCITT16位校验和值以及长度。如果我用测试数据“123456789”填充我的数组TempStr,使用长度不包括空终止字符的多项式0x8408,我得到结果字符串6E90(十六进制)。连同空终止字符,我得到907A。当我将多项式换成0x1201时,我得到结果29E2(Hex)和EFE8(Hex),有和没有终止字符。我的问题是:我是否需要计算带有或不带有空终止字符的CRC以获得正确的值?我在算法中使用多项式0x1201还是反向多项式0x8408?给定数据0x29B1的正确CRC校验是否正确?我需要正确的值来确定该功能是否正常工作..计算此特定CRC类型的算法

mysql - 如何优化递归 INSERT 和 SELECT DISTINCT mysql 查询

我有两个MySQL表WData-Clean和WData。我在WData中导入数据,每次都有很多重复记录。数据需要超时堆叠,所以无法去除重复项。在WData-Clean中,我导入WData中的所有“唯一”记录。此处示例中的唯一记录是与某些字段可能具有相同值的所有其他类似记录不同的记录。为此,我使用以下查询:INSERTINTO`WData-clean`(`field1`,`field2`,`field3`,`field4`,`field5`,`field6`)SELECTDISTINCT`field1`,`field2`,`field3`,`field4`,`field5`,`field