校验码的计算

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

校验码的计算

1、试用几何级数法确定原代码为1684的校验位和新代码。要求以11为模,以27、9、3、1为权。

解:原代码 1 6 8 4

各乘以权 27 9 3 1

乘积之和 27+54+24+4=109

以11为模除乘积之和109/11=9 (10)

因余数是10,所以校验位按0处理

故校验位为0,新代码为16840

2、用质数法设计代码校验位:原代码共7位,从左到右取权3,5,7,13,17,19,23,以11为模,试求出2690088的校验位?如果让“11”既作模,又作权,会存在什么缺陷(可以举例说明)?解:校验位的计算:

原码: 2 6 9 0 0 8 8

权: 3 5 7 13 17 19 23

乘积: 6 30 63 0 0 152 18

4

435

乘积之

和:

模11结果435/11=39 (6)

校验位: 6

新码:26900886

(2)如果“11”既作模,又作权,那么当该位发生错误时,校验位将无法检测到这位发生错误。如:不妨将权13改为11(左边第四位权),原代码是2690088,其校验位仍为6,新码是26900886;在输入或传输过程中发生错误:第四位由0变为9(或其它任意数字1-9),即输入“26990886”此时的校检位6将无法检测到已发生的错误!因为2X3+6X5+9X7+9X11+0X17+8X19+8X23=435+9X11=534模11后所得余数仍为6,计算机会认为:“26900886”输成“26990886”没有发生错误!。

相关文档
最新文档