UTF-32: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
mNessun oggetto della modifica
 
(12 versioni intermedie di 12 utenti non mostrate)
Riga 1:
'''UTF-32''' ('''U'''nicodeUnicode '''T'''ransformationTransformation '''F'''ormatFormat, '''32''' bit) è una [[codifica deidi caratteri]] [[Unicode]] in sequenze di numeri a 32-[[Bit (informatica)|bit]]. È conosciuta anche come '''UCS-4''' ([[Universal Character Set]] a 4 byte).
{{Tabella Unicode}}
'''UTF-32''' ('''U'''nicode '''T'''ransformation '''F'''ormat, '''32''' bit) è una codifica dei caratteri [[Unicode]] in sequenze di numeri a 32-[[Bit (informatica)|bit]]. È conosciuta anche come '''UCS-4''' ([[Universal Character Set]] a 4 byte).
 
A differenza delle altre codifiche unicode[[Unicode]] ([[UTF-8]], [[UTF-16]]) che usano una rappresentazione dei dati a lunghezza variabile, UTF-32 è a lunghezza fissa. Proprio l'uso di 4 [[byte]] per ogni carattere lo porta a non essere molto efficiente sulla gestione dello spazio. Nello specifico, i caratteri al di fuori del ''Basic Multilingual Plane'' sono così rari che per molti testi possono essere considerati come inesistenti (ai fini del calcolo della dimensione), ma questo fatto rende la dimensione del testo codificato in UTF-32 da due a quattro volte più grande rispetto alle altre codifiche.
 
Anche se l'avere un numero fisso di byte per carattere da codificare può sembrare più semplice, questa codifica è usata meno frequentemente delle altre. Facilita la divisione di stringhe, ma non significativamente se confrontata con UTF-8 e UTF-16. Non semplifica il calcolo della lunghezza effettiva della stringa visualizzata se non in limitati casi, perché, anche con [[font]] a larghezza fissa ci possono essere più ''punti di codifica'' per ogni posizione di carattere (i caratteri combinati) o più di un carattere visualizzato per una singola codifica (per esempio negli [[Caratteri CJK|ideogrammi CJK]]). I ''caratteri combinati'' fanno si che gli [[Editor (programma)|editor]] di testo non possano trattare ogni singolo carattere codificato come un singolo carattere che sia possibile editare.
 
Sebbene in generale poco utilizzata, questa codifica ha una proprietà che può renderla interessante in qualche caso: il valore numerico dei 32 bit che codificano in UTF-32 ciascun ''code point'' (punto di codifica) è esattamente il valore numerico che identifica il code point. In altri termini, se il nome del code point è ''U+XYZK'' (con ''XYZK'' cifre esadecimali) la rappresentazione esadecimale del numero binario di 32 bit che ne rappresenta la codifica UTF-32 è esattamente ''XYZK''.
 
== Storia ==
Line 10 ⟶ 11:
 
UCS-4 è sufficiente per rappresentare tutti i caratteri del range definito da Unicode, che ha 1.114.112 (= 2<sup>20</sup>+2<sup>16</sup>) codici (''code points'') e quindi richiede valori da 0 e 10FFFF esadecimale.
Qualcuno considerò uno spreco riservare un'area di ''space code'' così grande per mappare un relativamente piccolo insieme di codici e così venne proposta una nuova codifica, UTF-32. Esso è un sottoinsieme di UCS-4 che usa codici a 32 bit nel ''code space'' 0-10FFFF.<!--
 
<!-- UTF-32 was originally a subset of the UCS-4 standard, but the Principles and Procedures document of [[JTC1/SC2/WG2]] states that all future assignments of characters will be constrained to the BMP or the first 14 supplementary planes and has removed former provisions for private-use code positions in groups 60 to 7F and in planes E0 to FF.
 
Accordingly UCS-4 and UTF-32 are now identical except that the UTF-32 standard has additional Unicode semantics.
Line 23 ⟶ 24:
 
== Collegamenti esterni ==
* {{en}} [httphttps://www.unicode.org/versions/Unicode4.0.0/ch03.pdf The Unicode Standard 4.1, capitolo 3] - definizione dell'UTF-32 al §3.10, D43-D45
* {{en}} [httphttps://www.unicode.org/reports/tr19/tr19-9.html Unicode Standard Annex #19] - definizione dell'UTF-32 per Unicode 3.x (marzo 2001; aggiornato marzo 2002)
* {{en}} [https://web.archive.org/web/20050330110411/http://mail.apps.ietf.org/ietf/charsets/msg01095.html Registrazione dei charset: UTF-32, UTF-32BE, UTF-32LE] - Annuncio che UTF-32 è stato aggiunto allo IANA charset registry (aprile 2002)
 
{{Tabella Unicode}}
{{portale|informatica}}
 
[[Categoria:Repertori di caratteri]]
 
[[de:UTF-32]]
[[en:UTF-32/UCS-4]]
[[fr:UTF-32]]
[[he:UTF-32]]
[[hr:UTF-32]]
[[hu:UTF-32/UCS-4]]
[[ja:UTF-32]]
[[pl:UTF-32/UCS-4]]
[[pt:UTF-32/UCS-4]]
[[sv:UTF-32]]
[[zh:UTF-32]]