校验码系统是产生校验码并校验包括校验码在内的字符串的一套规则。它可以防止在抄录和键入字符串时产生的错误。
查错类型
*单一字符替代错误,如1234被错录为4234
*单一字符对换错误,如12345被错录为12354或12543
*位移错误,如_123被错录为123_
*双替代错误,如1234567被错录为7234587
类型
ISO 2108
ISO 2984
ISO 6166
ISO 7064校验码系统
*纯系统
*混合系统
计算方法
ISO 7064
纯系统
*纯系统字符串满足此公式的校验:
\sum_{i=1}^n[a_i\times{r}^{(i-1)}]\equiv1(\mathbf{mod}\ M)
**n:字符串的字符个数(包括校验码)
**i:字符位置序号(由右至左,包括校验码,空格与分隔符不及),即最右边的字符i=1
**ai:字符值(见下表)
**r:底数,几何级数的基数
**M:模数
*一位校验码计算
**用递归法,按规则MOD 11-2为字符串0794设置一个校验码,此时M=11,r=2,n=5:
最后,100+校验码值要与1(mod 11)同余,所以校验码为0,整个受保护字符串为07940。
**多项式法
***权数
****权数公式:W_i=r^{(i-1)}(\mathbf{mod}\ M)
****前15个位置的权数见下表:
***用多项式法,按规则MOD 11-2为字符串0794设置一个校验码:
乘积之和加上校验码必须与1(模11)同余,所以校验码为0,整个字符串为07940
*两位校验码
**递归法
**多项式法
评论 (0)