10位ISBN和13位ISBN校验码的计算方法[转] |
您所在的位置:网站首页 › isbn号怎么算 › 10位ISBN和13位ISBN校验码的计算方法[转] |
10位ISBN校验位的计算方法:(模数11 余数 0-10 差数 1-11 校验位:0-9, x(差数为10)) 以ISBN 7-81090-021-?为例,其计算如下 1) 取ISBN前9位数字 7 8 1 0 9 0 0 2 1 2) 取各位数字所对应的加权值(10~2) 10 9 8 7 6 5 4 3 2 3) 将各位数字与其相应的加权值依次相乘 70 72 8 0 54 0 0 6 2 4) 将乘积相加,得出和数 70+72+8+0+54+0+0+6+2=212 5) 用和数除以模数11,得出余数 212÷11=19余3 6) 模数11减余数,所得差数即为校验码的值 11–3=8 7) 将所得校验码数值放在构成ISBN的基本数字的最右边 ISBN 7-81090-021-8 如果差数为10。校验码则以大写英文字母“X”表示。如果余数是“0”,则校验码为“0”。 余数、差数和校验位的关系 余数: 0 1 2 3 4 5 6 7 8 9 10 差数: 11 10 9 8 7 6 5 4 3 2 1 校验位: 0 X 9 8 7 6 5 4 3 2 1 13位ISBN的校验位计算方法(模数10 余数 0-9 差数 1-10 校验位:0-9) 13位ISBN校验位改变了10位ISBN的计算方法,采用奇数偶数位算法,模数也改为10,所以新的ISBN中将不出现X校验码。13位ISBN的最后一位数字为校验位,数值范围由0至9,其计算方法如下 : 方法1 (1) 用1分别乘书号的前12位中的奇数位, 用3乘以偶数位:(位数从左到右为13位到2位) (2) 将各乘积相加,求出总和 ; (3) 将总和除以10,得出余数; (4) 将10减去余数后即为校验位。如相减后的数值为10,校验位则为0。 例子: 前缀号、 国别语种识别代号、出社识别代号、 书名代号、 校验位 ISBN 9 7 8- 7- 8 1 0 9 0- 0 2 1- ? 加权数乘 1 3 1 3 1 3 1 3 1 3 1 3 9 21 8 21 8 3 0 27 0 0 2 3 = 102 102÷10= 0 余数=2 校验位= 10-2=8 有效的ISBN 是 ISBN 978-7-81090-021-8 方法2 由于模数变为10,根据模数尾数计算法则,我们可以简化计算方法,采用去整存零(个位)法计算方法如下 1. 将ISBN的偶位数按如下原则改写: 0 仍为 0 1 改成 3 2 改成 6 3 改成 9 4 改成 2 (4x3=12 舍10取2,以下同) 5 改成 5 6 改成 8 7 改成 1 8 改成 4 9 改成 7 然后自前往后,或从后到前一次算加法,逢整取个位数,然后再用这个个位数与下一个数相加,并再次逢整取个位,依次类推,直到最后。 978-7-81090-021-? 改成 918-1-83070-023-? 计算:9+1=10取0+8=8取8+1=9取9+8=17取7+3=10取0+0=0取0+7=7取7+0=7取7+0=7取7+2=9取9+3=12取2 校验位为=10-2=8 有效的ISBN 是 ISBN 978-7-81090-021-8 方法3 示范数据: 9 7 8- 7- 8 1 0 9 0- 0 2 1- ? 代码位置:13 12 11 10 9 8 7 6 5 4 3 2 1 除位数1外; 所有偶数位的数字代码求和 取末位数为a。 将a乘以3 取末位数为b。 所有奇数位的数字代码求和 取末位数为c。 将b和c相加求和 取末位数为d(因模数为10,所以余数即末位数d)。 用10减去d即为校验位数值。 7+7+1+9+0+1 = 25 取末位数为a=5 5*3 = 15 取末位数为b=5 9+8+8+0+0+2 = 27 取末位数为c=7 5+7 = 12 取末位数为d=2 (余数) 10-2= 8 差数为校验位: 8 有效的ISBN 是 ISBN 978-7-81090-021-8 余数、差数和校验位的关系 余数: 0 1 2 3 4 5 6 7 8 9 差数: 10 9 8 7 6 5 4 3 2 1 校验位: 0 9 8 7 6 5 4 3 2 1 新的ISBN 号码与条形码一样 13位新版的国际标准图书编号标准(ISBN)于2007年1月1日起实施 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |