Diferenças entre edições de "UTF-16"

1 851 bytes adicionados ,  12h38min de 18 de janeiro de 2005
Tá quase
(Tá quase)
Hoje em dia, UTF-16 é a representação nativa de texto no [[Microsoft Windows]] e na [[Linguagem de programação Java]].
 
 
Ele é um formato de transformação de [[Unicode]] 16 bits, que permite a representação de séries de caracteres abstratos do Unicode e do ISO/IEC 10646, como uma série de palavras de 16 bits convenientes para armazenagem e transmissão via [[redes de computadores]]. UTF-16 é oficialmente definido no Annex Q of ISO/IEC 10646-1. Também é descrito no "The Unicode Standard version 3.0 and higher", assim como no RFC 2781 da IETF.
==Exemplos em UTF-16==
 
 
<table border="1">
<tr><th>identificador do caractere</th><th>caractere</th><th>código UTF-16 </th><th>exemplo de [[glifo]]*</th></tr>
<tr>
<td>122 (hexa 7A)</td><td>Z minúsculo (latino)</td><td>007A</td><td>z</td>
</tr>
<tr>
<td>946 (hexa 3B2)</td><td>Beta minúsculo (grego)</td><td>03B2</td><td>&#946;</td>
</tr>
<tr>
<td>27700 (hexa 6C34)</td><td>água (chinês)</td><td>6C34</td><td>&#27700;</td>
</tr>
<tr>
<td>119070 (hexa 1D11E)</td><td>clave de sol</td><td>D834 DD1E</td><td>&#119070;</td>
</tr>
</table>
''* Pode ser necessário que você configure seus programas e instale [[fonte]]s para ver corretamente os glifos''
 
==Exemplos de serializações nos três esquemas UTF-16==
 
{| border="1" cellpadding="5" cellspacing="0" align="center"
|+'''Serializações'''
|-
! style="background:#efefef;" | mensagem
! style="background:#efefef;" | Unicode
! style="background:#efefef;" | UTF-16 (l)
! style="background:#efefef;" | UTF-16 (b)
! style="background:#efefef;" | UTF-16LE
! style="background:#efefef;" | UTF-16BE
|-
| z &#946; &#27700; || 00007A 0003B2 006C34 || FF FE 7A 00 B2 03 34 6C || FE FF 00 7A 03 B2 6C 34 || 7A 00 B2 03 34 6C || 00 7A 03 B2 6C 34
|-
| z &#119070; || 00007A 01D11E || FF FE 7A 00 34 D8 1E DD || FE FF 00 7A D8 34 DD 1E || 7A 00 34 D8 1E DD || 00 7A D8 34 DD 1E
|-
|}
 
===Example UTF-16 Encoding Procedure===
 
The character at code point 64321 (hexadecimal) is to be encoded. Since it is above FFFF, it must be encoded with a surrogate pair, as follows:
 
v = 0x64321
v&prime; = v - 0x10000
= 0x54321
= 0101 0100 0011 0010 0001
 
vh = 0101010000 // higher 10 bits of v&prime;
vl = 1100100001 // lower 10 bits of v&prime;
w1 = 0xD800 // the resulting 1st word is initialized with the lower bracket
w2 = 0xDC00 // the resulting 2nd word is initialized with the lower bracket
w1 = w1 | vh
= 1101 1000 0000 0000 | 01 0101 0000
= 1101 1001 0101 0000
= 0xD950
 
w2 = w2 | vl
= 1101 1100 0000 0000 | 11 0010 0001
= 1101 1111 0010 0001
= 0xDF21
 
The correct encoding for this character is thus the following word sequence:
0xD950 0xDF21
 
 
[[Category:Character sets]]
[[Category:Unicode]]
[[de:UTF-16]]
[[fr:UTF-16]]
[[he:UTF-16]]
[[pl:UTF-16]]
[[sk:UTF-16]]
 
 
 
[[categoria:Informática]]
 
 
[[categoria:Codificação]]
93

edições