15位国网条码校验码计算

合集下载

条形码校验码计算例题

条形码校验码计算例题

条形码校验码计算例题
在日常生活中,我们经常接触到条形码,它是一种用于标识和追踪物品的自动识别技术。

条形码中的每一个数字都有特定的宽度和位置,通过这些信息,我们可以快速准确地读取商品的信息。

而校验码则是条形码中用于验证信息完整性和准确性的部分。

假设我们有一个条形码,其数字部分为1234567890,那么如何计算其校验码呢?
首先,我们需要将数字部分的每一个数字乘以相应的权重因子。

通常情况下,从右往左数,第一个数字的权重因子为3,第二个数字的权重因子为2,第三个数字的权重因子为1。

接下来,我们将所有的乘积加起来得到一个总和。

然后,我们将总和除以10,得到一个商和一个余数。

最后,我们将余数加上一个字符,这个字符取决于总和的商。

如果商为0,则余数为0;如果商为1,则余数为3;如果商为2,则余数为4;以此类推。

现在,我们使用上述方法来计算1234567890的校验码。

首先,我们将数字部分乘以相应的权重因子:
1 * 3 +
2 * 2 +
3 * 1 +
4 * 3 +
5 * 2 +
6 * 1 +
7 * 3 +
8 * 2 +
9 * 1 + 0 * 3 = 15 然后,我们将总和除以10:
15 / 10 = 1 (5)
最后,我们将余数加上一个字符:
5 + 5 = 0
所以,1234567890的校验码为0。

条码校验码计算公式(含代码)

条码校验码计算公式(含代码)
//從右到左,由倒數第三位 0 的奇數位相加
C=C+long(ls_tmp)
End If
Next
//A*3=B
B=A*3
//B+C=D
D=B+C
//D最小整數倍:D+10 - mod(D,10),D最小整數倍 -D
E=10 - mod(D,10)
ls_checkcode=string(E)
4,第二步結果加上第三步結果
B+C=D 即: 87+21=108 第四步的結果用D表示
5,用"大於"或"等於" 108(D的結果)且為10的最小整數倍的數減去108(D的結果)
其差即為所求校驗碼的值
110-108=2
(或 10 -3;ls_checkcode
Retur
n ls_rc
其差即為所求校驗碼的值
110-108=2
(或 10 - mod(108,10))
6,校驗碼乘以1
2*1=2
*/
string ls_rc,ls_checkcode
long A,B,C,D,E
long J,K
string ls_tmp
as_code=trim(as_code)
K=1
校验码X=2
//
6939334351042
1,從右到左,從倒數第二位 4 的偶數位相加
4+1+3+3+9+9=29
第一步的結果用A表示
2,將第一步結果乘以3
A*3=B 即:29*3=87 第二步的結果用B表示

校验码巧解之完整版

校验码巧解之完整版

校验码巧解之完整版摘要作为几大热门专业之一,计算机考研的人数越来越多,但是关于校验码这方面的计算总是困扰着历届学员,同时这方面的知识不光在组成原理里面出现,在网络里面也涉及到。

所以本论文认真总结了校验码(奇偶校验码、海明码、循环冗余检验码)计算的详细过程,希望能帮各位学员或初学者解决这方面困扰。

关键词解决;计算机;校验码;计算1相关背景介绍1.1海明码:(Hanming)1)海明码的用途:在计算机计算过程中,由于种种原因致使数据在存储过程中出现差错。

为了能及时发现错误并及时纠正错误,通常可将原数据配成海明码。

2)海明码的引入:海明码是由Richard Hanming于1950年提出的,它具有一位纠错能力。

由纠错编码理论得知,任何一种编码是否具有检错能力和纠错能力,都与编码的最小距离有关。

所谓编码最小距离,是指编码系统中,任意两组合法代码之间的最小二进制位数的差异。

根据纠错理论得:L-1=D+C 且D>=C即编码的最小距离L越大,则其检测错误的位数越多、纠正错误的位数也越多,且纠错能力恒小于等于检错能力。

