UTF-16: Perbedaan antara revisi
Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 22228027; atribusi sumber disertakan. |
Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi |
||
| Baris 1: | Baris 1: | ||
'''UTF-16''' (16-[[bit]] [[Unicode]] Transformation Format) adalah suatu [[pengkodean karakter]] Unicode yang mampu mengkodekan 1,112,064 angka (disebut ''[[code point]]'') dalam jangkauan kode Unicode dari 0 sampai 0x10FFFF. Pengkodean ini adalah sebuah "variable-width encoding" karena code point itu dikodekan dengan satu atau dua ''code units'' 16-bit . | '''UTF-16''' (16-[[bit]] [[Unicode]] Transformation Format) adalah suatu [[pengkodean karakter]] Unicode yang mampu mengkodekan 1,112,064<ref>2^{16} - 2 \times 2^{10} + 2^{10} \times 2^{10} , di mana 2^{16} adalah BMP, - 2 \times 2^{10} adalah interval U+D800–U+DFFF, dan 2^{10} \times 2^{10} adalah level (''plane'') tertinggi.</ref> angka (disebut ''[[code point]]'') dalam jangkauan kode Unicode dari 0 sampai 0x10FFFF. Pengkodean ini adalah sebuah "variable-width encoding" karena code point itu dikodekan dengan satu atau dua ''code units'' 16-bit . | ||
[[Universal Character Set]] '''UCS-2''' (2-[[byte]]) mirip dengan pengkodean karakter yang sekarang digantikan oleh UTF-16 versi 2.0 sebagai standar Unicode pada bulan Juli 1996. Menghasilkan format dengan panjang tetap (''fixed-length format'') hanya menggunakan code point sebagai unit kode 16-bit dan membuahkan hasil yang tepat sama dengan UTF-16 untuk 97% (63.488; bukan 65.536) dari seluruh code point dalam jangkauan 0-0xFFFF, termasuk semua karakter yang telah diberi nilai saat itu. | [[Universal Character Set]] '''UCS-2''' (2-[[byte]]) mirip dengan pengkodean karakter yang sekarang digantikan oleh UTF-16 versi 2.0 sebagai standar Unicode pada bulan Juli 1996.<ref>[http://www.unicode.org/faq//utf_bom.html Questions about encoding forms].</ref> Menghasilkan format dengan panjang tetap (''fixed-length format'') hanya menggunakan code point sebagai unit kode 16-bit dan membuahkan hasil yang tepat sama dengan UTF-16 untuk 97% (63.488; bukan 65.536) dari seluruh code point dalam jangkauan 0-0xFFFF, termasuk semua karakter yang telah diberi nilai saat itu. | ||
UTF-16 secara resmi didefinisikan dalam Annex Q dari standar internasional [[ISO/IEC 10646]]. Juga disebut sebagai "The Unicode Standard" versi 2.0 atau lebih tinggi, serta dalam IETF's RFC 2781. | UTF-16 secara resmi didefinisikan dalam Annex Q dari standar internasional [[ISO/IEC 10646]].<ref>ISO/IEC 10646-1:2000(E), pp. 890-892; ISO/IEC 10646:2003(E), pp. 1364-1366; ISO/IEC 10646:2012(E) Final Committee Draft (FCD), p. 2208; The FCD contains a reference to clauses 9 and 10, pp. 15-17.</ref> Juga disebut sebagai "The Unicode Standard" versi 2.0 atau lebih tinggi, serta dalam IETF's RFC 2781. | ||
== Contoh == | == Contoh == | ||
{| class="wikitable" | |||
|- | |||
! code point | |||
! glyph* | |||
! character | |||
! UTF-16 code units ([[hexadecimal|hex]]) | |||
! UTF-16BE code units (hex) | |||
! UTF-16LE code units (hex) | |||
|- | |||
| U+007A | |||
| z | |||
| | |||
| 007A | |||
| 00, 7A | |||
| 7A, 00 | |||
|- | |||
| U+6C34 | |||
| 水 | |||
| (water) | |||
| 6C34 | |||
| 6C, 34 | |||
| 34, 6C | |||
|- | |||
| U+10000 | |||
| | |||
| (first non-BMP code point) | |||
| D800, DC00 | |||
| D8, 00, DC, 00 | |||
| 00, D8, 00, DC | |||
|- | |||
| U+1D11E | |||
| | |||
| | |||
| D834, DD1E | |||
| D8, 34, DD, 1E | |||
| 34, D8, 1E, DD | |||
|- | |||
| U+10FFFD | |||
| | |||
| (last Unicode code point) | |||
| DBFF, DFFD | |||
| DB, FF, DF, FD | |||
| FF, DB, FD, DF | |||
|} | |||
''* Appropriate font and software are required to see the correct glyphs.'' | ''* Appropriate font and software are required to see the correct glyphs.'' | ||
| Baris 35: | Baris 78: | ||
* [[Unicode]] | * [[Unicode]] | ||
* [[UTF-8]] | * [[UTF-8]] | ||
== Pranala luar == | == Pranala luar == | ||
| Baris 47: | Baris 87: | ||
* [http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#charAt(int) java.lang.String documentation, discussing surrogate handling] | * [http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#charAt(int) java.lang.String documentation, discussing surrogate handling] | ||
== Referensi == | |||
<references /> | |||
== Sumber dan atribusi == | == Sumber dan atribusi == | ||
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=UTF-16&oldid=22228027 Wikipedia bahasa Indonesia], revisi 22228027 (2022-12-03T11:39:33Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku. | Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=UTF-16&oldid=22228027 Wikipedia bahasa Indonesia], revisi 22228027 (2022-12-03T11:39:33Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku. | ||
<!-- WIKI_UNISSULA_PRESENTATION_V4 --> | |||
Revisi terkini sejak 23 Agustus 2026 22.56
UTF-16 (16-bit Unicode Transformation Format) adalah suatu pengkodean karakter Unicode yang mampu mengkodekan 1,112,064[1] angka (disebut code point) dalam jangkauan kode Unicode dari 0 sampai 0x10FFFF. Pengkodean ini adalah sebuah "variable-width encoding" karena code point itu dikodekan dengan satu atau dua code units 16-bit .
Universal Character Set UCS-2 (2-byte) mirip dengan pengkodean karakter yang sekarang digantikan oleh UTF-16 versi 2.0 sebagai standar Unicode pada bulan Juli 1996.[2] Menghasilkan format dengan panjang tetap (fixed-length format) hanya menggunakan code point sebagai unit kode 16-bit dan membuahkan hasil yang tepat sama dengan UTF-16 untuk 97% (63.488; bukan 65.536) dari seluruh code point dalam jangkauan 0-0xFFFF, termasuk semua karakter yang telah diberi nilai saat itu.
UTF-16 secara resmi didefinisikan dalam Annex Q dari standar internasional ISO/IEC 10646.[3] Juga disebut sebagai "The Unicode Standard" versi 2.0 atau lebih tinggi, serta dalam IETF's RFC 2781.
Contoh
| code point | glyph* | character | UTF-16 code units (hex) | UTF-16BE code units (hex) | UTF-16LE code units (hex) |
|---|---|---|---|---|---|
| U+007A | z | 007A | 00, 7A | 7A, 00 | |
| U+6C34 | 水 | (water) | 6C34 | 6C, 34 | 34, 6C |
| U+10000 | (first non-BMP code point) | D800, DC00 | D8, 00, DC, 00 | 00, D8, 00, DC | |
| U+1D11E | D834, DD1E | D8, 34, DD, 1E | 34, D8, 1E, DD | ||
| U+10FFFD | (last Unicode code point) | DBFF, DFFD | DB, FF, DF, FD | FF, DB, FD, DF |
* Appropriate font and software are required to see the correct glyphs.
Contoh prosedur pengkodean UTF-16
Karakter pada code point U+64321 (hexadecimal) akan dikodekan dalam UTF-16. Karena di atas U+FFFF, harus dikodekan dengan surrogate pair, sebagai berikut:
v = 0x64321 v′ = v - 0x10000 = 0x54321 = 0101 0100 0011 0010 0001 vh = v′ >> 10 = 01 0101 0000 // higher 10 bits of v′ vl = v′ & 0x3FF = 11 0010 0001 // lower 10 bits of v′ w1 = 0xD800 + vh = 1101 1000 0000 0000 + 01 0101 0000 = 1101 1001 0101 0000 = 0xD950 // first code unit of UTF-16 encoding w2 = 0xDC00 + vl = 1101 1100 0000 0000 + 11 0010 0001 = 1101 1111 0010 0001 = 0xDF21 // second code unit of UTF-16 encoding
Lihat pula
Pranala luar
- A very short algorithm for determining the surrogate pair for any codepoint
- Unicode Technical Note #12: UTF-16 for Processing
- Unicode FAQ: What is the difference between UCS-2 and UTF-16?
- Unicode Character Name Index
- RFC 2781: UTF-16, an encoding of ISO 10646
- java.lang.String documentation, discussing surrogate handling
Referensi
- ↑ 2^{16} - 2 \times 2^{10} + 2^{10} \times 2^{10} , di mana 2^{16} adalah BMP, - 2 \times 2^{10} adalah interval U+D800–U+DFFF, dan 2^{10} \times 2^{10} adalah level (plane) tertinggi.
- ↑ Questions about encoding forms.
- ↑ ISO/IEC 10646-1:2000(E), pp. 890-892; ISO/IEC 10646:2003(E), pp. 1364-1366; ISO/IEC 10646:2012(E) Final Committee Draft (FCD), p. 2208; The FCD contains a reference to clauses 9 and 10, pp. 15-17.
Sumber dan atribusi
Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 22228027 (2022-12-03T11:39:33Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.