CRC-16 校验码计算
CRC-16 循环冗余校验码计算工具,支持多种 CRC-16 算法
✓ 计算仅在浏览器本地进行✓ 已通过标准校验值验证
计算结果详情
CRC-16/ARC · 9 字节
十六进制0xBB3D
十进制47933
二进制0b1011101100111101
Poly0x8005
Init0x0000
RefIn / RefOut是 / 是
XorOut0x0000
Check0xBB3D
在线 CRC-16 校验码计算器
本工具可根据 UTF-8 文本或原始十六进制字节计算 16 位循环冗余校验码。CRC-16 不是单一算法,必须选择与设备或协议一致的参数模型。
支持的 CRC-16 参数模型
| 参数模型 | Poly | Init | RefIn / RefOut | 检查值(123456789) |
|---|---|---|---|---|
| CRC-16/ARC | 0x8005 |
0x0000 |
true / true | 0xBB3D |
| CRC-16/CCITT-FALSE | 0x1021 |
0xFFFF |
false / false | 0x29B1 |
| CRC-16/MODBUS | 0x8005 |
0xFFFF |
true / true | 0x4B37 |
| CRC-16/XMODEM | 0x1021 |
0x0000 |
false / false | 0x31C3 |
以上模型的 XorOut 均为 0x0000。标准检查字符串可以用来对照设备文档或验证其他 CRC 实现。
使用方法
- 选择协议要求的 CRC-16 参数模型。
- 普通文字选择“文本 / UTF-8”,数据包选择“十六进制字节”。
- 输入数据并计算校验码。
- 复制十六进制结果,或下载完整结果明细。
十六进制模式接受完整字节对,字节间可使用空格、逗号、冒号或连字符。例如 31 32 33 是 ASCII 文本 123 对应的三个字节。
Modbus CRC 字节顺序
标准检查字符串的 CRC-16/MODBUS 结果是 0x4B37。写入 Modbus RTU 报文时需要低字节在前,因此实际追加的两个字节是 37 4B;这只是线序,校验码数值仍是 0x4B37。
常见问题
为什么两个 CRC-16 工具结果不同?
通常是 Poly、Init、RefIn、RefOut 或 XorOut 参数不同,也可能是一个工具按文本编码,另一个工具按十六进制字节读取。
CRC-16 是加密算法吗?
不是。CRC-16 可以发现很多意外传输错误,但不能防止人为篡改。
输入数据会上传吗?
不会。文本编码和 CRC 计算全部在当前浏览器本地完成。