Code 39

Code 39 Beispiel mit Prüfzeichen Dollar

Die Kodierung Code 39, auch kurz 3 of 9 (drei aus neun) genannt, ist eine diskrete Barcode-Symbologie mit variabler Länge. Sie stellt einen alphanumerischen Zeichensatz zur Verfügung. Außer Ziffern und Großbuchstaben sind sieben Sonderzeichen definiert. Start- und Stoppzeichen sind identisch und werden durch das Sonderzeichen „*“ dargestellt. Der Code 39 wurde 1973 von Intermec (USA) entwickelt und ist in der ISO/IEC 16388[1] spezifiziert.

Aufbau

Code 39 Zeichensatz

Jedem Zeichen des verfügbaren Alphabets wird ein Barcode aus fünf Strichen und vier Zwischenräumen zugeordnet, ein Zeichen besteht also aus 5 schwarzen und 4 weißen Balken. Es gibt zwei verschiedene Balken- und Lückenbreiten, wobei immer drei Balken breit und alle anderen schmal sind. Die Bezeichnung Code 39 oder „3 of 9“ geht auf diese Struktur der Kodierung zurück. Dieser Aufbau ermöglicht die Darstellung von 44 verschiedenen Zeichen, davon 40 mit zwei breiten schwarzen und einem breiten weißen Balken. 39 dieser 40 Möglichkeiten entsprechen den Ziffern 0–9, dem Alphabet (A–Z), dem Punkt, dem Minuszeichen (bzw. Bindestrich) und dem Leerzeichen. Die 40. Möglichkeit codiert das Start-/Stoppzeichen „*“. Die letzten 4 Zeichen (Prüfsummenwert 39–42) werden mit drei breiten weißen Balken dargestellt.

Code 39 ist ein diskreter Code mit variabler Codelänge (variable Zeichenanzahl). Der Codeaufbau erlaubt die bidirektionale Abtastung der selbstüberprüfenden Elemente[2].

Für Anwendungen mit erhöhten Anforderungen an die Lesesicherheit existiert ein optionales Prüfsummenverfahren, das auf einer Wertetabelle für jedes Zeichen beruht. Hierbei besitzt das Zeichen „0“ den numerischen Wert 0, das Zeichen „1“ den Wert 1, das Zeichen „A“ den Wert 10, das Zeichen „Z“ den Wert 35. Als letztem Zeichen wird „%“ der Wert 42 zugeordnet. Der Wert des Prüfzeichens errechnet sich demnach wie folgt:

So ist zum Beispiel „T“ das Prüfzeichen der Zeichenfolge „12345ABCDE/“. Durch folgende Berechnung kommt das „T“ zustande:

[3]

Der Code 39 ist einfach herzustellen[4], da ein Zeichen Klarschrift einem Zeichen Barcode entspricht. Code 39 dominierte frühere Anwendungsgebiete, die eine alphanumerische Kodierung verlangten. Wegen der relativ geringen Informationsdichte und einer im Vergleich zu anderen Kodierungen geringen Zeichensatzauswahl wird er in jüngster Zeit jedoch zunehmend durch den Code128 ersetzt. Allerdings ist er durch die Beschränkung auf zwei deutlich unterscheidbare Breiten auch bei schlechter Druckqualität zuverlässig lesbar; nötigenfalls sogar mit bloßem Auge.

Zeichenkodierung

ZeichenCodeBedeutungWert für
Prüfsumme
‚1‘▮| ||▮11
‚2‘|▮ ||▮22
‚3‘▮▮ |||33
‚4‘|| ▮|▮44
‚5‘▮| ▮||55
‚6‘|▮ ▮||66
‚7‘|| |▮▮77
‚8‘▮| |▮|88
‚9‘|▮ |▮|99
‚0‘|| ▮▮|00
‚A‘▮|| |▮A10
‚B‘|▮| |▮B11
‚C‘▮▮| ||C12
‚D‘||▮ |▮D13
‚E‘▮|▮ ||E14
‚F‘|▮▮ ||F15
‚G‘||| ▮▮G16
‚H‘▮|| ▮|H17
‚I‘|▮| ▮|I18
‚J‘||▮ ▮|J19
‚K‘▮||| ▮K20
‚L‘|▮|| ▮L21
‚M‘▮▮|| |M22
‚N‘||▮| ▮N23
‚O‘▮|▮| |O24
‚P‘|▮▮| |P25
‚Q‘|||▮ ▮Q26
‚R‘▮||▮ |R27
‚S‘|▮|▮ |S28
‚T‘||▮▮ |T29
‚U‘▮ |||▮U30
‚V‘| ▮||▮V31
‚W‘▮ ▮|||W32
‚X‘| |▮|▮X33
‚Y‘▮ |▮||Y34
‚Z‘| ▮▮||Z35
‚-‘| ||▮▮Bindestrich, Minus36
‚.‘▮ ||▮|Punkt37
‚ ‘| ▮|▮|Space, Leerzeichen38
‚*‘| |▮▮|Start, Stopp
‚$‘| | | ||Dollar39
‚/‘| | || |Schrägstrich40
‚+‘| || | |Plus41
‚%‘|| | | |Prozent42[5]

