CODE
128 SYMBOLOGY
CODE 128 INTRODUCTION
Code 128
is a alphanumeric symbology. Code 128 symbology must include
a checksum digit.Code 128 has three character Set: A,B,C.Three
different start characters tell the reader the character set used
in the following encoding, and three shift codes permits changing
character set inside the symbol. From the table below, we can
see that character set A and B is used to encode alpha-numeric
information while character set C offers double density when being
used to encode numeric data. The special character Shift, changes
the character set of the immediately followed character. The shift
work only with Code A or Code B characters. Four FNC characters
are listed, FNC2 is used to tell barcode reader to store the data
and transmit with next symbol; FNC1, FNC3 and FNC4 are reserved
for future applications.Encoding Table as follow:
VALUE
|
CHARACTER
SET
|
|
VALUE
|
CHARACTER SET
|
A
|
B
|
C
|
A
|
B
|
C
|
00
|
SP
|
SP
|
00
|
|
53
|
U
|
U
|
53
|
01
|
!
|
!
|
01
|
|
54
|
V
|
V
|
54
|
02
|
"
|
"
|
02
|
|
55
|
W
|
W
|
55
|
03
|
#
|
#
|
03
|
|
56
|
X
|
X
|
56
|
04
|
$
|
$
|
04
|
|
57
|
Y
|
Y
|
57
|
05
|
%
|
%
|
05
|
|
58
|
Z
|
Z
|
58
|
06
|
&
|
&
|
06
|
|
59
|
[
|
[
|
59
|
07
|
'
|
'
|
07
|
|
60
|
\
|
\
|
60
|
08
|
(
|
(
|
08
|
|
61
|
]
|
]
|
61
|
09
|
)
|
)
|
09
|
|
62
|
^
|
^
|
62
|
10
|
*
|
*
|
10
|
|
63
|
_
|
_
|
63
|
11
|
+
|
+
|
11
|
|
64
|
NUL
|
`
|
64
|
12
|
,
|
,
|
12
|
|
65
|
SOH
|
a
|
65
|
13
|
-
|
-
|
13
|
|
66
|
STX
|
b
|
66
|
14
|
.
|
.
|
14
|
|
67
|
ETX
|
c
|
67
|
15
|
/
|
/
|
15
|
|
68
|
EOT
|
d
|
68
|
16
|
0
|
0
|
16
|
|
69
|
ENQ
|
e
|
69
|
17
|
1
|
1
|
17
|
|
70
|
ACK
|
f
|
70
|
18
|
2
|
2
|
18
|
|
71
|
BEL
|
g
|
71
|
19
|
3
|
3
|
19
|
|
72
|
BS
|
h
|
72
|
20
|
4
|
4
|
20
|
|
73
|
HT
|
I
|
73
|
21
|
5
|
5
|
21
|
|
74
|
LF
|
j
|
74
|
22
|
6
|
6
|
22
|
|
75
|
VT
|
k
|
75
|
23
|
7
|
7
|
23
|
|
76
|
FF
|
l
|
76
|
24
|
8
|
8
|
24
|
|
77
|
CR
|
m
|
77
|
25
|
9
|
9
|
25
|
|
78
|
SO
|
n
|
78
|
26
|
:
|
:
|
26
|
|
79
|
SI
|
o
|
79
|
27
|
;
|
;
|
27
|
|
80
|
DLE
|
p
|
80
|
28
|
<
|
<
|
28
|
|
81
|
DC1
|
q
|
81
|
29
|
=
|
=
|
29
|
|
82
|
DC2
|
r
|
82
|
30
|
>
|
>
|
30
|
|
83
|
DC3
|
s
|
83
|
31
|
?
|
?
|
31
|
|
84
|
DC4
|
t
|
84
|
32
|
@
|
@
|
32
|
|
85
|
NAK
|
u
|
85
|
33
|
A
|
A
|
33
|
|
86
|
SYN
|
v
|
86
|
34
|
B
|
B
|
34
|
|
87
|
ETB
|
w
|
87
|
35
|
C
|
C
|
35
|
|
88
|
CAN
|
x
|
88
|
36
|
D
|
D
|
36
|
|
89
|
EM
|
y
|
89
|
37
|
E
|
E
|
37
|
|
90
|
SUB
|
z
|
90
|
38
|
F
|
F
|
38
|
|
91
|
ESC
|
{
|
91
|
39
|
G
|
G
|
39
|
|
92
|
FS
|
|
|
92
|
40
|
H
|
H
|
40
|
|
93
|
GS
|
}
|
93
|
41
|
I
|
I
|
41
|
|
94
|
RS
|
~
|
94
|
42
|
J
|
J
|
42
|
|
95
|
US
|
DEL
|
95
|
43
|
K
|
K
|
43
|
|
96
|
FNC3
|
FNC3
|
96
|
44
|
L
|
L
|
44
|
|
97
|
FNC2
|
FNC2
|
97
|
45
|
M
|
M
|
45
|
|
98
|
SHIFT
|
SHIFT
|
98
|
46
|
N
|
N
|
46
|
|
99
|
Code
C
|
Code
C
|
99
|
47
|
O
|
O
|
47
|
|
100
|
Code
B
|
FNC4
|
Code
B
|
48
|
P
|
P
|
48
|
|
101
|
FNC4
|
Code
A
|
Code
A
|
49
|
Q
|
Q
|
49
|
|
102
|
FNC1
|
FNC1
|
FNC1
|
50
|
R
|
R
|
50
|
|
103
|
START
A
|
START
A
|
START
A
|
51
|
S
|
S
|
51
|
|
104
|
START
B
|
START
B
|
START
B
|
52
|
T
|
T
|
52
|
|
105
|
START
C
|
START
C
|
START
C
|
|
|
STOP
|
STOP
|
STOP
|
Code 128 checksum digit calculation
The CODE
128 checksum digit is the result of the weighted sum of the values
of each of the digits modes 103.
The steps
for calculating the check digit are as follows:
- Add the
start character value(103, 104, or 105) to the running checksum.
- Take
each character in the message, take its value, and multiply
it by its character position, and add the total to the running
checksum.
- The checksum
digit is the result of running checksum modulo 103.
Example:to
calculate the checksum digit example :"EASESOFT1234".
String
|
Start
B
|
E
|
A
|
S
|
E
|
S
|
O
|
F
|
T
|
Start
C
|
12
|
34
|
Value
|
104
|
37
|
33
|
51
|
37
|
51
|
47
|
38
|
52
|
99
|
12
|
34
|
Weight
|
1
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
Sum
|
104
|
37*11=37
|
33*2=66
|
51*3=153
|
37*4=148
|
51*5=255
|
47*6=282
|
38*7=266
|
52*8=416
|
99*9=891
|
12*10=120
|
34*11=374
|
STRUCTURE OF A CODE 128 BARCODE
A Code 128
barcode has the following physical structure:
- Start
code, which is the code 103, 104, or 105 from the encoding table
.
- Each
of the data bytes of the message, encoded with the encoding
table.
- The checksum
byte, calculated as described above and encoded using the table.
- Stop
character.
- Termination
bar of 11.
UCC/EAN-128
SYMBOLOGY
UCC/EAN-128
only can encode numeric data using the Code 128 Character Set
C. UCC/EAN-128 starts with character C,follow FNC1 character(
102) and other data.
|