> comma | self | delimit <
// Codice Comma – codici binari auto-delimitanti con confini automatici
Auto-delimitante
Non sono necessari separatori tra codici consecutivi.
Struttura semplice
Prefisso di lunghezza in forma unaria seguito dai bit di dati.
Evitare i pattern
La variante tabù evita determinati pattern di bit quando serve.
>> informazioni tecniche
Come funziona il codice Comma:
Il codice Comma codifica un intero n così: 1) scrive la lunghezza in bit L-1 in forma unaria (L-1 uno seguiti da uno zero), 2) aggiunge la rappresentazione binaria senza il primo 1. La variante tabù modifica la codifica per evitare pattern come 11, utile in alcuni canali di comunicazione.
Esempi di codice Comma:
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
Perché usare il codice Comma:
- ▸Proprietà auto-delimitante
- ▸Nessun bisogno di separatori
- ▸Semplice da implementare
- ▸Opzioni per evitare specifici pattern di bit
- ▸Codici prefix-free
>> domande frequenti
Che cos’è il codice Comma?
Il codice Comma è un codice binario auto-delimitante che codifica gli interi usando un prefisso di lunghezza unaria seguito dai bit di dati. Si chiama "Comma" perché i codici possono essere concatenati senza separatori espliciti, come elementi in un elenco.
Cosa lo rende auto-delimitante?
Il prefisso di lunghezza unaria indica al decodificatore esattamente quanti bit di dati seguono. Quando vedi k uno seguiti da uno zero, sai che devi leggere esattamente altri k bit. Ciò consente di concatenare più codici senza separatori aggiuntivi.
Che cos’è la variante tabù?
La variante tabù del codice Comma modifica la codifica per evitare certi pattern di bit (come 11). È utile in canali in cui determinati pattern causano problemi o hanno un significato speciale, ad esempio come marcatori di sincronizzazione.
Dove viene utilizzato il codice Comma?
Il codice Comma viene usato nella compressione dati, nei protocolli di rete e nei sistemi di archiviazione in cui sono importanti le proprietà auto-delimitanti. È particolarmente utile quando occorre memorizzare più interi a lunghezza variabile senza campi di lunghezza separati.