每本书的封底都有一串号码,比如7-5600-3879-4,它叫做"国际标准书号"(International Standard Book Number,缩写为ISBN)。它是全世界图书的编码,用来唯一代表一本书。
早期的ISBN一共有10位,现在扩展到了13位。目前,两种格式的ISBN通用。从组成上看,13位的ISBN可以分为5个区,10位的ISBN可以分成4个区。除了第一区以外,其他四个区两者相同。
第一区 EAN·UCC前缀
这个区一共包含3位数字,为13位ISBN所独有,10位ISBN没有这部分。
国际标准化组织规定,从2007年1月1日起,国际标准书号升级为13位。现有的出版机构在10位ISBN前加上一个三位数字的前缀"978",新成立的出版机构则加上前缀"979"。这是为了与国际条形码编码EAN·UCC系统接轨,因为超市中商品的条形码都为13位。
第二区 组区号
在13位ISBN中,这个区从第4位开始。在10位ISBN中,这个区从第1位开始。
这部分表明这本书是哪个国家出版的。0或1表示英语国家,2表示法语国家,3表示德语国家,4表示日本,5表示俄语国家,6表示伊朗,7表示中国大陆,89表示韩国,957和986表示台湾,962和988表示香港,99936表示不丹。全部的国家和地区编码请看这里。
第三区 出版者号
这个区是出版商代码,长度为2-7位,用于识别出版社,由各国出版主管机构分配。
第四区 出版序号
这个区是出版物序号,由各个出版商分配。
第五区 校验码
这个区是一个个位数的校验码,是ISBN的最后一位,用来核对前面的数字。13位ISBN和10位ISBN计算方法不同。
10位ISBN校验码计算方法
它的计算方法是:用1-9这9个数依次乘以前面的9位数,然后求它们的和除以11的余数。如果余数为10,则校验码用"X"表示,如果计算结果为11,则校验码用"0"表示。
比如,开头我提到的那个国际书号7-5600-3879-4,它的前9位数是7、5、6、0、0、3、8、7、9。它的校验码的计算如下:
1x7+2x5+3x6+4x0+5x0+6x3+7x8+8x7+9x9
= 7+10+18+0+0+18+56+56+81
= 246
= 242+4
= 22x11+4
因此,这本书的校验码就是4。
13位ISBN校验码计算方法
13位ISBN的校验码计算规则是这样的:前12位数依次乘以1和3,然后求它们的和除以10的余数,最后用10减去这个余数,就得到了校验码。如果余数为0,则校验码为0.
比如,7-5600-3879-4在13位ISBN中,就是978-7-5600-3879-4。它的校验码计算方法如下:
9x1+7x3+8x1+7x3+5x1+6x3+0x1+0x3+3x1+8x3+7x1+9x3
= 9+21+8+21+5+18+0+0+3+24+7+27
= 143
= 140+3
= 14x10+3
10-3=7
所以,在13位ISBN中,这本书的校验码应该为7。好在原有图书的10位ISBN在新规则下可以保持不变。
下面这张图就是13位ISBN的条形码,右边另外5位的条形码则表示书的价格。
ISBN在国际上是一个非强制规定,就是说出版商完全可以出版没有ISBN的出版物。但是在中国,这却是一个强制性规定。没有书号,就不是合法出版物。这完全就是另外一个故事了。
[参考链接]
(完)
UPDATE (2007.6.1)
10位ISBN的另一种计算方法
C10表示第10位校验码,C1-C9表示0~9位数字。
式中的MOD为求余函数。
当MOD函数值为1(C10=10)时,校验码以X表示;当MOD函数值为0(C10=11)时,校验码仍以0表示。
(完)
Frances 说:
博主您好,看了您的这篇文章获益不少,但是有个地方我没弄明白,文中说“下面这张图就是13位ISBN的条形码,右边另外5位的条形码则表示书的价格。”右边另外5位是指“00725”吗?或者仅仅是条码,扫描入条码,才能调出数据库中事先输入的价格?
2007年6月 7日 10:30 | # | 引用
Ruan YiFeng 说:
00725就是右边条码的内容,可以直接从条码上读出书的价格,或者也可以先读出isbn,然后从数据库中调出价格。
2007年6月 7日 23:06 | # | 引用
Frances 说:
谢谢,我开始还以为“00725”表示书价是7.25美元呢,呵呵。
2007年6月 8日 13:55 | # | 引用
SO ME PIG 说:
请问10位ISBN和13位ISBN如何快速换算?
2007年7月 4日 16:28 | # | 引用
Ruan YiFeng 说:
估计不行,两种校验码计算方法不同。上文中的方法只适用于10位ISBN。
2007年7月 5日 01:22 | # | 引用
花花 说:
9787300060347的后10位数代表什么含义啊?
2007年9月18日 21:14 | # | 引用
黄泽世 说:
看不懂!!!!!!!
2007年12月26日 19:18 | # | 引用
Nancy 说:
请问10位ISBN和13位ISBN如何快速换算?
2007年12月31日 18:40 | # | 引用
罗中骏 说:
前几个数字一组啊???
2008年1月 3日 19:44 | # | 引用
AML 说:
我的书上有13位,郁闷.....
2008年1月10日 20:21 | # | 引用
过路者 说:
对于我这个图书发行人又是一个编成爱好者来说,您所讲的内容不亚于了解了天书中部分秘密。在这里我表示真诚的感谢。
2008年3月31日 14:16 | # | 引用
张子银 说:
好,我想请问下,10位ISBN的条码和13ISBN的条骂有什么不同呢,就是我能根据这个条码来判断是该生成10位ISBN呢,还是该生成13位ISBN
2008年5月26日 11:03 | # | 引用
a691662 说:
谢谢 很有用 可以造假
2008年8月29日 13:36 | # | 引用
李晓华 说:
能不能把生成书号的软件发布在网上,这样大家都可以参考的用!!谢谢了!!
2008年9月21日 17:42 | # | 引用
冰儿萧萧 说:
谢谢 对我很有帮助
2008年10月19日 09:55 | # | 引用
精灵 说:
获益颇深!
2010年5月11日 16:39 | # | 引用
chuan 说:
10位ISBN校验码 算法错了吧?
应该从左到右 10 - 2
2014年9月11日 15:37 | # | 引用
青春年华 说:
您好,请问如何从8位号转换为13位号呢?
2016年11月 7日 15:56 | # | 引用