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

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

Досліджуйте коди Гаффмана, порівнюйте біти UTF-8 й корисного навантаження, копіюйте результат. Навчальна демонстрація без архіву.

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

Значення результатів

Симулятор рахує кодові точки Unicode та будує двійкове дерево Гаффмана, об’єднуючи два вузли з найменшою частотою. Єдиний унікальний символ отримує код 0. Той самий точний текст тут дає ті самі коди. Інший порядок розв’язання однакових частот може дати інші допустимі коди; порівнюйте зважену довжину корисного навантаження.

Приклади для перевірки

ABBC дає B=0, A=10 і C=11: 2×1 + 1×2 + 1×2 = 6 бітів навантаження проти 32 бітів UTF-8. AAAA дає 32 і 4 біти; 你好 — 48 і 2 біти; справжні символи 😀😀 — 64 і 2 біти.

Введення й відображення

Ліміт — 100 000 кодових одиниць JavaScript UTF-16, а не байтів UTF-8 чи видимих символів. Багато емодзі використовують дві одиниці; одна видима послідовність може мати кілька кодових точок. Порожній текст відхиляється, але пробільні знаки є допустимими даними. JSON показує новий рядок як \n, табуляцію як \t, а звичайний пробіл — у лапках, " ". Це не змінює введений символ.

Межі демонстрації

Вихідні біти — довжина UTF-8 у байтах, помножена на вісім. Навантаження сумує частоту кожного символу, помножену на довжину коду. Таблиця кодів, дерево, заголовки, заповнення й контейнерні витрати не враховуються. Це не розмір стисненого файлу й не гарантія економії. Архів, стиснений двійковий файл для завантаження та декомпресор не створюються; це не шифрування. Обчислення відбувається в браузері. Багато різних символів можуть утворити довгу таблицю.

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