Máy tính CRC (CRC-8/16/32)
Tính CRC-32, ARC, MODBUS, CCITT-FALSE và các biến thể CRC-8 cục bộ; hex hoặc văn bản.
Dữ liệu mẫu được điền sẵn và có thể sửa. Mọi tính toán chạy cục bộ, không tải lên.
Câu hỏi thường gặp
CRC được định nghĩa bởi năm tham số: độ rộng, đa thức, giá trị khởi tạo, phản chiếu và XOR cuối. Cùng tên nhưng khác tham số là thuật toán khác.
Chọn CRC-16/MODBUS (init 0xFFFF). ARC cùng đa thức nhưng init 0x0000 nên kết quả khác.
Hiện hỗ trợ byte hex và văn bản; kéo thả tệp sẽ có sau.
Cách sử dụng
Nội dung bài viết bên dưới hiện chỉ có bản đầy đủ bằng tiếng Trung; giao diện, tiêu đề, mô tả và FAQ hiển thị theo ngôn ngữ bạn chọn.
- 选择输入格式:
十六进制逐字节输入(支持空格、逗号、0x前缀,每个字节必须写满两位),或文本按 UTF-8 编码参与计算。 - 选择算法。默认
CRC-32,用于 ZIP/PNG/以太网;E2E 保护常用CRC-8系列;Modbus RTU 请用CRC-16/MODBUS。 - 结果区同时给出 HEX、十进制、参与计算的字节数与一次算法自检(用同一实现计算
123456789并与该算法公开的 check 值比对,用于发现参数录入错误,不是第三方认证)。
常用参数对照
| 算法 | 多项式 | 初值 | 反射 | 异或值 | check (123456789) | 典型用途 |
|---|---|---|---|---|---|---|
| CRC-32/ISO-HDLC | 0x04C11DB7 | 0xFFFFFFFF | 是 | 0xFFFFFFFF | 0xCBF43926 | 以太网 / ZIP / PNG |
| CRC-16/ARC (IBM) | 0x8005 | 0x0000 | 是 | 0x0000 | 0xBB3D | ARC / IBM SDLC |
| CRC-16/MODBUS | 0x8005 | 0xFFFF | 是 | 0x0000 | 0x4B37 | Modbus RTU |
| CRC-16/CCITT-FALSE | 0x1021 | 0xFFFF | 否 | 0x0000 | 0x29B1 | XMODEM |
| CRC-8/SAE-J1850 (reveng 模型) | 0x1D | 0xFF | 否 | 0xFF | 0x4B | 通用字节校验模型 |
| CRC-8 (poly 0x2F, AUTOSAR E2E Profile 2) | 0x2F | 0xFF | 否 | 0xFF | 0xDF | AUTOSAR E2E |
注意:
CRC-8/SAE-J1850这里是 reveng/参数模型(含最终 XOR 0xFF)。经典 CAN 帧内的 15 位 CRC 是另一套算法(初值、位序列与填充位参与方式都不同),不能用这里的 8 位结果代替。check 值来自各算法的公开定义,结果区的自检会用同一实现复算一次。