// Code Comma – codes binaires auto-délimités avec frontières automatiques
Aucun séparateur n’est nécessaire entre les codes successifs.
Préfixe de longueur en unaire suivi des bits de données.
La variante taboue évite certains motifs de bits lorsque c’est nécessaire.
Le code Comma encode un entier n en : 1) écrivant la longueur en bits L-1 en unaire (L-1 uns suivis d’un zéro), 2) ajoutant la représentation binaire sans le premier 1. La variante taboue modifie l’encodage pour éviter des motifs comme 11, utile dans certains canaux de communication.
Basic Comma Code: 0 → 0 (special case) 1 → 01 (0 ones + 0 + empty) 2 → 100 (1 one + 0 + '0') 3 → 101 (1 one + 0 + '1') 4 → 11000 (2 ones + 0 + '00') 5 → 11001 (2 ones + 0 + '01') Concatenated: 1,2,3 → 01 100 101 → 01100101 Self-delimiting - can decode without separators Taboo variant avoids '11' pattern: Uses different encoding to prevent consecutive 1s
Le code Comma est un code binaire auto-délimité qui encode les entiers en utilisant la longueur en bits en unaire suivie des bits de données. On l’appelle « Comma » parce que les codes peuvent être concaténés sans séparateurs explicites, comme des éléments d’une liste.
Le préfixe de longueur en unaire indique exactement au décodeur combien de bits de données suivent. Lorsque vous voyez k uns suivis d’un zéro, vous savez qu’il faut lire exactement k bits supplémentaires. Cela permet de chaîner plusieurs codes sans séparateurs supplémentaires.
La variante taboue du code Comma modifie l’encodage afin d’éviter certains motifs de bits (comme 11). Elle est utile dans les canaux où certains motifs posent problème ou ont une signification particulière, par exemple comme marqueurs de synchronisation.
Le code Comma est utilisé en compression de données, dans les protocoles réseau et les systèmes de stockage où les propriétés auto-délimitées sont importantes. Il est particulièrement utile pour stocker plusieurs entiers de longueur variable sans champs de longueur séparés.