ISBN的构成及新旧ISBN校验码的计算方法
2009-07-13 09:03阅读:
ISBN的构成及新旧ISBN校验码的计算方法
ISBN号码由10位数字组成,并以三条线段加以分割,每组数字都有不同的含义。
第一组:区位代码
0,1:英文
2:法文
3:德文
4:日文
5:俄文
7:中文
第二组:出版社代码
由各国的ISBN码分配中心,分给各个出版社。
第三组:书序码
该出版物代码,由出版社具体给出。
第四组:计算机校验码
只有一位,从0到10,10由X代替。
校验码的计算方法
- 假设某ISBN号码前9位是:7-309-04547;
-
计算加权和S=7×10+3×9+0×8+9×7+0×6+4×5+5×4+4×3+7×2
= 226;
- 计算S÷11的余数M = 226 mod 11 =
6;
- 计算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。
- 假设某13位ISBN号码前12位是:987-7-309-04547;
- 位置为123-4-567-89(10)(11)(12)
-
计算加权和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;
- 计算S÷10的余数M = 117 mod 10 =
7;
- 计算10-M的差N = 10 − 7 =
3
(如果10-M的值为10则校验码取0)
- 所以,本书的13位ISBN的校验码是3。