This article describes barcode symbologies, and how they repreprent data. Also, we cover the nature, advantages and disadvantages of three common barcode symbologies: Code 39, Code 128, and UPC-A. We also show examples of how each of these symbologies represents the same or similar data.
What are Barcode Symbologies?
A barcode is an optical, machine-readable, representation of data; the data usually describes something about the object that carries the barcode.
The mapping between data and barcodes is called a symbology. The specification of a symbology includes the encoding of single digits/characters of the message as well as the start and stop markers into bars and space, the size of the quiet zone required to be before and after the barcode as well as the calculation of a checksum value.
There are many characters that make up the standard computer character set. This set of characters is sometimes referred to as the ASCII set. Contained in this set are numbers, and letters, upper and lower case. Also, there are special characters, like hyphen, underscore, slashes, brackets, and so on.
One important fact about barcode symbologies, is that different ones support different characters. Some do not support certain special characters; some barcode symbologies support no special characters. Also, each has its advantages and disadvantages. This is important when considering which barcode symbology you will use
Code 39
Code 39, or “Code 3 of 9” is a common barcode scheme, that can support 43 characters. The supported characters are uppercase letters (A-Z), numeric digits (0-9) and certain special characters (-, ., $, /, +, %, and space).
Advantage(s): Simple scheme that supports some special characters.
Disadvantage(s): Low-density bar codes result in larger barcode.
Code 39 Examples
Although the value is shown with the barodes above, that is not part of the specification for Code 39.
Code 128
Code 128 is a very high-density barcode symbology. Code 128 can represent all 128 ASCII characters. Code 128 does not have 128 individual symbols, so it cannot itself represent all 128 ASCII values. To represent all 128 ASCII values, it uses three sub-sets (A, B, C). Together, code sets A and B cover all 128 ASCII characters. Code set C is used to more efficiently encode numeric only values.
- 128A (Code Set A) – ASCII characters 00 to 95 (0–9, A–Z and control codes), special characters, and FNC 1–4
- 128B (Code Set B) – ASCII characters 32 to 127 (0–9, A–Z, a–z), special characters, and FNC 1–4
- 128C (Code Set C) – Numbers Only. 00–99 (encodes two digits with a single code point) and FNC1
Advantage(s): High-density scheme that supports all 128 ASCII characters.
Disadvantage(s): Complex encoding specification, divided into three different barcode subtypes.
Code 128A Examples
Code 128B Examples
Code 128C Example
As with Code 39, displaying values is optional and not part of the specification for Code 128.
UPC-A
UPC-A is a special barcode symbology that is used to encode 12-digit numeric-only codes assigned to trade items via the Universal Product Code (UPC). Unlike with the previously mentioned symbologies, the UPC-A specification includes printing of the value along with (as part of) the barcode. The value is split into two four-digit halves, plus a beginning and ending digit.
Advantage(s): Unversally recognized symbology that automatically displays associated value.
Disadvantage(s): Value must be numeric and exactly 12 digits.
UPC-A Example
Barcode Software
Read more about how ManageMore with its innovative Lists & Labels™ Manager, can help you produce professional barcode labels for your products, automatically.