现在的位置: 首页 > 综合 > 正文

数据校验码

2014年10月30日 ⁄ 综合 ⁄ 共 330字 ⁄ 字号 评论关闭

最近为了解决接收数据的正确性,需要校验,发现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
  1. 计算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;
  2. 计算S÷11的余数T:368 mod 11=5;
  3. 计算(12-T)÷11的余数R,如果R=10,校验码为字母“X”;如果R≠10,校验码为数字“R”:(12-5)mod 11=7。

该17位数字的校验码就是7,聚合在一为123456789012345677

抱歉!评论已关闭.