Full ASCII Code 39

Code 39 ist auf 43 Zeichen beschränkt. Um alle 128 ASCII-Zeichen darstellen zu können, wird das System so erweitert: Die Symbole 0–9, A–Z, „.“ und „-“ sind die gleichen wie bei Code 39. Kleinbuchstaben, weitere Zeichen und Steuerungszeichen werden durch zwei aufeinanderfolgende Symbole von Code 39 gebildet.

Symboltabelle Full ASCII Code 39
NrZeichenKodierung
0NUL%U
1SOH$A
2STX$B
3ETX$C
4EOT$D
5ENQ$E
6ACK$F
7BEL$G
8BS$H
9HT$I
10LF$J
11VT$K
12FF$L
13CR$M
14SO$N
15SI$O
16DLE$P
17DC1$Q
18DC2$R
19DC3$S
20DC4$T
21NAK$U
22SYN$V
23ETB$W
24CAN$X
25EM$Y
26SUB$Z
27ESC%A
28FS%B
29GS%C
30RS%D
31US%E
NrZeichenKodierung
32[space][space]
33!/A
34"/B
35#/C
36$/D
37%/E
38&/F
39'/G
40(/H
41)/I
42*/J
43+/K
44,/L
45--
46..
47//O
4800
4911
5022
5133
5244
5355
5466
5577
5688
5799
58:/Z
59;%F
60<%G
61=%H
62>%I
63?%J
NrZeichenKodierung
64@%V
65AA
66BB
67CC
68DD
69EE
70FF
71GG
72HH
73II
74JJ
75KK
76LL
77MM
78NN
79OO
80PP
81QQ
82RR
83SS
84TT
85UU
86VV
87WW
88XX
89YY
90ZZ
91[%K
92\%L
93]%M
94^%N
95_%O
NrZeichenKodierung
96`%W
97a+A
98b+B
99c+C
100d+D
101e+E
102f+F
103g+G
104h+H
105i+I
106j+J
107k+K
108l+L
109m+M
110n+N
111o+O
112p+P
113q+Q
114r+R
115s+S
116t+T
117u+U
118v+V
119w+W
120x+X
121y+Y
122z+Z
123{%P
124%Q
125}%R
126~%S
127DEL%T, %X, %Y, %Z

Code 39 reduced

Ist eine Variante, die nur aus den Zeichen 0 bis 9 und A bis Z besteht und das Prüfzeichen wird modulo 36 berechnet.

Unterstützung

Als altbewährte Symbolik wird Code 39 von fast allen gängigen Strichcodelesern und Etikettendruckern unterstützt. Für Textverarbeitungs-Software wird Code 39 als Schriftart von verschiedenen Anbietern (auch kostenfrei) angeboten, und für LaTeX empfiehlt sich das barcodes-Paket.

Weblinks

Einzelnachweise

  1. ISO/IEC 16388:2007 Information technology -- Automatic identification and data capture techniques -- Code 39 bar code symbology specification International Organization for Standardization, abgerufen am 10. März 2014
  2. Strichcodesysteme Code 39 (Memento vom 31. März 2015 im Internet Archive). Strichcodeservice Michael Franken. Abgerufen am 10. März 2014.
  3. Strichcodesysteme Code 39 – Prüfzeichenberechnung (Beschreibung) (Memento vom 31. März 2015 im Internet Archive). Strichcodeservice Michael Franken. Abgerufen am 10. März 2014. – mit ähnlicher Berechnung
  4. Barcode Lexikon Code 39 – Vorteile / Stärken. Suchy MIPS. Abgerufen am 10. März 2014.
  5. Strichcodesysteme Code 39 – Prüfzeichenberechnung (Beschreibung) (Memento vom 31. März 2015 im Internet Archive). Strichcodeservice Michael Franken. Abgerufen am 10. März 2014. - Tabelle listet die Sonderzeichen auf

Auf dieser Seite verwendete Medien

Free 3 of 9 (Code 39 barcode).svg
Autor/Urheber: , Lizenz: CC BY-SA 3.0
Barcode examples of Code 39. Seen: [A-Z], [0-9], [space], [*], [-], [$], [%], [.], [/] and [+]. ASCII: 0041-005A, 0030-0039, 005F, 002A, 002D, 0024, 0025, 002E, 002F and 002B. I've used the font "Free 3 of 9 Regular (TrueType)" and converted the text to vector lines.
Code39 Wikipedia.svg
Code39 barcode with Start/Stop symbols and check digit