1.2循环冗余校验码:(Cyclic Redundancy Check)引入:磁表面存储器由于磁介质表面的缺陷、尘埃等原因,致使出现许多个错误位,循环冗余检验码可以发现和纠错数据在存储或传送过程中出现的多位错误代码,因此CRC码在磁介质存储器和计算机通信方面得到广泛应用。

2例子精讲2.1设置一个信息流的海明码2.1.1题目设计:分别按“配偶原则”和“配奇原则”设置信息码1100101的海明校验码,要求能指出和纠正一位错。

【解析】1)确定海明码的校验位的位数:设r为校验位的位数,则整个码字的位数应满足不等式:2r>=k+r+1,其中k为信息位数,这里k=7,所以可计算出r>=4,所以至少需要4位校验位。

2)确定校验位的位置:用位号(1-11)为2的权值的那些位,即20,21,22,23的位置作为校验位,分别记作P1,P2,P3,P4,余下的位有效信息位。

车辆识别码VIN校验位计算方法

车辆识别码VIN校验位计算方法
123456789101112131415161787654321098765432计算方法vin码从从第一位开始码数字的对应值该位的加权值计算全部17位的乘积值相加除以11所得的余数即为第九位校验值例子
车辆识别码VIN校验位计算方法
VIN码各位数字的“对应值”:
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
ABLeabharlann CDEF
G
H
J
K
L
M
N
P
R
S
T
U
V
W
X
Y
Z
1
2
3
4
5
6
7
8
1
2
3
4
5
7
9
2
3
4
5
6
7
8
9
VIN码从第1位到第17位的“加权值”:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
8
7
6
5
4
3
2
10
9
8
7
6
5
4
3
2
计算方法
VIN码从从第一位开始,码数字的对应值×该位的加权值,计算全部17位的乘积值相加除以11,所得的余数,即为第九位校验值
(注:素材和资料部分来自网络,供参考。请预览后才下载,期待你的好评与关注!)
例子:

如何生成国家电网条码校验码

如何生成国家电网条码校验码

国家电网标签上的条码是22位数据的Code128C条码,其中最后一位是校验码。

Code128C类型本身不带校验码的,这就需要用校验算法把校验码算出来,这个校验算法是MOD10。

批量生成含校验码的电网条码数据可以参考如下操作:
1、启动软件,点击条码批量生成工具,在弹出的设置框里,输入21位条码数据,编制规律选择“递增”,勾选“自校验”,算法选择“Mod10”。

2、生成数量里输入要一次生成的数据量,点击生成,带校验码的数据就生
成了。

点击“导出”可以把这些数据保存成TXT文本格式。

3、软件的模板里自带有国家电网标签模板,可以将上述生成的条码数据跟软件连接,自动批量生成电网标签。

校验码计算方法范文

校验码计算方法范文

校验码计算方法范文校验码是一种用于检验数据传输中是否出现错误的方法。

它通过对数据进行特定的运算,生成一个额外的数字或字符,将其附加在数据后面发送,接收方再利用同样的运算方法对接收到的数据进行校验,如果生成的结果与校验码匹配,则说明数据传输无误。

校验码有多种计算方法,下面将介绍几种常见的校验码计算方法。

1.奇偶校验码:奇偶校验码是最简单的校验方法之一,适用于英文字符的传输。

校验方法是计算字符中所有字节的二进制位中1的个数是否为奇数。

如果是奇数,校验位就设置为0,如果是偶数,校验位就设置为1、接收方在接收到数据后,再进行统计,校验位是否与计算结果匹配,如果不匹配,则说明出现了错误。

2.校验和:校验和是将数据中的所有字节进行相加,并将结果取补码作为校验码。

发送方计算校验和后,将其附加在数据中一起发送,接收方将数据中的所有字节相加并取补码,如果计算结果与接收到的校验码一致,则说明数据传输无误。

3.CRC校验码:CRC校验码是一种比较常见的校验方法,广泛用于数据通信中。

