Ini adalah artikel yang memenuhi kriteria penghapusan cepat, tetapi tidak ada alasan yang diberikan untuk memenuhinya. Pastikan bahwa alasan Anda telah memenuhi salah satu syarat KPC. Ganti tag dengan {{db|1=alasan Anda}}
. NA
Jika artikel ini tidak memenuhi syarat KPC, atau Anda ingin memperbaikinya, silakan hapus pemberitahuan ini, tetapi tidak dibenarkan menghapus pemberitahuan ini dari halaman yang Anda buat sendiri. Jika Anda membuat halaman ini tetapi Anda tidak setuju, Anda boleh mengeklik tombol di bawah ini dan menjelaskan mengapa Anda tidak setuju halaman itu dihapus. Kemudian, silakan tambahkan {{Tunda KPC}} di paling atas halaman tanpa menghapus tag ini. Jika sudah, silakan kunjungi halaman pembicaraan untuk memeriksa jika sudah menerima tanggapan pesan Anda.
- Jangan lupa tambahkan {{Tunda KPC}} di paling atas halaman jika Anda mempertentangkan penghapusan halaman ini.
Ingat bahwa artikel ini dapat dihapus kapan saja jika sudah tidak diragukan lagi memenuhi kriteria penghapusan cepat, atau penjelasan dikirim ke halaman pembicaraan Anda tidak cukup meyakinkan kami.
- Kepada nominator: Tempatkan templat:
{{subst:db-reason-notice|Punycode|header=1|tidak ada alasan yang diberikan}} ~~~~
- pada halaman pembicaraan pembuat/pengunggah.
Catatan untuk pembuat halaman: Anda belum membuat atau menyunting article halaman pembicaraan. Jika Anda mengajukan keberatan atas penghapusan, mengeklik tombol di atas akan membawa Anda untuk meninggalkan pesan untuk menjelaskan mengapa Anda tidak setuju artikel ini dihapus.
Jika Anda sudah ke halaman pembicaraannya, tetapi pesan ini masih muncul, coba hapus singgahan (cache).
Pengurus: periksa pranala balik, riwayat (beda), dan catatan sebelum dihapus. Periksa di Google.
Halaman ini terakhir disunting oleh 194.141.252.102 (kontribusi | log) pada 10:44, 18 Juni 2013 (UTC) (12 tahun lalu)
Dalam komputasi, Punycode adalah sebuah perwujudan dari sintaks pengkodean umum (Bootstring), dengan karakter Unicode diubah dengan unik dan dapat dikembalikan, ke dalam himpunan karakter yang lebih kecil dan ketat.
Punycode ditujukan untuk pengkodean label dalam kerangka kerja Internationalized Domain Names in Applications (IDNA), sedemikian hingga nama domain tersebut dapat direpresentasikan dalam himpunan karakter ASCII yang diperbolehkan dalam sistem penamaan domain dari Internet. Sintaks pengkodean didefinisikan dalam dokumen IETF RFC 3492.[1]
Metodologi IDNA mengkodekan hanya label komponen nama domain dengan prosedur yang disebut ToASCII. Prosedur ToUnicode mengartikan kode label DNS ke dalam representasi Unicode.
Prosedur pengkodean
Bagian ini menunjukkan langkah-langkah untuk pengkodean Punycode, menggunakan contoh string "bücher" (bahasa Jerman untuk buku), yang diterjemahkan menjadi label "bcher-kva".
Pemisahan karakter ASCII
Pertama, semua karakter dasar (ASCII) dalam string disalin langsung dari input ke output, melewatkan karakter lainnya (misalnya, "bücher" → "bcher"). Jika satu atau lebih karakter dasar disalin, sebuah tanda hubung (hyphen) ASCII ditambahkan ke dalam output berikutnya (misalnya, "bücher" → "bcher-"). Karena ini adalah sebuah karakter dasar, maka tanda hubung mungkin akan masih tampil dalam string sebelum karakter tambahan ini, namun penambahan tidak akan membuat ambiguitas—tidak ada bagian selanjutnya dari proses pengkodean ini yang memperkenalkan "-" yang lain, maka "-" terakhir (bila ada) selalu merupakan tanda hubung yang menandakan akhir karakter dasar.
Pengkodean pada penambahan karakter bukan ASCII sebagai nomor kode
Bagian berikutnya dari proses pengkodean, pertama memerlukan pemahaman tentang pemecahan kode, yang merupakan finite-state machine dengan dua variabel, i dan n. i adalah indeks di dalam string yang bernilai dari nol (menggambarkan kemungkinan penambahan pada awal) sampai dengan panjang saat ini dari string yang telah ditambahkan (menggambarkan kemungkinan penambahan pada akhir).
i dimulai dari nol, sedangkan n dimulai dari 128 (poin kode pertama yang bukan ASCII). Progress dari state merupakan fungsi monotonik. Perubahan state dengan cara menambahkan dengan i secara berulang.
Punycode dirancang untuk bekerja pada seluruh skrip, dan untuk mengoptimisasi dirinya sendiri dengan cara mencoba menyesuaikan dengan jangkauan himpunan karakter di dalam string yang beroperasi. Punycode dioptimisasikan untuk kasus string yang terdiri dari nol atau lebih karakter ASCII dan dalam karakter tambahan dari hanya satu sistem skrip, namum dapat menangani segala jenis string Unicode. Perlu dicatat bahwa untuk penggunaan DNS, string nama domain dianggap telah dinormalisasi menggunakan Nameprep dan (untuk ranah Internet tingkat teratas) disaring sebelum dilakukan punycode, dan bahwa protokol DNS menetapkan batas panjang yang dapat diterima dari string Punycode output.
Lihat pula
Referensi
- ^ RFC 3492, Punycode: A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA), A. Costello, The Internet Society (Maret 2003)