最近为了解决接收数据的正确性,需要校验,发现ISO 7064:1983.MOD 11-2校验码不错,如下:
假设某一17位数字是
| 17位数字 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 加权因子 | 7 | 9 | 10 | 5 | 8 | 4 | 2 | 1 | 6 | 3 | 7 | 9 | 10 | 5 | 8 | 4 | 2 |
- 计算17位数字各位数字与对应的加权因子的乘积的和S:1×7+2×9+3×10+4×5+5×8+6×4+7×2+8×1+9×6+0×3+1×7+2×9+3×10+4×5+5×8+6×4+7×2=368;
- 计算S÷11的余数T:368 mod 11=5;
- 计算(12-T)÷11的余数R,如果R=10,校验码为字母“X”;如果R≠10,校验码为数字“R”:(12-5)mod 11=7。
该17位数字的校验码就是7,聚合在一为123456789012345677。
本文介绍了一种用于确保数据接收正确性的ISO7064:1983.MOD11-2校验码方法。通过特定的加权因子和模11运算,实现对17位数字的有效校验,并解释了校验码的计算过程及应用。

9万+

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