计算CRC校验码需要用到一个多项式,称为生成多项式。

发送方在发送数据时,通过对数据与生成多项式进行模2除法运算,得到余数(也就是校验码),将其附加在数据中一起发送。

接收方在接收到数据后,再次对接收到的数据与生成多项式进行模2除法运算,如果余数为0,则说明数据传输无误。

否则,说明出现了错误。

4.哈希校验码:哈希校验码是一种基于哈希算法的校验方法。

发送方将数据通过哈希算法处理得到一个固定长度的哈希值,将其附加在数据后发送。

接收方在接收到数据后,同样通过哈希算法计算数据的哈希值,并与接收到的哈希值进行比较,如果两者一致,则说明数据传输无误。

以上是常见的几种校验码计算方法,根据不同的应用场景和传输需求,选择适合的校验方法可以确保数据传输的准确性和完整性。

值得注意的是,校验码可以检测出一部分错误,但不能检测出所有错误,因此在实际应用中,还需要结合其他的错误检测和纠正方法来提高传输的可靠性。

15位和18位校验规则代码设置

15位和18位校验规则代码设置

15位和18位校验规则代码设置1. 15位和18位校验规则代码的概念和作用唯一识别信息号码是每个公民的标识,它包含了个人的身份信息,并在很多重要场合使用。

在我国,根据公安部颁布的《中华人民共和国居民唯一识别信息法》,唯一识别信息号码一般有15位和18位两种规则代码设置。

这两种唯一识别信息号码的设置规则是为了便于核对、验证和辨认身份信息的真伪。

其中,15位唯一识别信息号码是早期所采用的规则代码,而18位唯一识别信息号码则是根据国家有关法规和政策的调整而产生的。

在本文中,我将会对15位和18位校验规则代码的设置进行全面评估和深入研究,以帮助大家更好地理解这两种规则代码的作用和设计。

2. 15位校验规则代码的设置15位唯一识别信息号码由6位地区码、6位生日和3位顺序码组成。

其中,地区码代表了公民的户口信息所在地,生日是公民出生的年月日,顺序码是在同一地区、同一生日的人中的序号。

通过这种设置,唯一识别信息号码能够唯一地标识一个公民的身份信息,并便于相关部门辨认和核对。

在15位唯一识别信息号码的设置中,采用了一定的校验规则代码,以确保号码的有效性和真实性。

3. 18位校验规则代码的设置18位唯一识别信息号码是根据国家有关法规和政策的调整而产生的,它比15位唯一识别信息号码多出了一位校验码。

通过加入校验码,能够更好地保障唯一识别信息号码的唯一性和真实性,减少唯一识别信息号码被伪造或篡改的可能。

在18位唯一识别信息号码的设置中,校验规则代码更加严格和详细,以适应社会发展和信息安全的需求。

4. 15位和18位校验规则代码的对比在15位和18位唯一识别信息号码的校验规则代码中,都包含了地区码、生日和顺序码,以及校验码(18位唯一识别信息号码)。

但是,由于社会发展和法规的调整,18位唯一识别信息号码的校验规则更加详尽和严格,能够更好地保障身份信息的安全和真实性。

在使用唯一识别信息号码的时候,应当优先选择18位唯一识别信息号码,以确保个人身份信息的真实性和安全性。

条码计算方法

条码计算方法

商品条码数字的含义以条形码 6936983800013 为例此条形码分为4个部分,从左到右分别为:1-3位:共3位,对应该条码的693,是中国的国家代码之一。

(690--695都是中国的代码,由国际上分配)4-8位:共5位,对应该条码的69838,代表着生产厂商代码,由厂商申请,国家分配9-12位:共4位,对应该条码的0001,代表着厂内商品代码,由厂商自行确定第13位:共1位,对应该条码的3,是校验码,依据一定的算法,由前面12位数字计算而得到。

编辑本段编码规则唯一性:同种规格同种产品对应同一个产品代码,同种产品不同规格应对应不同的产品代码。

