Opis

Code 39 (czasami zwany Code 3 z 9 - "3 of 9 Code" i "USD-3") jest pierwszym wynalezionym alfanumerycznym kodem kreskowym i stosowany jest do dzisiaj szczególnie w środowiskach nie związanych ze sprzedażą detaliczną. Może być zmiennej długości i jest samokontrolujący się (nie wymaga sprawdzania sumy kontrolnej). Każdy znak składa się z 9 pasków - 3 z nich są szersze. Pasek może być czarny albo biały. Stąd każdy znak składa się z czterech czarnych pasków i z trzech białych.
Stosunek szerokości paska może sięgać od 2:1 do 3:1. Aby odczytać kod kreskowy dekoder musi być w stanie rozróżniać szerokie i wąskie paski. W praktyce jest lepiej używać kodów kreskowych, w których stosunek szerokości pasków jest zbliżony do 3:1, gdyż zmniejsza to możliwość występowania błędów.
Szerokość odstępu pomiędzy znakami w kodzie kreskowym nie jest określona, ale jest zwykle równa szerokości wąskiego białego paska.
Szerokości szerokich i wąskich grup pasków powinny być takie same, ale w praktyce większość drukarek zaciąga tusz. Powoduje to poszerzenie pasków kosztem przestrzeni pomiędzy nimi. Efekt ten spotykany jest najczęściej przy wąskich paskach i czasami powoduje to problemy przy odczytywaniu kodu.
Do kodowania Code 39 używanych jest 43 znaki plus dodatkowe znaki, które są ogranicznikami i znakami start/stop. Znak start/stop zawsze występuje jako pierwszy i ostatni znak kodu. Znakiem tym jest '*'.
Wszystkie litery używane w kodzie są wielkimi literami. Aby użyć małych liter lub innych znaków ASCII należy zastosować rozszerzony Code 39 (ang. extended).
Kod ten jest używany przez Departament Obrony Narodowej Stanów Zjednoczonych oraz przez HIBCC (Health Industry Bar Code Council).

Cyfra kontrolna

Nie jest często używana w Code 39, ale w niektórych zastosowaniach może być wymagana. Jest ona resztą z dzielenia sumy kodów wszystkich znaków przez 43. Wstawiana jest na koniec kodu. Poniższa tablica przedstawia znaki oraz wartości, jakie są wykorzystywane przy obliczaniu cyfry kontrolnej.
Znak Wartość    Znak Wartość     Znak Wartość     Znak Wartość
   0     0         B    11          M    22          X    33   
   1     1         C    12          N    23          Y    34
   2     2         D    13          O    24          Z    35
   3     3         E    14          P    25          -    36
   4     4         F    15          Q    26          .    37
   5     5         G    16          R    27        space  38
   6     6         H    17          S    28          $    39
   7     7         I    18          T    29          /    40
   8     8         J    19          U    30          +    41
   9     9         K    20          V    31          %    42
   A    10         L    21          W    32
   
Przykładowe obliczenia: Dane: 12345ABCDE/
  1. Sumujemy wszystkie cyfry kodu 1 + 2 + 3 + 4 + 5 + 10 + 11 + 12 + 13 + 14 + 40 = 115
  2. Obliczamy resztę z dzielenia wyniku z kroku 1 przez liczbę 43 115 mod 43 = 29
  3. Jako znak kontrolny wstawiamy ten, którego wartość jest równa wynikowi z kroku 2 (patrz tabelka powyżej) 29 => T
Więc kod wraz z cyfrą kontrolną będzie składał się z następującego ciągu znaków: 12345ABCDE/T

Zastosowanie

Kod ten jest używany w przemyśle metalurgicznym, przemyśle chemicznym i w transporcie lotniczym. Znalazł także zastosowanie w logistyce wewnątrz przedsiębiorstw.

Przykład


Przykład wygenerował program HDF® BarCode System.