Головна / Калькулятори / Онлайн симулятор стиснення даних
Безкоштовні онлайн-інструменти

Онлайн симулятор стиснення даних

Введіть текст і побачте, як кодування Гаффмана зменшує кількість бітів. Приклади: AAAA → 4 біти, ABBC → 6 бітів. Без завантаження файлів. Обробка виконується…

Почати роботу

Що робить цей симулятор?

Це освітній інструмент для демонстрації кодування Гаффмана. Він не створює архівів і не стискає файли. Ви вводите текст, а інструмент показує, як частоти символів впливають на довжину кодів.

Приклад роботи

Введіть текст AAAA. Інструмент покаже, що оригінальний розмір у UTF-8 становить 32 біти, а після кодування Гаффмана — лише 4 біти. Для тексту ABBC вихідні 32 біти перетворюються на 6 бітів. Для китайського тексту 你好 (48 бітів у UTF-8) стиснення дає 2 біти, оскільки кожен символ зустрічається один раз, але кодів два.

Як обчислюються біти?

Початкова кількість бітів — це довжина тексту в байтах UTF-8, помножена на 8. Кількість бітів після стиснення — це сума добутків частоти кожного символу на довжину його коду. Це не враховує розмір таблиці кодів, заголовків або вирівнювання, тому фактичний розмір стисненого файлу був би більшим.

Обмеження

  • Максимальна довжина введення — 100 000 UTF-16 кодових одиниць (не символів і не байтів). Багато емодзі займають дві одиниці.
  • Пробіли, переходи на новий рядок, регістр літер і комбіновані знаки вважаються окремими кодовими точками.
  • Якщо частоти однакові, коди можуть відрізнятися залежно від порядку об'єднання вузлів; важлива зважена довжина.
  • Інструмент не є шифруванням і не передає дані — все обробляється у вашому браузері.

Часті запитання

Чому в результаті символи відображаються як \n або \t?

Інструмент показує коди символів у JSON-нотації, тому пробіли, табуляції та переходи на новий рядок відображаються як escape-послідовності (наприклад, \n), а не як видимі символи. Це лише відображення, сам текст містить справжні символи.

Чи можу я завантажити стиснений файл?

Ні. Інструмент не створює архівів і не пропонує завантаження. Він лише показує теоретичну кількість бітів для навчальних цілей.

Чому для тексту з одним символом код дорівнює 0?

Якщо в тексті лише один унікальний символ, дерево Гаффмана складається з одного вузла, і йому присвоюється код 0. Це окремий випадок, передбачений алгоритмом.

Обробка виконується локально у вашому браузері.