encode | decode | delimit

> comma | self | delimit <

// Kod Comma – samoograniczające kody binarne z automatycznymi granicami

0 znaków
0 znaków

>> funkcje

[SELF-DELIMIT]

Samoograniczanie

Brak potrzeby stosowania separatorów między kolejnymi kodami.

[SIMPLE]

Prosta struktura

Unarny prefiks długości, po którym następują bity danych.

[TABOO]

Unikanie wzorców

Wariant tabu pozwala unikać określonych wzorców bitów w razie potrzeby.

>> informacje techniczne

Jak działa kod Comma

Kod Comma koduje liczbę całkowitą n w następujący sposób: 1) zapisuje długość w bitach L-1 w postaci unarnej (L-1 jedynek zakończonych zerem), 2) dołącza reprezentację binarną bez pierwszej jedynki. Wariant tabu modyfikuje kodowanie, aby unikać wzorców takich jak 11, co jest przydatne w niektórych kanałach komunikacyjnych.

Przykłady kodu 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

Dlaczego warto używać kodu Comma

  • Samoograniczająca własność
  • Brak konieczności stosowania separatorów
  • Łatwa implementacja
  • Możliwość unikania określonych wzorców bitów
  • Kody prefiksowo jednoznaczne (prefix-free)

>> najczęstsze pytania

Czym jest kod Comma?

Kod Comma to samoograniczający kod binarny, który koduje liczby całkowite przy użyciu unarnego prefiksu długości oraz następujących po nim bitów danych. Nazywa się „Comma”, ponieważ kody można łączyć bez jawnych separatorów, jak elementy listy.

Co sprawia, że jest samoograniczający?

Unarny prefiks długości informuje dekoder, ile dokładnie bitów danych następuje dalej. Gdy widzisz k jedynek zakończonych zerem, wiesz, że należy odczytać dokładnie k kolejnych bitów. Dzięki temu wiele kodów można połączyć bez dodatkowych separatorów.

Czym jest wariant tabu?

Wariant tabu kodu Comma modyfikuje sposób kodowania tak, aby unikać określonych wzorców bitów (np. 11). Jest to przydatne w kanałach, w których pewne wzorce powodują problemy lub mają szczególne znaczenie, na przykład znaczniki synchronizacji.

Gdzie stosuje się kod Comma?

Kod Comma jest używany w kompresji danych, protokołach sieciowych i systemach przechowywania, gdzie ważne są własności samoograniczające. Szczególnie przydatny jest przy przechowywaniu wielu liczb całkowitych o zmiennej długości bez oddzielnych pól długości.