코드 39 바코드 라벨 Code 39로 변환한 WIKIPEDIA '''코드 39'''는 가변 길이의 개별 바코드다. 코드 39는 대문자 (A Z), 숫자 (0-9) 특수 문자 (-,., $, /, +, 공백 )로, 43자로 구성된다. 추가 글자( '*'로 표시됨)는 시작 구분 기호와 종료 구분 문자 모두에 사용된다. 문자는 개의 요소로 구성된다 개의 막대와 개의 공백. 문자의 요소 개는 넓고 (2 1) 요소는 좁다. (2 0) 너비와 너비 간의 너비 비율은 중요하지 않으며 2에서 사이에서 선택할 있다. 바코드 자체에는 확인 숫자가 포함되지 않지만 (코드 128과 대조적으로), 잘못 해석된 단일 막대가 다른 유효한 문자를 생성할 없다는 이유로 자체 검사로 간주될 있다. 코드 39의 가장 심각한 단점은 낮은 데이터 밀도다. 예를 들어 코드 128보다 코드 39에서 데이터를 인코딩하는 많은 공간이 필요하다. 즉, 아주 작은 제품에는 코드 39 기반 바코드로 레이블을 지정할 없다. 그러나, 비록 코드 39는 여전히 몇몇 우편 서비스에 의해 사용된다. (만국 우편 연합은 모든 경우에 코드 (128)를 사용할 것을 권장하고, 거의 모든 바코드 리더로 디코드할 있다. 코드 39의 장점 하나는 체크 디지트를 생성할 필요가 없기 때문에 바코드 글꼴을 시스템이나 프린터에 추가한 다음 해당 글꼴로 데이터를 인쇄하여 기존 인쇄 시스템에 쉽게 통합할 있다는 것이다. Code 39는 1974년 David Allais Intermec의 Ray Stevens가 개발했다. 그들의 원래 디자인은 개의 넓은 막대와 문자에 하나의 넓은 공간을 포함하여 40 개의 가능한 문자를 만들었다. 문자 하나를 시작 중단 패턴으로 남겨두면 39 자가 남았다. 문자는 Code 39라는 이름의 기원이었다. 나중에 개의 구두점 문자가 추가되어 넓은 막대와 개의 넓은 공백을 사용하지 않고 문자 세트를 43 자로 확장했다. Code 39는 나중에 ANSI MH 10.8 M-1983 MIL-STD-1189로 표준화되었습니다. 그리고 MIL-STD-1189는 취소되고 ANSI AIM BC1 1995, 통일 기호 표준 코드 39로 대체되었다. == 인코딩 == 아래 표시된 '''*''' 문자는 실제 인코딩 가능 문자는 아니지만 코드 39의 시작 중지 기호다. 기호의 비대칭성은 판독기로 하여금 스캔되는 바코드의 방향을 결정하게 한다. 코드는 전통적으로 바코드 글꼴의 '*' 문자에 매핑되며 바코드와 함께 사람이 읽을 있는 표현으로 표시된다. 코드 39 문자 일반적으로 개의 넓은 막대의 위치는 1에서 10 사이의 숫자를 인코딩하는 것으로 간주될 있으며 넓은 공간의 위치 (네 개의 가능한 위치가 있음)는 문자를 개의 그룹 하나로 분류하는 것으로 간주될 있습니다 왼쪽에서 오른쪽으로) 문자 (+30) (U-Z), 숫자 (+0) (1-9,0), 문자 (+10) (A-J) 문자 (+20) 티). 예를 들어, 문자 (알파벳의 16 번째 문자)는 숫자 6을 나타내기 위해 막대가 정렬되어 있고 오른쪽 위치의 공백은 그룹 문자 (+20)를 선택한다. 숫자로 표현 숫자 "10"은 숫자 0을 인코딩하는 사용된다. 왜냐면 문자 (+ 30) 그룹에는 문자가 (문자 30-35 또는 U-Z)이므로 그룹의 나머지 위치 (36-39)는 대시, 마침표, 공백 )뿐만 아니라 시작 정지 문자이기 때문이다. 개의 가능한 위치 개의 넓은 막대는 1, 2, 4, 7, 0의 숫자 동등성을 갖는 2의 코드를 사용하여 1에서 10 사이의 숫자를 인코딩한다. 숫자는 합산된다. 예를 들어, 숫자 6은 2와 (2 6)의 위치를 차지하는 넓은 막대와 함께 NWWNN으로 인코딩된다. NNWWN이 경우 숫자 (+0)는 0, 문자 (+10 +30)은 10으로 지정됩니다. (+10에서 +30) 글자를 인코딩 방정식에 "-1"이 필요하므로 표에 표시된 대로 'A'는 WNNNW 10-1 10이다. 마지막 문자는 모든 좁은 막대와 개의 넓은 공백으로 구성된다. 좁은 단일 공간에는 가지 위치가 있다. 표에는 Code 39 사양이 요약되어 있다. 문자에 할당된 숫자 (시작 정지 제외)은 아래 설명된 체크섬(checksum) 알고리즘에서 사용된다. +Code 39 글자들 (그리고 checksum 값) Bars Spaces +0 +10 +20 +30 10 20 30 11 21 31 12 ▮▮ 22 32 13 23 33 14 24 34 ▮▮ ▮▮ 15 25 ▮▮ 35 ▮▮ ▮▮ ▮▮ 16 26 ▮▮ 36 17 27 37 18 28 38 10 19 29 41 40 39 42 문자는 좁은 공간으로 구분된다. 예를 들어, 실제로 시작을 포함하고 문자를 중지 단일 문자 "A"의 전체 인코딩 "* *"이며, ▮▮ 이러한 문자 스페이스가 없으면 코드를 제대로 읽을 없다. 바코드 글꼴은 문자의 글리프 내에 항상 공간을 포함한다. == 코드 39와 mod 43 == 코드 39는 선택적 모듈로 43 체크섬과 함께 사용되기도 한다. 기능을 사용하려면 기능을 바코드 인식기에서 활성화해야 한다. 체크 숫자가 있는 코드를 ''코드 39 mod 43'' 이라고 한다. 이를 계산하기 위해 문자에 하나의 값이 할당된다. 할당은 위의 표에 나열되어 있지만 거의 체계적이지는 않다. 다음은 체크섬 계산을 수행하는 방법이다. 시작 종료 코드를 제외한 바코드의 문자 (0 42)을 가져온다. 값을 합한다. 결과를 43으로 나눈다. 나머지는 추가할 체크섬 문자의 값이다. == 전체 ASCII 코드 39 == 코드 39는 43 자로 제한된다. 전체 ASCII 코드 39 기호 0-9, AZ, ".", "-"및 공백은 코드 39의 해당 표현과 동일하다. 소문자, 추가 구두점 문자 제어 문자는 코드 39의 문자 시퀀스로 나타낸다. '''Code Details''' 숫자 글자 인코딩 숫자 글자 인코딩 숫자 글자 인코딩 숫자 글자 인코딩 NUL %U 32 space space 64 %V 96 %W SOH $A 33 /A 65 97 +A STX $B 34 /B 66 98 +B ETX $C 35 /C 67 99 +C EOT $D 36 /D 68 100 +D ENQ $E 37 /E 69 101 +E ACK $F 38 /F 70 102 +F BEL $G 39 /G 71 103 +G BS $H 40 /H 72 104 +H HT $I 41 /I 73 105 +I 10 LF $J 42 /J 74 106 +J 11 VT $K 43 /K 75 107 +K 12 FF $L 44 /L 76 108 +L 13 CR $M 45 77 109 +M 14 SO $N 46 78 110 +N 15 SI $O 47 /O 79 111 +O 16 DLE $P 48 80 112 +P 17 DC1 $Q 49 81 113 +Q 18 DC2 $R 50 82 114 +R 19 DC3 $S 51 83 115 +S 20 DC4 $T 52 84 116 +T 21 NAK $U 53 85 117 +U 22 SYN $V 54 86 118 +V 23 ETB $W 55 87 119 +W 24 CAN $X 56 88 120 +X 25 EM $Y 57 89 121 +Y 26 SUB $Z 58 /Z 90 122 +Z 27 ESC %A 59 %F 91 %K 123 %P 28 FS %B 60 %I 94 %N 126 %S 31 US %E 63 %J 95 %O 127 DEL %T, %X, %Y, %Z == 참고 == 분류:바코드