资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2,#,一维码编码方式及校验码计算,王霖沼,1,2,一维码编码方式及校验码计算王霖沼12,一维码种类,ENA,码,ENA-13,码,ENA-8,码,UPC,码,交叉二五码,三九码,Code128,2,2024/8/9,一维码种类ENA码22023/8/20,ENA,码,ENA,码是国际物品编码协会在全球推广应用的商品条码,是定长的纯数字型条码,它表示的字符集为数字,09,。,在实际应用中,,EAN,码有两种版本,标准版和缩短版。标准版是由,13,位数字组成,称为,EAN-13,码或长码;缩短版,EAN,码是由,8,位数字组成,称为,EAN-8,码或者短码。,3,2024/8/9,ENA码 ENA码是国际物品编码协会,ENA-13,码,ENA-13,码有黑白相间的条形线阵列和表示其代码的,13,位数字构成。每个代码由两个黑条码和两个白条码相间表示,并且有,7,个单位模块宽度。一个黑线条,(,或白线,),条的宽度可以是一个模块,也可以是两个模块、三个模块、四个模块,一个字符黑线条和白线条的宽度之和为七个模块,例如一个两个单位宽度的黑色模块读作,11,,三个单位宽度的白色模块读作,000,。,4,2024/8/9,ENA-13码 ENA-13码有黑白相,ENA-13,码结构图,5,2024/8/9,ENA-13码结构图52023/8/20,ENA-13,码各组成部分,起始符,:,条形码符号的第一位字符是起始符,它特殊的条空结构用于识别条形码符号的开始。由,3,个模块组成。,左侧数据符,:,位于中间分隔符的左侧,表示一定信息的条码字符,由,42,个模块组成。,中间分隔符,:,位于条码中间位置的若干条与空,用于区分左右侧数据,有,5,个模块构成。,右侧数据符,:,位于中间分隔符右侧,表示一定信息的条码字符,由,35,个模块组成。,条码校验符,:,表示校验码的条码字符,用以校验条码符号的正确与否,由,7,个模块组成。,终止符,:,条形码符号的最后一位字符是终止符,它的特殊的条空结构用于识别条形码符号的结束,由,3,个模块组成。,6,2024/8/9,ENA-13码各组成部分起始符:条形码符号的第一位字符是起始,ENA-13,码编码方式,起始符、终止符的编码是相同的,都是用等宽的两个黑线条加一个白线条组成,分别是黑,-,白,-,黑。如规定一个模块宽度的黑条对应,1,,白条对应,0,,则起始符和终止符的编码为,101,,中间分隔符的编码为,01010,。这三种符号的条空排列是固定不变的,比其他条空的长度略长。,7,2024/8/9,ENA-13码编码方式 起始符、终止,前置码读取方法,左侧数据符有奇、偶性之分,它的奇、偶排列取决于前置符,所谓前置符是国别识别码的第一位,F1,,该位以消隐的形式隐含在左侧六位字符的奇偶性排列中,这是国际物品编码标准版的突出特点。前置符与左侧六位字符的奇偶排列组合方式的对应关系见下一页,实际上从图里面这种编码规定看出,,F1,与这种组合方式是一一对应固定不变的。例如,:,中国的国别识别码为“,690-692”,,因此它的前置符为“,6”,,左侧数据符的奇偶排列为“,ABBBAA”,8,2024/8/9,前置码读取方法左侧数据符有奇、偶性之分,它的奇、偶排列取决于,前置码和左侧数据奇偶性关系,9,2024/8/9,前置码和左侧数据奇偶性关系92023/8/20,ENA-13,码编码,10,2024/8/9,ENA-13码编码102023/8/20,ENA-13,码计算方法,将数字码从右往左排序(包括校验码)从序号,2,开始,将所有偶数位的数字代码求和,得出,S1,;,S1*3=S2,;,从序号,3,开始,将所有奇数位的数字求和,得出,S3,;,S3+S2=S4,;,S5,为,S4,的个位数,,C=10-S5,,得到校验码,C,的值。比对校验码和,C,是否相同,相同则正确。,11,2024/8/9,ENA-13码计算方法 将数字码从右往左排序(包括,ENA-13,码实例,12,2024/8/9,ENA-13码实例122023/8/20,计算过程,从右往左排列数据,3505408413096,S1=5+5+0+4+3+9=26,S2=S1*3=78,S3=0+4+8+1+0+6=19,S4=78+19=97,S5=7,D=10-7=3,与校验码一致,所以正确,EAN-13,条形码的编码,13,2024/8/9,计算过程从右往左排列数据3505408413096EAN-1,ENA-8,码,ENA-13,码有黑白相间的条形线阵列和表示其代码的,8,位数字构成。左边数据为,4,个,右边数据,3,个加一个校验码。验证计算的时候只需要在,8,位数前面加五个,0,,然后按照,ENA-13,码的计算方法计算即可。,14,2024/8/9,ENA-8码 ENA-13码有黑白相,UPC,码的构成,UPC,由,11,位数字的通用产品代码和,1,位校验码组成。产品代码的第,1,位数字为编码系统字符;中间,5,位数字表示制造商号,后,5,位数字为产品代码。,UPC,码共有,A,、,B,、,C,、,D,、,E,等五种版本。,UPC-A,也就是,UPC,标准码,,UPC-E,则是,UPC,缩短码,缩短码一般用在商品包装比较小也就是条码位置不够的商品上。,15,2024/8/9,UPC码的构成UPC由11位数字的通用产品代码和1位校验码组,UPC,码分类,16,2024/8/9,UPC码分类162023/8/20,UPC,码编码方式,UPC,码采用四种元素宽度,每个条或者空是,1,、,2,、,3,或,4,倍单位元素宽度,黑色代码为二进制中的“,1,”,白色代码为二进制中的“,0,”,每个单位元素宽度表示一个二进制数。,UPC-A,码是一种特殊的,ENA-13,码,,UPC-A,码与,ENA-13,码中的“,N1=0,”兼容。,17,2024/8/9,UPC码编码方式 UPC码采用四种,UPC,码算法,检查码的算法,从国别码开始自左至右取数,设,UPC-A,各码代号如下:,N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 C,则检查码之计算步骤如下:,C1=,(,N1+N3+N5+N7+N9+N11,),3 C2=N2+N4+N6+N8+N10,CC=(C1+C2),取个位数,C(,检查码,)=10-CC,(,若值为,10,,则取,0),18,2024/8/9,UPC码算法检查码的算法182023/8/20,交叉二五码,交叉二五码是多用于仓储、运输过程的一类条码。支持,0-9,十个纯数字字符。不限制条码内容的长度。可以条、空均代码条码字符,属于双向条码。交叉二五码具有自动校验功能,当有检验位的时候,校验位由前面字符经过一定的算法得到。交叉二五码在生成条码时规定条码字符必须是偶数位。如果是奇数位则在字符左侧自动添加一个,0,。,19,2024/8/9,交叉二五码 交叉二五码是多用于仓储、运,交叉二五码起始符与终止符是固定的,起始符为,2,条,2,空,均为窄。所以用二进制表示为“,0000”,;终止符为,2,条,1,空(其中第一条为宽单元),用二进制表示为“,100”,。在交叉二五码中,5,个“条”单元或者是,5,个“空”单元,表示一个条码字符。条空单元有“窄”“宽”之分,条码中的“宽”单元表示二进制中的“,1”,;“窄”单元表示二进制中的“,0”,20,2024/8/9,交叉二五码起始符与终止符是固定的,起始符为2条2空,均为窄,二五码编译示意图,21,2024/8/9,二五码编译示意图212023/8/20,交叉二五码二进制表示,22,2024/8/9,交叉二五码二进制表示222023/8/20,校验码计算方法,交叉二五码的校验计算方式为:,当条码字符个数为偶数位时,校验位的计算方法为:,10,的倍数,-(,奇数位的数字之和,+(,偶字之和,)*3,的个位数,比如说条码字符为,236851,的偶数位字符,校验位计算法方法为:,奇数位之和,=2+6+5=13,;偶数位之和*,3=,(,3+8+1,)*,3=36,步骤,3,中两值之和取个数位应该为:,13+36=49,取个数位为,9,最终得到校验位为:,10-9=1,,校验位为,1,。,23,2024/8/9,校验码计算方法交叉二五码的校验计算方式为:232023/8/,校验码计算方法,当条码字符个数为偶数位时,校验位的计算方法为:,10,的倍数,-(,偶数位的数字之和,)+,(奇数位数字之和)*,3,取个位数,比如说,51436,,它的校验位计算方法就是:,偶数位之和,=1+3=4,;奇数位之和*,3=,(,5+4+6,)*,3=45,;,步骤,3,中的两值之和:,4+45=49,取个位数为:,9,。,最终得到,校验位,为:,10-9=1,。校验位为,1,。,24,2024/8/9,校验码计算方法当条码字符个数为偶数位时,校验位的计算方法为:,三九码,三九码仅有两种单元宽度,分别为宽单元和窄单元,即共有四种单元,粗黑线、细黑线、粗白线、细白线。,每个字符由,5,条黑线和黑线之间的,4,条白线条构成,字符间隙是空白线,字符间隙的宽度最大可为细线的,10,倍,通常取,1-2,倍,如果太大,识别率下降,甚至可能因码形对称造成误码。每个条码字符共,9,个单元,其中有,3,个宽单元和,6,个窄单元,共包括,5,个条和,4,个空。粗细线比例最好在,23,。,39,码以“*”字符开始和结束,,39,码可双向扫描。,25,2024/8/9,三九码 三九码仅有两种单元宽度,可编码的字符集:,1)A,Z,和,0,9,的所有数字字母;,2),特殊字符:空格、“,$,”、“,%,”、“,+,”、“,-,”、“,.,”、“,/,”;,3),起始符,/,终止符。,26,2024/8/9,可编码的字符集:262023/8/20,三九码基本结构,粗黑线代表,2,,细黑线代表,1,,粗白线代表,b,,细白线代表,a,。,39,码无固定条长,双向可编译,条码密度取决于条码字符间隔。可以选择是否启用校验码功能,启用的话会增加解码时间。,27,2024/8/9,三九码基本结构粗黑线代表2,细黑线代表1,粗白线代表b,细白,三九码字符集表,28,2024/8/9,三九码字符集表282023/8/20,29,2024/8/9,292023/8/20,39,码校验码计算方法,a),为每一个数据字符分配一个数值,如图所示。,b),计算出符号所有数据字符数值的总和。,c),将数值的总和除以,43,。,d),步骤,c),所得的余数值在表中对应的字符就是符号校验字符。,30,2024/8/9,39码校验码计算方法a)为每一个数据字符分配一个数值,如图,实例,对于“,CODE 39,”数据 计算校验码过程,31,2024/8/9,实例对于“CODE 39”数据 计算校验码过程312023/,Code128,CODE128,码是广泛应用在企业内部管理、生产流程、物流控制系统方面的条码码制,,CODE128,码可表示从,ASCII 0,到,ASCII 127,共,128,个字符,故称,128,码。其中包含了数字、字母和符号字符。由于,CODE128,码可表示较全面的字符(数字、字母和符号),在同样长度的条码中可容纳的字符长度较长(高密度),条码长度与字符串长度无明显的敏感性,所以,CODE128,码是企业内部管理系统最为广泛使用的条码码制。,32,2024/8/9,Code128CODE128码是广泛应用在企业内部管理、生产,Code128,33,2024/8/9,Code128332023/8/20,Code128,码特性,1,、具有,A,、,B,、,C,三种不同的编码类型,可提供标准,ASCII,中,128,个字元的编码使用;,2,、允许双向扫描;,3,、可自行决定是否加上检验位;,4,、条码长度可调,但包括开始位和结束位在内,不可超过,232,个字元;,5,、同一个,128,码,可以由,A,、,B,、,C,三种不同编码规则互换,既可扩大字元选择的范围,也可缩短编码的长度。,34,2024/8/9,Code128码特性1、具有A、B、C三种不同的编码类型,可,Code128,码基本结构,35,2024/8/9,Code128码基本结构352023/8/20,Code128,编码表,36,2024/8/9,Code128编码表362023/8/20,Code128,编码表,37,2024/8/9,Code128编码表372023/8/20,Code128,编码表,38,2024/8/9,Code128编码表382023/8/20,Code128,编码表,39,2024/8/9,Code128编码表392023/8/20,Code128,编码表,40,2024/8/9,Code128编码表402023/8/20,Code128,编码表,41,2024/8/9,Code128编码表412023/8/20,Code128,编码表,42,2024/8/9,Code128编码表422023/8/20,Code128,编码表,43,2024/8/9,Code128编码表432023/8/20,Code128,编码表,44,2024/8/9,Code128编码表442023/8/20,Code128,编码表,45,2024/8/9,Code128编码表452023/8/20,Code128,编码表,46,2024/8/9,Code128编码表462023/8/20,
展开阅读全文