代码是计算机的重要输入内容之一,其正确与否直接影响到整个处理工作的质量,特别是通过手工输入时,发生错误的可能性更大。为了保证正确输入,在代码设计结构中原有代码的基础上,另外加上一个校验位,使它成为代码的一个组成部分。校验位通过事先规定的数学方法计算出来,输入时,计算机用同样的方法按代码数字计算出校验位,与输入的校验位进行比较,以确保输入正确。
校验位可以发现的错误有:抄写错误(1写成7)、易位错误(1234写成1243)、双易位错误(4321写成3412)以及随机错误。
计算校验位的方法很多,这里举出几种。
1.算术级数法
原代码 1 2 3 4 5
各乘以权 6 5 4 3 2
乘积求和 6+10+12+12+10=50
以11为模去除乘积之和,取余数作为校验码:50/11=4余6。
由此得出代码为:123456,其中6为校验码。
2.几何级数法
原代码 1 2 3 4 5
各乘以权 32 16 8 4 2(www.daowen.com)
乘积求和 32+32+24+16+10=114
以11为模去除乘积之和,取余数作为校验码:114/11=10余4。
由此得出代码为:123454。
3.质数法
原代码 1 2 3 4 5
各乘以权 17 13 7 5 3
乘积求和17+26+21+20+15=99
以11为模去除乘积之和,取余数作为校验码:99/11=9余0。
由此得出代码为:123450。
计算校验码时,由于权与模的取值不同,检测效率也不同。一般来说,校验码是对数字代码进行检查。但是,对于字母或字母数字组成的代码,也可以用校验码进行检查,但这时校验位必须是两位,在计算时要将A—Z跟随0—9的顺序变为:A=10、B=11、……、Z=35。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。