UPC校验位计算器和公式
UPC-A条码的第12位是检测扫描错误的校验和。这是它如何精确计算,含例题 — 我们的生成器在你输入前11位时自动计算。
每个UPC-A条码以校验位结尾 — 第12位,从前11位计算。其目的:在人类输入条码时捕获单位转置错误。如果收银员或仓库工人输错一位,校验位不匹配,系统拒绝输入。EAN-13(第13位)和EAN-8(第8位)以相同公式相同方式工作。
你几乎从不需要手算校验位 — 任何条码生成器(含我们的)在你输入前11位时为你完成。但理解计算在你调试Amazon或Walmart的「GTIN无效」错误,或验证从数据库取的UPC时有用。
GS1 Mod 10校验位公式
步骤1:取UPC前11位。步骤2:奇数位(从左1、3、5、7、9、11)乘3,偶数位(2、4、6、8、10)乘1。步骤3:求所有积之和。步骤4:找到加到和上得10的倍数的最小数。那个数是你的校验位。代数地:校验位 = (10 − (和 mod 10)) mod 10。双「mod 10」处理和 mod 10 = 0的边界情况(校验位是0,非10)。
例题1:UPC 03600029145?
11位:0, 3, 6, 0, 0, 0, 2, 9, 1, 4, 5。奇数位(×3):0+6+0+2+1+5 = 14,×3 = 42。偶数位(×1):3+0+0+9+4 = 16。和 = 42 + 16 = 58。下一个10的倍数是60。校验位 = 60 − 58 = 2。完整UPC:036000291452。这是真实的Charmin Ultra Strong卫生纸UPC — 在Amazon扫描验证。
例题2:UPC 01234567890?
11位:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0。奇数位(×3):0+2+4+6+8+0 = 20,×3 = 60。偶数位(×1):1+3+5+7+9 = 25。和 = 60 + 25 = 85。下一个10的倍数是90。校验位 = 90 − 85 = 5。完整UPC:012345678905。这是教程用的规范「示例UPC」。
例题3:和已是10的倍数时
11位:8, 1, 4, 1, 4, 1, 0, 6, 0, 4, 9。奇数(×3):8+4+4+0+0+9 = 25,×3 = 75。偶数(×1):1+1+1+6+4 = 13。和 = 75 + 13 = 88。下一个10的倍数是90。校验位 = 2。完整:814141060492。自己试:位0,0,0,0,0,0,0,0,0,0,0 — 奇数和0,偶数和0,总0,校验位 = (10 − 0) mod 10 = 0。全零UPC校验位为0。
EAN-13和EAN-8用相同公式不同位置权重
EAN-13:取12位,从左以×1开始交替×1和×3(与UPC-A相反)。EAN-8:7位,从左以×3开始交替×3和×1。ITF-14:13位,从左以×3开始交替(与EAN-8逻辑同)。「mod 10」模数在所有格式相同 — 仅位置权重翻转。这是为何UPC-A转GTIN-14(前加两零)保持相同校验位 — 权重图案重新对齐。
校验位单独不够时
Mod 10公式捕获每个单位错误和大多数相邻位转置,但不捕获位相差5的交换(如0↔5、1↔6、2↔7、3↔8、4↔9)。键控操作员可能打360200291452而非036000291452,校验位仍通过 — 所以「校验位有效」必要但不充分。下一验证层是GS1 GEPIR查询:即使校验位有效,公司前缀必须追溯到许可公司。这是Amazon、Walmart和Target拒绝「GTIN无效」提交时验证的。
FAQ
如何计算UPC校验位?
取前11位。奇数位(从左1、3、5、7、9、11)的位乘3。偶数位(2、4、6、8、10)的位乘1。求所有积之和。校验位是加到此和上产生10的倍数的最小数。代数地:校验位 = (10 − (和 mod 10)) mod 10。
UPC 012345678905的校验位是?
5。11位01234567890给出奇数位和0+2+4+6+8+0=20×3=60,偶数位和1+3+5+7+9=25,总85。下一个10的倍数是90。校验位 = 90−85 = 5。
UPC为何有校验位?
检测数据输入和扫描错误。校验位捕获每个单位打错和大多数相邻位转置(如打12而非21)。在收银台或仓库收货,扫描器或键控系统拒绝任何校验位不能从前11位正确计算的12位编号 — 防止坏数据进入库存系统。
EAN-13校验位计算与UPC相同吗?
几乎。EAN-13用相同Mod 10算法但权重相反方向交替 — 奇数位×1偶数×3(UPC-A奇数×3偶数×1)。计算结果等同,因为EAN-13有12输入位UPC-A有11。当你用前加零将UPC-A 012345678905转GTIN-13(0012345678905),校验位仍为5 — 权重图案正确重新对齐。
UPC校验位能是0吗?
能。当加权积之和已是10的精确倍数时,校验位是0(非10)。公式(10 − (和 mod 10)) mod 10处理此边界情况。例:加权和80的UPC,下一倍数也是80,校验位 = (10 − 0) mod 10 = 0。
我需要自己计算校验位吗?
不 — 每个条码生成器为你计算。你输入前11位(EAN-13是12位),生成器追加校验位并渲染条码。我们的生成器自动这样做;你不需输入校验位。计算在你调试「GTIN无效」错误或验证从第三方数据库取的UPC时重要。
Related generators
Need a real barcode now?
Generate a valid UPC-A barcode in seconds — no signup, no watermark. Free for casual use; paid plans from $9/mo for higher volume.