根据产品的不同性质,如:重量、包装、规格、气味、颜色、形状等等,赋予不同的商品代码。

永久性:产品代码一经分配,就不再更改,并且是终身的。

当此种产品不再生产时,其对应的产品代码只能搁置起来,不得重复起用再分配给其它的商品。

无含义:为了保证代码有足够的容量以适应产品频繁的更新换代的需要,最好采用无含义的顺序码。

条形码校验码公式:1.首先,把条形码从右往左依次编序号为“1,2,3,4……”从序号二开始把所有偶数序号位上的数相加求和,用求出的和乘3,再把所有奇数序号上的数相加求和,用求出的和加上刚才偶数序号上的数的和乘3的积,然后得出和。

再用大于或等于这个和的最小的10的倍数减去这个和,就得出校验码。

举个例子:此条形码为:977167121601X(X为校验码)。

1.1+6+2+7+1+7=242.24×3=723.0+1+1+6+7+9=244.72+24=965.100-96=4所以最后校验码X=4。

此条形码为9771671216014。

商品条形码的标准尺寸是37.29mm x 26.26mm,放大倍率是0.8-2.0。

当印刷面积允许时,应选择1.0倍率以上的条形码,以满足识读要求。

放大倍数越小的条形码,印刷精度要求越高,当印刷精度不能满足要求时,易造成条形码识读困难。

电网资产实物“ID”校验码计算方法

电网资产实物“ID”校验码计算方法

电网资产实物“ID ”校验码计算方法B.1 校验公式电网资产实物“ID”中各个位置上的代码值应满足公式(B.1)的校验:24i 10(mod 10)i ia W=⨯≡∑ (B.1)式中:i ——表示代码值从右至左包括校验码在内的位置序号,其取值范围为1≤i ≤24; a i ——表示第i 位置上的代码值;W i ——表示第i 位置上的加权因子,表B.1列出了实物 “ID”中各个位置上的加权因子W i 的数值。

表B.1 实物资产“ID ”中各个位置上的加权因子W i 数值B.2 校验码的计算当i = 1时,W i = W 1 = 1,公式(B.1)可表示为(B.2):241i 20(mod 10)i i a a W =+⨯≡∑ (B.2)式中:a 1——表示校验码字符值,其取值范围为0≤a 1≤9;i ——表示代码值从右至左包括校验码在内的位置序号,其取值范围为2≤i ≤24; a i ——表示第i 位置上的代码值;W i ——表示第i 位置上的加权因子,其取值参见表B.1。

满足公式(B.2)且取值范围要求的校验码数值可根据a 1与24i 2()(mod10)i i a W =⨯∑的换算关系算出,见表B.2。

表B.2 校验码字符值a 1与24i 2()(mod10)i i a W =⨯∑的换算关系电网资产实物“ID”校验码计算示例用于检查电网资产实物“ID”的准确性,采用模数10的加权算法计算得出。

以电网资产实物“ID”:010-01-010000101010101010-7为例,其计算流程参见表C.1。

反之,验证电网资产实物“ID”的方法:电网资产实物“ID”前23位(从左至右)加权乘积之和加校验码应被10整除。

表C.1 电网资产实物“ID”校验码计算示例。

条形码的校验规则

条形码的校验规则

EAN、UPC条码的校验位计算规则。

EAN、UPC使用的是Mod 10 校验位计算法,具体如下示范数据:01234567890 UPC-A条码1.将从左第一位开始奇数位相加。

0 + 2 + 4 + 6 + 8 + 0 = 202.将步骤1的结果乘以3。

20 X 3 = 603.将从左向右的偶数位相加。

1 + 3 + 5 +7 + 9 = 254.将步骤2与步骤3的结果相加。

60 +25 = 855.将步骤4的个位数取补,结果就是校验位,10 - 5 = 5如果步骤4的个位数为0,则校验位为0实际条码为 012345678905交叉25码校验位的计算规则。

