function crc16_false(str) {
var crc = 0xFFFF;
for (let s in str) {
if (!(s % 2)) {
let oneByte_16 = parseInt(`${str[s]}${str[s*1+1]}`, 16)
crc ^= oneByte_16 << 8;
for (var j = 0; j < 8; j++) {
crc = (crc & 0x8000) ? ((crc << 1) ^ 0x1021) : (crc << 1);
}
}
}
crc &= 0xffff;
return crc.toString(16);
}
crc16_false("5be22000")//16进制数据
速记。
该博客详细介绍了CRC16错误检测码的计算过程,通过提供的`crc16_false`函数展示了如何对16进制字符串进行CRC校验。内容涉及到位操作和循环移位,对于理解数据通信中的错误检测机制具有指导意义。
1011

被折叠的 条评论
为什么被折叠?



