Convertire testo in binario / esadecimale / ASCII
Dati di input
| Testo | Hi |
|---|
Convertire testo in binario / esadecimale / ASCII
Inserisci un testo qualsiasi per vederlo in binario, esadecimale e codici decimali dei caratteri. Binario ed esadecimale seguono la sequenza di byte UTF-8, mentre il decimale riporta il punto di codice Unicode di ogni carattere, ovvero il valore ASCII familiare per il testo inglese semplice.
Dati di input
Testo
Risultati
Inserisci un valore per visualizzare i risultati.
Codifiche
Testo in binario / esadecimale / ASCII
Il testo è memorizzato come numeri. Ogni carattere che un computer gestisce — una lettera, una cifra, un segno di punteggiatura, un emoji — ha un codice numerico, e quel codice può essere scritto in binario, in esadecimale o in decimale. Questo strumento prende un testo e mostra tutte e tre le forme insieme, così da vedere esattamente come le parole sullo schermo diventano i bit sul disco. È utile per individuare problemi di codifica, costruire tabelle di consultazione, capire come funzionano i codici dei caratteri o, semplicemente, per curiosità su cosa sia davvero una stringa sotto la superficie.
Dai caratteri ai codici
La corrispondenza tra caratteri e numeri è definita da un set di caratteri. Il più antico di uso comune è ASCII, che assegna i 128 codici da 0 a 127 alle lettere latine senza accento, alle cifre, alla punteggiatura comune e ad alcuni codici di controllo. La maiuscola H è 72, la i minuscola è 105, uno spazio è 32 e la cifra 0 è 48. Il testo moderno usa Unicode, che estende la stessa idea a ogni scrittura e simbolo in uso, lasciando invariati i codici ASCII originali.
Una volta che un carattere ha un codice, scriverlo in un’altra base è semplice aritmetica. Il numero 72 è 01001000 in binario e 48 in esadecimale. Questo strumento elenca il codice decimale di ciascun carattere e poi il binario e l’esadecimale dei byte che lo codificano.
ASCII rispetto a UTF-8
ASCII copre solo 128 caratteri, ciascuno contenuto in un singolo byte. UTF-8 è la codifica che consente all’intera gamma di Unicode di transitare attraverso sistemi pensati per i byte. La sua proprietà chiave è la retrocompatibilità: ogni carattere ASCII è codificato come esattamente un byte, identico al suo valore ASCII. Tutto ciò che è fuori dall’intervallo ASCII si espande tra due e quattro byte.
Per questo l’output binario ed esadecimale qui è raggruppato per byte UTF-8. Una lettera accentata come é (punto di codice 233) è codificata con i due byte C3 A9; un tipico carattere CJK occupa tre byte; un emoji come 😀 (punto di codice 128512) ne occupa quattro. L’output decimale, invece, elenca un punto di codice per carattere, così un carattere multibyte appare comunque come un singolo numero decimale anche se occupa più byte.
Leggere l’output
Ogni gruppo separato da uno spazio nei risultati binario ed esadecimale è un byte: otto bit o due cifre esadecimali. Raggruppare per byte mantiene visibili i confini tra i caratteri e facilita l’estrazione del codice di un singolo carattere da una stringa lunga. Il conteggio dei caratteri e quello dei byte UTF-8 sono mostrati a fianco; quando differiscono, il testo contiene caratteri non ASCII che si espandono su più byte.
Esempio svolto
Prendiamo il testo Hi. Entrambi i caratteri sono nell’intervallo ASCII, quindi ciascuno è un singolo byte.
I codici decimali sono 72 105, l’esadecimale è 48 69 e il binario è 01001000 01101001. Due caratteri, due byte: il conteggio dei caratteri e quello dei byte coincidono perché il testo è ASCII puro.
Prendiamo ora un singolo emoji, 😀. È un carattere, ma si trova ben oltre ASCII, al punto di codice 128512 (U+1F600). UTF-8 lo codifica con i quattro byte F0 9F 98 80, perciò l’output binario è composto da quattro gruppi da 8 bit, l’output decimale è il solo punto di codice 128512 e il conteggio dei byte è 4 mentre quello dei caratteri è 1.
Invertire la codifica
Il processo è senza perdite e reversibile. Suddividi di nuovo il binario in byte da 8 bit, oppure leggi l’esadecimale due cifre alla volta, ricomponi la sequenza di byte UTF-8 e decodificala. Poiché UTF-8 è uno standard fisso, qualsiasi strumento conforme ricostruisce il testo originale con precisione: nessuna informazione va persa passando dal testo al binario e viceversa.
Calcolatori correlati
Per vedere come un singolo numero si scrive in decimale, binario ed esadecimale senza il passaggio della codifica dei caratteri, usa il Convertitore di base numerica. Per visualizzare un indirizzo IPv4 a 32 bit nelle sue forme intera, esadecimale e binaria, vedi Convertitore di rappresentazione IPv4. E per misurare quanta informazione trasporta una stringa, lo Calcolatore di entropia di Shannon ne stima l’entropia.
Domande frequenti (FAQ)
Come viene trasformato il testo in binario?
I computer memorizzano il testo come numeri. A ogni carattere è assegnato un codice: la lettera H è 72, la i è 105, uno spazio è 32 e così via. Quei numeri vengono scritti in base 2 (binario) usando uni e zeri.
Per i caratteri nell’intervallo ASCII (le lettere inglesi, le cifre e la punteggiatura comune), ogni carattere è un singolo byte e diventa quindi otto bit. La parola Hi è 72 e 105, cioè in binario 01001000 e 01101001.
Qual è la differenza tra ASCII e UTF-8?
ASCII è lo schema originale a 7 bit che copre 128 caratteri: le lettere latine senza accento, le cifre, la punteggiatura e i codici di controllo. Ogni carattere ASCII entra in un singolo byte.
UTF-8 è un sovrainsieme in grado di rappresentare ogni carattere Unicode mantenendo la compatibilità byte per byte con ASCII. I caratteri ASCII restano un byte, ma le lettere accentate ne occupano in genere due, la maggior parte degli altri alfabeti tre e gli emoji quattro. Questo strumento mostra binario ed esadecimale come byte UTF-8: per questo un singolo emoji produce quattro gruppi da 8 bit anziché uno.
Perché le cifre sono raggruppate con spazi?
Ogni gruppo separato da uno spazio è un byte: otto bit nell’output binario, due cifre in quello esadecimale. Il raggruppamento per byte rende visibili i confini tra i caratteri e facilita la lettura del codice di un singolo carattere all’interno di una stringa lunga.
L’output decimale è raggruppato per carattere e non per byte, così un carattere multibyte appare come un unico punto di codice anche se occupa più byte.
Si può riconvertire il binario in testo?
Sì. La codifica è reversibile: dividi il binario in byte da 8 bit, converti ogni byte nel suo numero, ricomponi la sequenza di byte UTF-8 e decodificala in caratteri. Lo stesso vale per la forma esadecimale. Poiché UTF-8 è uno standard ben definito, qualsiasi strumento che legge UTF-8 ricostruirà esattamente il testo originale.
Da provare dopo
Convertitore di rappresentazione IPv4
Inserisci un indirizzo IPv4 in notazione decimale puntata per vederlo come intero a 32 bit, valore esadecimale e binario puntato. Utile per leggere catture di pacchetti, costruire liste di controllo degli accessi e capire come vengono memorizzati gli indirizzi.