国际标准书号ISBN的学习

标签: 程序设计 ISBN | 发表时间:2012-02-23 19:58 | 作者:标点符
出处:http://www.biaodianfu.com

国际标准书号(International Standard Book Number)简称ISBN,是国际通用的图书或独立的出版物(除定期出版的期刊)代码。出版社可以通过国际标准书号清晰地辨认所有非期刊书籍。一个国际标准书号只有一个或一份相应的出版物与之对应。新版本如果在原来旧版的基础上没有内容上太大的变动,在出版时也不会得到新的国际标准书号码。当平装本改为精装本出版时,原来相应的国际标准书号号码也应当收回。

ISBN由哪几部分构成?

中国标准书号由标识符“ISBN”和13位数字组成。其中13位数字分为以下五部分:

  1. EAN UCC前缀
  2. 组区号
  3. 出版者号
  4. 出版序号
  5. 校验码 

ISBN各部分的含义是什么?

EAN•UCC前缀 国际物品编码(EAN•UCC)系统专门提供给国际ISBN管理系统的产品标识编码。中国的EAN.UCC前缀是978和979,目前使用的前缀为978,预留979前缀。

组区号 它由国际ISBN管理机构分配。国际ISBN管理机构为中国分配的组区号为“7”。此组区号设置范围内的允许出版量100 000 000。

出版者号 标识具体的出版者。其长度为2至7位,由中国ISBN管理机构设置和分配。

出版序号 由出版者按出版物的出版次序管理和编制。

校验码 中国标准书号数字的最后一位,采用模数10加权算法计算得出。书写或印刷中国标准书号时,标识符“ISBN”使用大写英文字母,其后留半个汉字空,数字的各部分应以半字线隔开。

例如:ISBN EAN•UCC前缀-组区号-出版者号-出版序号-校验码

示例:ISBN 978-7-115-14554-3

组区号、出版者号和出版序号共9位数字,但三部分中的每一部分的位数均是可变的。在组区号不变的情况下,设置出版者号后,即可推导出所含有的出版量:

出版者号设置范围/每一出版者号含有的出版量 

  • 00~09/1 000 000
  • 100~499/100 000
  • 5000~7999/10000
  • 80000~89999/1000
  • 900000~989999/100
  • 9900000~9999999/10

由上可知,出书量越大的出版社,出版者号越小。

校验码是怎么计算的?

校验码采用模数10的加权算法计算得出。下面以《中国准书号》国家标准中示例讲解一下校验码的计算方法。

以ISBN 978-7-5064-2595-7为例,其计算方法如下:

  1. 取ISBN前12位数字
  2. 取各位数字所对应的加权值
  3. 将各位数字与其相对应的加权值依次相乘
  4. 将乘积相加,得出和数
  5. 用和数除以模数10,得出余数
  6. 模数10减余数,所得差即为校验码
  7. 将所得校验码放在构成中国标准书号的基本数字的末端
  8. 如果步骤5所得余数为0,则校验码为0

关于isbn校验等的操作,目前有很多的程序支持。下面几个地址可以参考下:

http://pypi.python.org/pypi/biblio.webquery/

http://pypi.python.org/pypi/book.isbn

Related posts:

  1. Scrapy在Windows上的安装笔记
  2. 编程语言介绍之Python
  3. 《Learn Python The Hard Way》学习笔记


相关 [国际标准 书号 isbn] 推荐:

国际标准书号ISBN的学习

- - 标点符
国际标准书号(International Standard Book Number)简称ISBN,是国际通用的图书或独立的出版物(除定期出版的期刊)代码. 出版社可以通过国际标准书号清晰地辨认所有非期刊书籍. 一个国际标准书号只有一个或一份相应的出版物与之对应. 新版本如果在原来旧版的基础上没有内容上太大的变动,在出版时也不会得到新的国际标准书号码.

C++0x 终成国际标准

- netcasper - LinuxTOY
C++0x 终于获得位于日内瓦的国际标准组织认可成为新标准. C++0x 的标准化过程将在今年内完成,届时将以 C++11 的名字呈现出来. 目前,包括 GCC 在内的各类编译器已经对它提供了较为完善的支持. 消息来源: Phoronix. 收藏到 del.icio.us |.

C++0x已获通过正式成为国际标准

- ji - cnBeta.COM
据Herb Sutter报告,C++0x最终国际投票已于周三结束,所有国家都投出了赞成票,C++0x已经毫无疑义地成为正式国际标准. 虽然接下来还需要数月时间出版发布,但标准本身已经完全正式成立了.

4G国际标准正式公布 TD-LTE-Advanced入选

- - cnBeta.COM
TD-LTE-Advanced是我国自主知识产权3G标准TD-SCDMA的发展和演进技术. 我国第三代移动通信系统TD-SCDMA历经 10余年的磨砺,于2009年正式商用,产业规模不断壮大,形成了覆盖系统、终端、芯片、仪表等各环节完整的产业链. 与此同时,随着国内规模技术试验的顺利进展,国际电信运营企 业和制造企业纷纷看好TD-LTE发展前景,目前,日本、沙特阿拉伯、巴西、波兰、印度、美国等国家的运营商已经开始或计划商用、预商用TD-LTE网 络.

HTTP严格传输协议成为国际标准

- - Solidot
被认为能帮助启用HTTPS的网站适应多种不同类型攻击的Web安全机制已批准成为国际标准. HTTP Strict Transport Security(HSTS)允许网站声明只允许HTTPS加密访问,防止黑客强行让用户通过HTTP访问或滥用HTTPS实现错误而危害内容完整性. 负责制定和推广标准的互联网工程任务组(IETF)已发布了HSTS的官方规则RFC 6797.