Σύνολα κωδικών A, B και C
Το Code 128 εναλλάσσεται ανάμεσα σε τρία σύνολα κωδικών ώστε να χωρά αποδοτικά διαφορετικά είδη δεδομένων. Το σύνολο A καλύπτει κεφαλαία γράμματα, ψηφία και χαρακτήρες ελέγχου· το σύνολο B καλύπτει κεφαλαία και πεζά γράμματα, ψηφία και σημεία στίξης· το σύνολο C πακετάρει δύο ψηφία σε κάθε χαρακτήρα συμβόλου, κάτι που κάνει τους μακριούς αριθμούς πολύ συμπαγείς.
Κάθε χαρακτήρας συμβόλου έχει πλάτος 11 μονάδες, από 3 γραμμές και 3 κενά, και το μοτίβο λήξης είναι 13 μονάδες. Ένας κωδικοποιητής μπορεί να αλλάξει σύνολο στη μέση του γραμμωτού κωδικού για να τον κρατά όσο πιο σύντομο γίνεται.
Ο χαρακτήρας ελέγχου
Κάθε γραμμωτός κωδικός Code 128 τελειώνει με υποχρεωτικό χαρακτήρα ελέγχου. Υπολογίζεται προσθέτοντας την τιμή του χαρακτήρα έναρξης στο άθροισμα της τιμής κάθε χαρακτήρα δεδομένων πολλαπλασιασμένης με τη θέση του και παίρνοντας το υπόλοιπο της διαίρεσης με το 103. Ο χαρακτήρας ελέγχου δεν εμφανίζεται στο κείμενο που διαβάζει ο άνθρωπος.
Το GS1-128 στα logistics
Το GS1-128 είναι Code 128 με χαρακτήρα FNC1 μετά την έναρξη, που σημαίνει ότι το περιεχόμενο είναι Αναγνωριστικά Εφαρμογής GS1 (Application Identifiers). Είναι ο τυπικός γραμμικός γραμμωτός κωδικός σε ετικέτες αποστολής και παλετών, όπου συχνά μεταφέρει έναν SSCC (Αναγνωριστικό Εφαρμογής 00) μαζί με GTIN, αριθμούς παρτίδας και ημερομηνίες.
Το Code 128 καθορίζεται στο ISO/IEC 15417 και χρησιμοποιείται ευρέως για αποστολές, αποθήκευση και εσωτερικές ετικέτες.