Ce code-barres commence et finit par une barre pleine (souvent appelé guard rail) qui joue le rôle de garde-fou.
Il est pourvu d'un chiffre de vérification (clé de contrôle) après le code ZIP ou ZIP+4.
Le chiffre de vérification est calculé comme suit :
on additionne toutes les données devant être codées. Si vous voulez envoyer une lettre de quelque part à Young America Township dans le Minnesota, vous devrez l'envoyer au 55555-1234, qui a pour somme 35 ;
on cherche le nombre nécessaire à ajouter à ce nombre pour qu'il soit divisible par 10 (Formule mathématique: 10 - Modulo(somme) ) Dans ce cas c'est 5 ; il s'agit de la clé de contrôle.
La table de codage est présentée ici à droite. | note une barre pleine et ╷ une demi-barre.
Chaque chiffre est individuellement représenté par un ensemble de cinq barres ; deux de ces cinq sont des barres pleines.
Les barres pleines représentent les bits à un dans une pseudo-base 2 dans laquelle les places représentent depuis la gauche vers la droite : 7, 4, 2, 1, 0.
Donc, avec ce principe, zéro est codé comme 11, ou encore 11000.
Exemple
L'exemple mentionné ci-dessus du code 55555-1234 conduit aux étapes suivantes :
la somme est 35 ;
le chiffre de vérification est donc 5 ;
les données codées seront donc 5555512345 ;
assemblées avec les barres garde-fous, elles seront représentées par :