js crc16检验
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | crc16(data) { let crcValue = 0xFFFF; for ( let i = 0; i < data.length; i++) { crcValue ^= data[i] & 0xFFFF for ( let j = 0; j < 8; j++) { if (crcValue & 0x0001) { crcValue >>= 1 crcValue ^= 0xA001 } else { crcValue >>= 1 } } } crcValue = crcValue.toString(16) let crcArr = new Array(2) crcArr[0] = crcValue.substring(2, 4) crcArr[1] = crcValue.substring(0, 2) return crcArr } var res=crc16(Buffer.from( "010101" , "hex" )); console.log(res) |
1 2 3 4 | //要引入buffer npm install buffer import {Buffer } from 'buffer' |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通