Simulatore di compressione dati online
Prova il simulatore di compressione dati online: incolla un testo, calcola i bit Huffman e confrontali con i bit UTF-8 originali. L’elaborazione avviene loca…
Inizia a usare
Capire la compressione con un esempio concreto
Il simulatore non comprime file: è uno strumento educativo per vedere come la codifica di Huffman assegna codici più brevi ai caratteri più frequenti. Incolla ad esempio ABBC: il risultato mostrerà 32 bit UTF-8 originali e 6 bit di payload. Con AAAA ottieni 32 bit originali e 4 bit di payload. Con il testo cinese 你好 i bit originali sono 48, ma il payload è di soli 2 bit perché ci sono solo due simboli distinti.
Come funziona il calcolo
Il testo viene convertito in UTF-8 e la lunghezza in byte viene moltiplicata per otto per ottenere i bit originali. Per il payload, il simulatore conta le frequenze dei singoli code point Unicode e costruisce un albero binario di Huffman combinando i due nodi meno frequenti. Se c'è un solo carattere distinto, il suo codice è 0. La lunghezza del payload è la somma di frequenza × lunghezza del codice per ogni simbolo.
Limitazioni importanti
Il payload esclude il codebook, l'albero, le intestazioni, il padding e il contenitore: non è una dimensione di file reale. Non aspettarti un rapporto di compressione garantito, specialmente per testi brevi. Il limite di input è di 100000 unità di codice UTF-16 (non byte UTF-8 né caratteri percepiti): molte emoji contano come due unità. L'elaborazione avviene interamente nel browser; non è una forma di crittografia.
Domande frequenti
Perché vedo \n nel risultato?
Il simulatore usa la notazione JSON per rappresentare i caratteri di spazio o a capo, così puoi vedere chiaramente quali simboli sono stati contati. Non è un errore: il carattere effettivo è un a capo, ma viene mostrato in forma escape.
Perché il payload è così piccolo per testi brevi?
Perché il payload non include le informazioni necessarie a decodificare (come l'albero di Huffman). È solo la somma dei bit dei codici. Per una compressione reale servirebbe includere questi metadati, quindi il risparmio effettivo è minore.
Posso incollare un file intero?
Il limite è di 100000 unità di codice UTF-16. Se il testo è più lungo, il simulatore lo rifiuta. Su dispositivi mobili, incolla prima un piccolo campione, calcola esplicitamente e controlla il risultato.
Checklist per l'uso
- Incolla un testo di esempio (non un file).
- Avvia il calcolo esplicitamente.
- Controlla l'elenco dei simboli e i codici binari.
- Confronta i bit originali con i bit del payload.
- Ricorda che il payload non è una dimensione di file reale.
L’elaborazione avviene localmente nel browser.