Симулятор алгоритма RLE

📦 Симулятор алгоритма RLE (кодирование и декодирование)

1. Кодирование (сжатие)

Можно вводить любые символы. Для не-ASCII используется UTF-8.
—
Коэффициент сжатия = исходные байты / сжатые байты. Если меньше 1 — сжатие неэффективно.
Показать шаги кодирования
#СимволДлина серииКод

2. Декодирование (распаковка)

Формат: пары байтов «счётчик, символ» в hex. Пробелы игнорируются.
—
Показать таблицу байтов и ASCII-символов
—

Справка: как работает RLE

RLE (Run-Length Encoding) — кодирование длин серий. Идущие подряд одинаковые символы заменяются парой (счётчик, символ).

Пример: AAAAABBB → (5,A)(3,B) → в hex 05 41 03 42.

Особенность: если символы чередуются (нет серий), RLE увеличивает размер вдвое — по байту на счётчик и символ для каждого одиночного символа. Поэтому RLE эффективен только на данных с длинными повторами (BMP-картинки с однотонными областями, но не JPEG с плавными переходами).

В формате BMP RLE8 используется escape-байт 00 для маркеров конца строки, конца файла и «абсолютного» режима — но в учебной практике обычно достаточно базовой схемы «счётчик, символ».