Bài viết này cần thêm chú thích nguồn gốc để kiểm chứng thông tin. |
Mã vạch UPC-A hay EAN.UCC-12 là loại mã vạch sử dụng phổ biến ở Bắc Mỹ (Mỹ và Canada) cho đến hiện nay, mặc dù từ ngày 1 tháng 1 năm 2005 người ta đã bắt đầu chuyển sang sử dụng EAN-13 để phù hợp với tiêu chuẩn quốc tế. Mã vạch UPC-A có thể tìm thấy trên rất nhiều chủng loại hàng hóa tiêu dùng trong các siêu thị hay cửa hàng cũng như trên sách, báo, tạp chí. Do vậy đôi khi người ta gọi chúng là "mã vạch UPC". Điều này thực ra không chính xác do các loại mã vạch UPC khác cũng tồn tại (chẳng hạn UPC-E, UPC bổ sung 2 số, UPC bổ sung 5 số v.v). UPC-A mã hóa dữ liệu là một chuỗi 11 số (có giá trị từ 0 đến 9) và có một số kiểm tra ở cuối để tạo ra một chuỗi số mã vạch hoàn chỉnh là 12 số. Do vậy mới có từ EAN.UCC-12.
Một mã vạch UPC-A bao gồm các phần sau:
Số hệ thống | Ý nghĩa |
---|---|
0, 7 | Mã vạch UPC-A thông thường |
1, 6, 8, 9 | Dự trữ |
2 | Sử dụng cho các mặt hàng bán theo trọng lượng |
3 | Dược phẩm/Các mặt hàng y tế |
4 | Không hạn chế về định dạng, sử dụng nội bộ cho các mặt hàng phi-lương thực (thực phẩm). |
5 | Vé, phiếu |
Như đã nói trên đây, thực tế UPC-A là một tập con của EAN-13 với số 0 dẫn đầu. Ví dụ chuỗi số "123456789012" của UPC-A thực tế hoàn toàn đồng nhất với chuỗi số "0123456789012" của EAN-13. Do vậy, mọi quy tắc trong mã hóa của UPC-A là các quy tắc mã hóa của EAN-13 (tính số kiểm tra, các giá trị bit của các số được mã hóa cũng như của các vạch bảo vệ trái, phải, trung tâm) được áp dụng cho chuỗi: "0" + chuỗi UPC-A.
Tuy nhiên, việc in ấn hay thể hiện bên ngoài thì hơi khác một chút. Người ta không in số 0 dẫn đầu như trong EAN-13 mà ở vị trí đó người ta in số hệ thống. Xem xét giá trị bit của các số được mã hóa theo EAN-13 ta thấy rằng mỗi số khi mã hóa sẽ bao gồm 2 khoảng trắng và 2 vạch có độ rộng thay đổi (nhưng tổng độ rộng không đổi) xen kẽ nhau (Trắng-Vạch-Trắng-Vạch - ở bên trái của các vạch bảo vệ trung tâm hoặc Vạch-Trắng-Vạch-Trắng - ở bên phải của các vạch bảo vệ trung tâm).
Trong khoảng giữa các vạch bảo vệ trái và bảo vệ trung tâm, người ta mã hóa số hệ thống + 5 số mã nhà sản xuất, trong đó mã hóa của số hệ thống được in ra có chiều cao như các vạch bảo vệ, các vạch của mã nhà sản xuất được in ngắn hơn lấy chỗ cho việc in các số của mã này. Do vậy ở đầu của mã vạch UPC-A nói chung nhìn thấy có 4 vạch dài hơn các vạch thông thường.
Trong khoảng giữa các vạch bảo vệ trung tâm và bảo vệ phải, người ta mã hóa mã sản phẩm + số kiểm tra, trong đó mã hóa của số kiểm tra được in ra có chiều cao như các vạch bảo vệ, các vạch của mã sản phẩm được in ngắn hơn lấy chỗ cho việc in các số của mã này. Do vậy ở cuối của mã vạch UPC-A nói chung nhìn thấy có 4 vạch dài hơn các vạch thông thường. Số kiểm tra được in bên ngoài các vạch bảo vệ phải như trong hình minh họa.
Trước khi có sự ra đời của EAN-13 thì quy tắc tính số kiểm tra của UPC-A như sau:
Quy tắc này phù hợp với quy tắc tính số kiểm tra của EAN-13 do sau khi thêm số 0 vào đầu chuỗi UPC-A thì các vị trí chẵn của UPC-A đổi thành vị trí lẻ của EAN-13 và ngược lại.