Both Code 39 ASCII start and stop characters are asterisks. These asterisks are generally not shown in the text line, but sometimes they are shown in the text line with the asterisk marks. If the text line shows *1234*, need to enter 1234 because the stars are a fixed part of Code 39.
Code 39 has been recognized by the American National Standards Institute (ANSI) as MH10.8M-1983. It is the most widely used general-purpose barcode type. Code 39 ASCII's basic purpose is to encode a small amount of information containing alphabets as well as numeric characters in a linear pattern of bars and spaces.
Code 39 has the ability to encode the full alphabet and numbers (0–9), which is a unique capability in characters. The extension to the symbology, named Code 39 Full ASCII, uses some of the characters to shift the next character to lower case, allowing lower case characters to be encoded. Code 39 ASCII Barcode is a variant of Code 39 barcode symbology that encodes all 128 characters in the ASCII table.
Industry standards making use of Code 39 include the pharmaceutical industry, which has specified a standard format and renamed the symbology Code 32 since each character is used to encode five bits of alphanumeric data.
Although Code 39 Full ASCII was a revolutionary symbology at its inception, more efficient alphanumeric symbologies such as Code 128 have made it obvious how inefficient and limited Code 39 ASCII is due to its relatively large space requirements.
An optional check digit can be included in Code 39. Again, it is rarely used in practice because the encoder and decoder must agree on whether this mode is active.
Code 39 is relatively easy to print, and owing to its inter-character gap, can be printed by discrete print wheels and can also when used without its optional check digit, which is most often the case, be generated as a font in word processing and similar programs. Code 39 is relatively easy to employ Code 39 in a small, homegrown application.