// Código Comma – códigos binários auto-delimitados com fronteiras automáticas
Não é necessário separador entre códigos consecutivos.
Prefixo de comprimento em formato unário seguido pelos bits de dados.
A variante tabu evita determinados padrões de bits quando necessário.
O código Comma codifica um inteiro n da seguinte forma: 1) escreve o comprimento em bits L-1 em formato unário (L-1 uns seguidos de um zero), 2) anexa a representação binária sem o primeiro 1. A variante tabu modifica a codificação para evitar padrões como 11, o que é útil em certos canais de comunicação.
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
O código Comma é um código binário auto-delimitado que codifica inteiros usando um prefixo de comprimento unário seguido pelos bits de dados. Recebe esse nome porque os códigos podem ser concatenados sem separadores explícitos, como itens em uma lista.
O prefixo de comprimento unário informa ao decodificador exatamente quantos bits de dados vêm em seguida. Quando você vê k uns seguidos de um zero, sabe que deve ler exatamente k bits adicionais. Isso permite concatenar vários códigos sem separadores extras.
A variante tabu do código Comma ajusta a codificação para evitar certos padrões de bits (como 11). Ela é útil em canais nos quais determinados padrões causam problemas ou possuem significado especial, como marcadores de sincronização.
O código Comma é usado em compressão de dados, protocolos de rede e sistemas de armazenamento em que propriedades auto-delimitadas são importantes. É especialmente útil para armazenar vários inteiros de comprimento variável sem campos de comprimento separados.