Code 39

__FORCETOC Code 39 (également connu sous le nom de " ; Code 39" d'USS ; , " ; Coder 3/9" ; , " ; Code 3 de 9" ; , " ; USD-3" ; , " ; Alpha39" ;) sont des signes conventionnels de codes barres qui peuvent coder les lettres majuscules (A par Z), chiffres (0 à 9) et à une poignée des caractères spéciaux comme le signe de $. Codes barres lui-même ne contiennent pas un chiffre-clé (contrairement au &mdash ; par exemple &mdash ; Le code 128 ), mais lui peut être considéré à vérification automatique par certains, parce qu'une barre incorrectement interprétée simple ne peut pas produire d'un autre caractère valide. Probablement l'inconvénient le plus sérieux du code 39 est sa basse densité d'enregistrement de données : Il exige de plus d'espace de coder des données en code 39 que, par exemple, en code 128. Ceci signifie que des marchandises très petites ne peuvent pas être marquées avec codes barres basés du code 39. Cependant, le code 39 est encore employé couramment et peut être décodé avec pratiquement n'importe quel lecteur de codes barres de .

Le code nommé 39 est dérivé du fait que trois des neuf éléments qui constituent un codeword sont les éléments larges, les autres six sont étroit. Le code 39 a été développé par Dr. David Allais et raie Stevens du Intermec dans le 1974 . Il plus tard a été normalisé comme norme ANSI MH 10.8 M-1983 et MIL-STD-1189 de .

Le rapport de largeur entre étroit et au loin peut être choisi entre le 1:2 et 1 : 3.

Codage

Le * le caractère de présenté ci-dessous n'est pas un véritable caractère encodable, mais est le début et l'arrêt « symbole » pour le code 39. L'asymétrie du symbole permet au lecteur de déterminer la direction de codes barres étant balayés. Ce code est traditionnellement tracé au * caractère de dans les polices de codes barres et apparaîtra souvent avec la représentation lisible pour l'homme à côté de codes barres.

Ces tables décrivent les 3 des spécifications 9 :

de de ColSpan=3>
Légende
Format1 Format2 Desc
WBWide - Black
NbNarrow - Black
wWWide - White
nwNarrow - White

du Format1
détaille
du char de de >
*NwNnWnWnN bWbwBwBwb
-NwNnNnWnW bWbwbwBwB
$NwNwNwNnN bWbWbWbwb
%NnNwNwNwN bwbWbWbWb
(l'espace) NwWnNnWnN bWBwbwBwb
.WwNnNnWnN BWbwbwBwb
/NwNwNnNwN bWbWbwbWb
+NwNnNwNwN bWbwbWbWb
0NnNwWnWnN bwbWBwBwb
1WnNwNnNnW BwbWbwbwB
2NnWwNnNnW bwBWbwbwB
3WnWwNnNnN BwBWbwbwb
4NnNwWnNnW bwbWBwbwB
5WnNwWnNnN BwbWBwbwb
6NnWwWnNnN bwBWBwbwb
7NnNwNnWnW bwbWbwBwB
8WnNwNnWnN BwbWbwBwb
9NnWwNnWnN bwBWbwBwb
AWnNnNwNnW BwbwbWbwB
BNnWnNwNnW bwBwbWbwB
CWnWnNwNnN BwBwbWbwb
DNnNnWwNnW bwbwBWbwB
EWnNnWwNnN BwbwBWbwb
FNnWnWwNnN bwBwBWbwb
GNnNnNwWnW bwbwbWBwB
HWnNnNwWnN BwbwbWBwb
INnWnNwWnN bwBwbWBwb
JNnNnWwWnN bwbwBWBwb
KWnNnNnNwW BwbwbwbWB
LNnWnNnNwW bwBwbwbWB
MWnWnNnNwN BwBwbwbWb
NNnNnWnNwW bwbwBwbWB
OWnNnWnNwN BwbwBwbWb
PNnWnWnNwN bwBwBwbWb
QNnNnNnWwW bwbwbwBWB
RWnNnNnWwN BwbwbwBWb
SNnWnNnWwN bwBwbwBWb
TNnNnWnWwN bwbwBwBWb
UWwNnNnNnW BWbwbwbwB
VNwWnNnNnW bWBwbwbwB
WWwWnNnNnN BWBwbwbwb
XNwNnWnNnW bWbwBwbwB
YWwNnWnNnN BWbwBwbwb
ZNwWnWnNnN bWBwBwbwb


Noter svp : Entre chaque caractère (les caractères de début et d'arrêt inclus). Il y a un espace mince (montré comme W ci-dessous). Par exemple, si vous vouliez codes barres du code 39 composés de " de lettre ; A" ; , vous auriez besoin du suivant pour être codé : " ; *A*" ;.
de ww Le code ne sera pas lu sans ces spaces.

Mod 43 du code 39

Le code 39 est parfois, bien que rarement, utilisé avec un chiffre-clé facultatif de du modulo 43 . Using lui exige de ce dispositif d'être permis dans le lecteur de codes barres. Le code avec le chiffre-clé désigné sous le nom de mod 43 du code 39 de .

Voici comment faire le calcul de la somme :
Prendre la valeur (0 à 42) de chaque caractère dans codes barres à l'exclusion des codes de début et d'arrêt.
Additionner les valeurs.
Diviser le résultat par 43.
Le reste est la valeur du caractère de somme à apposer.

Ceci peut être exprimé en Visual Basic comme : lang=" de charSet de Const comme corde = " ; 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%" ; Fonction Mod43 (C39 comme corde) comme corde Pour I = 1 à Len (C39) total = InStr (charSet, mi (C39, I, 1)) - 1 + total Après i Mod43 = C39 et Mid$ (charSet, (mod total 43 + 1), 1) Fonction de fin ou dans le Java comme (avec la vérification les caractères inadmissibles) : lang=" de charSet = " finaux statiques publics de corde ; 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%" ; ; getChecksum statique public de char (codes barres de corde) { total d'international = 0 ; CharacterIterator il = nouveau StringCharacterIterator (codes barres) ; pour (char ch = it.current () ; ch ! = CharacterIterator.next ()) { charValue d'international = charSet.indexOf (ch) ; si (== -1 de charValue) { Caractère inadmissible de //. nulle de retour ; } charValue total de += ; } somme d'international = % totaux 43 ; charSet.charAt de retour (somme) ; }

Plein code 39 d'ASCII

Le code 39 est limité à 44 caractères. Dans de pleins symboles du code 39 du ASCII 0-9, A-Z, " ;. " ; , et " ; - " ; sont les mêmes que leurs représentations en code 39. Des lettres minuscules, les caractères spéciaux de ponctuation et les caractères de commande sont représentés par des ordres de deux caractères de code 39.

bgColor=" du codage bgColor=" du codage bgColor=" du codage codage de du caractère bgColor=" de bgColor=" de bgColor=" de ` de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de bgColor=" de
le code de détaille
de de Nr de de ; #FFFFFF" ; >  ;   ;   ; de de Nr de de ; #FFFFFF" ; >  ;   ;   ; de de Nr de de ; #FFFFFF" ; >  ;   ;   ; de de Nr de de
0NUL%U3264@%V%W96
1SOH$A 33 ! bgColor=" de /A65AA 97a+A
2STX$B 34" ; bgColor=" de /B66BB 98b+B
3ETX$C35#/C67CC 99c+C
4EOT$D36$/D68DD 100d+D
5ENQ$E37%/E69EE 101e+E
6ACK$F38&/F70FF 102f+F
7BEL$G39'/G71GG 103g+G
8BS$H 40 (bgColor=" de /H72HH 104h+H
9HT$I41) /I73II 105i+I
10LF$J42*/J74JJ 106j+J
11VT$K43+/K75KK 107k+K
12FF$L 44, bgColor=" de /L76LL 108l+L
13CR$M45--77MM 109m+M
14SO$N46.78NN 110n+N
15SI$O47//O79OO 111o+O
16DLE$P480080PP 112p+P
17DC1$Q491181QQ 113q+Q
18DC2$R502282RR 114r+R
19DC3$S513383SS 115s+S
20DC4$T524484TT 116t+T
21NAK$U535585UU 117u+U
22SYN$V546686VV 118v+V
23ETB$W557787WW 119w+W
24CAN$X568888XX 120x+X
25EM$Y579989YY 121y+Y
26SUB$Z 58 : bgColor=" de /Z90ZZ 122z+Z
27ESC%A 59 ; bgColor=" de %F91 ; #FFFFFF" ; > 123 {%P
28FS%B60<%G92 \ %L 124|%Q
29GS%C61=%H93] %M 125} %R
30RS%D62>%I94^%N 126~%S
31US%E 63 ? bgColor=" de %J95_%O 127DEL%T, %X, %Y, %Z
.
Random links:Portland, Arkansas | Équipe nationale de cricket du Pakistan | nagCeann Burke, ęr comte d'Ulick de Clanricarde | Samuel Austin Allibone | Liste de compositions pour le violoncelle et le piano | Código_39