交叉25码的校验位计算方法依然是 Mod 10 :1.字符个数为偶数时为:10的倍数-[(奇数位的数字之和<从左至右)+(偶数位数字之和)*3个位数]2.字符个数为奇数时为:10的倍数-[(偶数位的数字之和<从左至右)+(奇数位数字之和)*3个位数]如:514362的校验位为10*X-[(5+4+6)+3*(1+3+2)]=7(因加校验位后个数为奇数,故前面加0后为05143627。

76534的校验位为10*X-[(6+3)+3*(7+5+4)]=339码校验位的计算规则。

39码用的是Mod 43 校验计算法。

每个39码的字符有一个指定的值,如下表所示。

示范字符串为 :12345ABCDE/1.将所有的字符转换为相应的数值并相加。

1 +2 +3 +4 +5 + 10 + 11 + 12 + 13 +14 + 40 = 1152.将步骤1的结果除以43,取其余数。

115 / 43 = 2余 293.校验位是步骤2余数对应的字符。

余数 = 29.29 所对应的字符是 T.T 校验位.128码校验位的计算规则。

ISBN的编码规则。

EAN 的前三位必须是978,示范数据:9787801243881 (这是EAN码)1.按此公式计算: 7 X 10 + 8 X 9 + 0 X 8 + 1 X 7 + 2 X 6 + 4 X 5 + 3 X 4 +8 X 3 + 8 X 2 = 2332.233 除以 11 余 23.将步骤2的结果取11的补数11 - 2 = 9校验位为9步骤2余数为0时,校验位为 0,余数为1时,补数为10,用符号 X代替。

【IT专家】条形码识别(4)——校验

【IT专家】条形码识别(4)——校验

本文由我司收集整编,推荐下载,如有疑问,请与我司联系条形码识别(4)——校验2016/01/29 3508 1.目标EAN13 条形码一共有13 位,最后1 位是校验位,该位是通过前12 位按照一定的步骤计算出来的。

如果按照一定的步骤处理识别出的前12 位数据,如果计算结果和识别出的结果相等,识别正确;如果不相等,则重新识别或纠错再校验或提示识别失败。

2.校验码计算方法以下图所示的条形码举例说明:条形码的位数起始位为最右一位,即校验位,检验码计算方法如下:偶位数数值相加乘3((0+2+0+8+1+9)*3=60)不含校验位的奇位数相加(7+4+7+9+3+6=36)将前两步的结果相加(60+36=96)用10 减去上一步结果的个位数数值(10-6=4)上一步结果的个位数即为校验码(4) 3.实现需要注意的是Python 中list 下标从0 开始,且从左边开始,与条形码的起始位相反def check_bar_code(barCode): evens = barCode[11]+barCode[9]+barCode[7]+barCode[5]+barCode[3]+barCode[1] odds = barCode[10]+barCode[8]+barCode[6]+barCode[4]+barCode[2]+barCode[0] sum = evens * 3 + odds if barCode[12] == (10 - sum % 10) % 10: return True else: return False 4.总结截止本篇博文为止,理想状态的条形码检测目标已经实现,主要流程如下:载入图像图像预处理(灰度化、滤波,二值化等)扫描条形码,获得bar 和space 的宽度相似边距离译码输出结果还有几点不足:前置符默认为6,原则上应该按照左侧数字字符的奇偶性计算得出默认扫码方向为从左到右,原则上应该检测两侧数字字符的奇偶性,有奇有偶的那一侧为正向后续剪裁与处理部分有时间再分享出来,欢迎讨论 5.所有源代码#创建:2016/01/26#文件:BarCodeIdentification.py#作者:moverzp#功能:识别条形码import sysimport cv2DECODING_TABLE = {‘0001101’:0, ‘0100111’:0, ‘1110010’:0, ‘0011001’:1, ‘0110011’:1, ‘1100110’:1,‘0010011’:2, ‘0011011’:2, ‘1101100’:2, ‘0111101’:3, ‘0100001’:3, ‘1000010’:3,‘0100011’:4, ‘0011101’:4, ‘1011100’:4, ‘0110001’:5, ‘0111001’:5, ‘1001110’:5,‘0101111’:6, ‘0000101’:6, ‘1010000’:6, ‘0111011’:7, ‘0010001’:7, ‘1000100’:7,。

ISBN的构成及新旧ISBN校验码的计算方法

ISBN的构成及新旧ISBN校验码的计算方法

ISBN的构成及新旧ISBN校验码的计算⽅法ISBN的构成及新旧ISBN校验码的计算⽅法ISBN号码由10位数字组成,并以三条线段加以分割,每组数字都有不同的含义。

第⼀组:区位代码 0,1:英⽂ 2:法⽂ 3:德⽂ 4:⽇⽂ 5:俄⽂ 7:中⽂第⼆组:出版社代码由各国的ISBN码分配中⼼,分给各个出版社。

第三组:书序码该出版物代码,由出版社具体给出。

第四组:计算机校验码只有⼀位,从0到10,10由X代替。

校验码的计算⽅法1. 假设某ISBN号码前9位是:7-309-04547;2. 计算加权和S=7×10+3×9+0×8+9×7+0×6+4×5+5×4+4×3+7×2 = 226;3. 计算S÷11的余数M = 226 mod 11 = 6;4. 计算11-M的差N = 11 − 6 = 5· 如果N=10,校验码是字母“X”;· 如果N=11,校验码是数字“0”;· 如果N为其他数字,校验码是数字N。

所以,本书的校验码是5。

ISBN中⼼于2004年决定在ISBN的基础上再添加⼀组三位数字在最前,即將现有的10位书号前⾯加上“978”及重新计算稽核号,以转换为新的转换为新的13位格式。

该计划将于2007年实施。

注释13位ISBN的最后⼀位校验位的加权算法与10位ISBN的算法不同。

具体算法是:⽤1分别乘ISBN的前12位中的奇数位,⽤3乘以偶数位,成绩之和以10为模,⽤10减去此模,即可得到校验位的值,其值范围应该为0-9。

1. 假设某13位ISBN号码前12位是:987-7-309-04547;2. 位置为123-4-567-89(10)(11)(12)3. 计算加权和S=9×1+8×3+7×1+7×3+3×1+0×3+9×1+0×3+4×1+5×3+4×1+7×3 = 117;4. 计算S÷10的余数M = 117 mod 10 = 7;5. 计算10-M的差N = 10 − 7 = 3 (如果10-M的值为10则校验码取0)6. 所以,本书的13位ISBN的校验码是3。

IMEI第十五位校验码的计算方法

IMEI第十五位校验码的计算方法

IMEI第⼗五位校验码的计算⽅法1、什么是IMEI?IMEI为TAC + FAC + SNR + SP。

IMEI(International Mobile Equipment Identity)是国际移动设备⾝份码的缩写,国际移动装备辨识码,是由15位数字组成的"电⼦串号",它与每台⼿机⼀⼀对应,⽽且该码是全世界唯⼀的。

每⼀只⼿机在组装完成后都将被赋予⼀个全球唯⼀的⼀组号码,这个号码从⽣产到交付使⽤都将被制造⽣产的⼚商所记录。

其组成为:1、前6位数(TAC)是"型号核准号码",⼀般代表机型。

2、接着的2位数(FAC)是"最后装配号",⼀般代表产地。

3、之后的6位数(SNR)是"串号",⼀般代表⽣产顺序号。

4、最后1位数(SP)通常是"0",为检验码,⽬前暂备⽤。

IMEI码贴在⼿机背⾯的标志上,并且读写于⼿机内存中。

它也是该⼿机在⼚家的"档案"和"⾝份证号"。

------TAC------------ --FAC- ------SNR-----------D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D03 5 3 1 14 0 0 8 0 9 6 3 6 6计算IMEI验证码的步骤:1、把IMEI的奇数位数*2,如:D1,D3,D5,……D13D13 D11 D9 D7 D5 D3 D110 2 8 0 0 12 122、将计算得到的7个奇数位数字分别以个位数相加(如果得到的是个两位数,则⼗位和个位分别当成个位数来相加),再加上7个偶数位数字,如:D2,D4,D6……D143+1+0+3+2+1+8+0+0+8+0+9+1+2+3+1+2=443、如果第2步计算得到的数字末位为0,则验证码数字为0。

如果第2步计算结果末位数不是0,则以⼤于第2步计算结果的以0结尾的双位整数减去第2步的计算结果,所获得的个位数即为验证码。

国际通用商品条码校验的计算

国际通用商品条码校验的计算

国际通用商品条码校验的计算
王永良
【期刊名称】《电工标准与质量》
【年(卷),期】1992(000)003
【总页数】3页(P38-40)
【作者】王永良
【作者单位】无
【正文语种】中文
【中图分类】F716
【相关文献】
1.识别商品条码的方法——计算校验码 [J], 罗斯旦
2.商品条码校验码的计算方法 [J], 吴砚峰;盛舒蕾;;
3.在追溯中商品条码助企业诚信天下——商品条码企业质量信用体系建设 [J], 廖权虹
4.印刷商品条码时,为了配合商品包装,可以把条码符号缩小或放大吗? [J],
5.已获得中国商品条码系统成员资格的企业,应怎样为其商品编制条码? [J],
因版权原因,仅展示原文概要,查看原文内容请购买。

图书ISBN构成及其校验码的计算方法包括最新13位ISBN校验码的计算方法

图书ISBN构成及其校验码的计算方法包括最新13位ISBN校验码的计算方法

图书ISBN构成及其校验码的计算方法包括最新13位ISBN校验码的计算方法前两年搞了书业,对这个也比较熟悉,最近出版社的isbn号好像都加了前缀978,而且校验码的计算方法也有所变化。

ISBN的构成ISBN号码由10位数字组成,并以三条线段加以分割,每组数字都有不同的含义。

第一组:区位代码0,1:英文 2:法文 3:德文 4:日文 5:俄文 7:中文第二组:出版社代码由各国的ISBN码分配中心,分给各个出版社。

第三组:书序码该出版物代码,由出版社具体给出。

第四组:计算机校验码只有一位,从0到10,10由X代替。

•校验码的计算方法1.假设某ISBN号码前11位是:7-309-04547;2.计算加权和S:S=7×10+3×9+0×8+9×7+0×6+4×5+5×4+4×3+7×2 = 226;3.计算S÷11的余数M:M = 226 mod 11 = 6;4.计算11-M的差N:N = 11 − 6 = 5•如果N=10,校验码是字母“X”;•如果N=11,校验码是数字“0”;•如果N为其他数字,校验码是数字N。

所以,本书的校验码是5。

•ISBN与EANEAN:European Article Number(欧洲商品号),ISBN中心于2004年决定在ISBN的基础上再添加一组三位数字在最前,即將現有的10位書號前面加上"978"及重新計算稽核號,以轉換為新的13位格式。

该计划将于2007年实施。

•注释13位ISBN的最后一位校验位的加权算法与10位ISBN的算法不同。

具体算法是:用1分别乘ISBN的前12位中的奇数位,用3乘以偶数位,成绩之和以10为模,用10减去此模,即可得到校验位的值,其值范围应该为0-91.假设某13位ISBN号码前15位(包含‘-’符号)是:987-7-309-04547;2.位置为123-4-567-89(10)(11)(12)3.计算加权和S:S=9×1+8×3+7×1+7×3+3×1+0×3+9×1+0×3+4×1+5×3+4×1+7×3 = 117;4.计算S÷10的余数M:M = 117 mod 10 = 7;5.计算10-M的差N:N = 10 − 7 = 3 (如果10-M的值为10则校验码取0)6.所以,本书的13位ISBN的校验码是3。

校验码的计算

校验码的计算

校验码的计算
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”没有发生错误!。

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