Code16K

Code 16K este o simbologie stivuită, cu mai multe rânduri, dezvoltată în 1989 ca alternativă mai ușor de tipărit și decodat față de Code 49, construită pe structura Code 128.

Introducere
Code 16K a fost dezvoltat de Ted Williams în 1989 pentru a oferi o simbologie cu mai multe rânduri, mai simplă de tipărit și decodat. Williams a dezvoltat de asemenea Code 128, iar structura lui 16K se bazează pe Code 128. Nu întâmplător, 128 la pătrat este egal cu 16.000, sau 16K pe scurt. Code 16K a rezolvat o problemă inerentă a Code 49, a cărui structură necesită o cantitate mare de memorie pentru tabelele și algoritmii de codificare și decodare. 16K este o simbologie stivuită.

Fiecare simbol Code 16K conține între 2 și 16 rânduri, cu 5 caractere ASCII per rând. În plus, până la 107 simboluri de 16 rânduri pot fi concatenate, permițând codificarea a până la 8.025 caractere ASCII, sau 16.050 cifre numerice. În modul extins, primele trei caractere din fiecare simbol de 16 rânduri definesc caracterul de mod, poziția simbolului de 16 rânduri în cadrul blocului și numărul total de simboluri din bloc.

Codul este o simbologie continuă, de lungime variabilă, care poate codifica întregul set ASCII de 128 de caractere. Valoarea minimă a dimensiunii x este de 7,5 mils pentru ca un simbol să poată fi citit de un cititor necunoscut. Înălțimea minimă a barei este de 8 ori dimensiunea x. Densitatea maximă de date este de 208 caractere alfanumerice pe inch pătrat, sau 417 cifre numerice pe inch pătrat, atunci când simbolul este tipărit la 7,5 mils. În industria sanitară, de exemplu, un simbol Code 16K tipărit cu o dimensiune x de 7,5 mils, incluzând un caracter de identificare (flag), un număr NDC de 10 cifre, o dată de expirare de 5 cifre și un cod de lot alfanumeric de 10 caractere, ar încăpea într-un simbol care măsoară doar 0,35 pe 0,61 inch.

Simbolurile Code 16K pot fi citite cu scanere laser cu fascicul mobil modificat sau scanere CCD. Rândurile pot fi scanate în orice ordine; după ce a fost scanat ultimul rând, cititorul de coduri de bare pune automat informația în secvența corectă. Etichetele pot fi tipărite folosind tehnologii de tipărire standard.

Code 16K este interesant deoarece este practic o serie de rânduri Code 128 în video inversat, stivuite unele peste altele, cu bare de susținere, caractere de start/stop, un simbol de start, umplutură (padding) și simboluri de control adăugate.

Mod Set de cod inițial Mod de shift inițial
0 A niciunul
1 B niciunul
2 C niciunul
3 B FNC1
4 C FNC1
5 C niciunul
6 C niciunul
FNC1, sau „function 1", înseamnă că datele următoare trebuie interpretate așa cum ar fi interpretate la un UPC. 1SB și 2SB înseamnă „single-shift B" și „double-shift B", adică următorul 1 caracter, respectiv următoarele 2 caractere, provin din setul de caractere B. FNC-urile și Shift-urile sunt de asemenea definite în cadrul setului de caractere.

Un bloc Code 16K poate conține până la 16 rânduri, separate prin bare de susținere orizontale. Partea de sus și de jos a simbolului au bare de susținere mai lungi, pentru a oferi zone de liniște la început și la sfârșit. Fiecare rând are propriile caractere de start și stop și conține 5 simboluri. Caracterele PAD trebuie inserate acolo unde este necesar pentru ca un rând să conțină 5 simboluri.

Sumă de control
Există 2 sume de control la sfârșitul codului, calculate prin ponderarea sumei valorilor fiecărui caracter, inclusiv caracterul de start.

Primul simbol de control începe ponderarea de la 2, iar al doilea începe ponderarea de la 1. Apoi se ia modulo 107 din sumă. Astfel, dacă valorile caracterelor ar fi 22, 10, 15, 20, cele două sume de control ar fi:
(2*22 + 3*10 + 4*15 + 5*20) % 107
(1*22 + 2*10 + 3*15 + 4*20) % 107

Pentru mai multe informații vizitați www.spatula.net.