If-Koubou

Apakah Karakter Encode Seperti ANSI dan Unicode, dan Bagaimana Mereka Berbeda?

Apakah Karakter Encode Seperti ANSI dan Unicode, dan Bagaimana Mereka Berbeda? (Bagaimana caranya)

ASCII, UTF-8, ISO-8859… Anda mungkin telah melihat moniker aneh ini berkeliaran, tetapi apa yang sebenarnya mereka maksud? Baca terus ketika kami menjelaskan apa itu pengkodean karakter dan bagaimana akronim ini berhubungan dengan teks biasa yang kita lihat di layar.

Blok Bangunan Mendasar

Ketika kita berbicara tentang bahasa tertulis, kita berbicara tentang huruf menjadi blok bangunan kata-kata, yang kemudian membangun kalimat, paragraf, dan sebagainya. Huruf adalah simbol yang mewakili suara. Ketika Anda berbicara tentang bahasa, Anda berbicara tentang sekelompok suara yang bersatu untuk membentuk semacam makna. Setiap sistem bahasa memiliki seperangkat aturan dan definisi yang kompleks yang mengatur makna-makna tersebut. Jika Anda memiliki sebuah kata, itu tidak ada gunanya kecuali Anda tahu bahasa apa itu berasal dan Anda menggunakannya dengan orang lain yang berbicara bahasa itu.

(Perbandingan naskah Grantha, Tulu, dan Malayalam, Gambar dari Wikipedia)

Dalam dunia komputer, kami menggunakan istilah "karakter." Karakter adalah semacam konsep abstrak, yang didefinisikan oleh parameter tertentu, tetapi itu adalah unit dasar dari makna. Bahasa Latin 'A' tidak sama dengan bahasa Yunani 'alpha' atau bahasa Arab 'alif' karena mereka memiliki konteks yang berbeda - mereka berasal dari bahasa yang berbeda dan memiliki pengucapan yang sedikit berbeda - jadi kita dapat mengatakan bahwa mereka adalah karakter yang berbeda. Representasi visual dari suatu karakter disebut sebagai "glyph" dan set glyph yang berbeda disebut font. Kelompok karakter milik "set" atau "repertoar."

Saat Anda mengetik paragraf dan mengubah font, Anda tidak mengubah nilai fonetik huruf, Anda mengubah tampilannya. Itu hanya kosmetik (tapi bukan tidak penting!). Beberapa bahasa, seperti Mesir kuno dan Cina, memiliki ideogram; ini mewakili seluruh ide dan bukannya bunyi, dan pengucapannya dapat bervariasi dari waktu ke waktu dan jarak. Jika Anda mengganti satu karakter dengan yang lain, Anda mengganti ide. Ini lebih dari sekedar mengganti huruf, itu mengubah ideogram.

Pengkodean Karakter

(Gambar dari Wikipedia)

Saat Anda mengetik sesuatu di keyboard, atau memuat file, bagaimana komputer tahu apa yang ditampilkan? Itulah tujuan pengkodean karakter. Teks di komputer Anda sebenarnya bukan huruf, ini adalah serangkaian nilai alfanumerik yang dipasangkan. Pengkodean karakter bertindak sebagai kunci yang nilai-nilainya sesuai dengan karakter mana, seperti bagaimana ortografi menentukan bunyi yang sesuai dengan huruf mana. Kode morse adalah semacam pengkodean karakter. Ini menjelaskan bagaimana kelompok unit panjang dan pendek seperti beep mewakili karakter. Dalam kode Morse, karakternya hanya huruf bahasa Inggris, angka, dan berhenti penuh. Ada banyak pengkodean karakter komputer yang diterjemahkan ke dalam huruf, angka, tanda aksen, tanda baca, simbol internasional, dan sebagainya.

Seringkali pada topik ini, istilah "halaman kode" juga digunakan. Mereka pada dasarnya pengkodean karakter seperti yang digunakan oleh perusahaan tertentu, seringkali dengan sedikit modifikasi. Sebagai contoh, halaman kode Windows 1252 (sebelumnya dikenal sebagai ANSI 1252) adalah bentuk modifikasi dari ISO-8859-1. Mereka kebanyakan digunakan sebagai sistem internal untuk merujuk ke pengkodean karakter standar dan dimodifikasi yang khusus untuk sistem yang sama. Awalnya, pengkodean karakter tidak begitu penting karena komputer tidak berkomunikasi satu sama lain. Dengan meningkatnya internet menjadi terkenal dan berjejaring menjadi kejadian biasa, itu telah menjadi semakin penting dari kehidupan sehari-hari kita tanpa kita sadari.

Banyak Jenis Berbeda

(Gambar dari sarah sosiak)

Ada banyak pengkodean karakter yang berbeda di luar sana, dan ada banyak alasan untuk itu. Pengkodean karakter mana yang Anda pilih untuk digunakan tergantung pada apa kebutuhan Anda. Jika Anda berkomunikasi dalam bahasa Rusia, masuk akal untuk menggunakan pengkodean karakter yang mendukung Cyrillic dengan baik. Jika Anda berkomunikasi dalam bahasa Korea, maka Anda akan menginginkan sesuatu yang mewakili Hangul dan Hanja dengan baik. Jika Anda seorang matematikawan, maka Anda menginginkan sesuatu yang memiliki semua simbol ilmiah dan matematika diwakili dengan baik, serta simbol Yunani dan Latin. Jika Anda iseng, mungkin Anda akan mendapat manfaat dari teks terbalik. Dan, jika Anda ingin semua jenis dokumen tersebut dilihat oleh orang tertentu, Anda menginginkan penyandian yang cukup umum dan mudah diakses.

Mari kita lihat beberapa yang lebih umum.

(Kutipan tabel ASCII, Gambar dari asciitable.com)

  • ASCII - American Standard Code for Information Interchange adalah salah satu pengkodean karakter lama. Awalnya dirancang berdasarkan kode telegraf dan berkembang seiring waktu untuk memasukkan lebih banyak simbol dan beberapa karakter kontrol non-cetak yang sudah usang. Ini mungkin dasar yang bisa Anda peroleh dari segi sistem modern, karena terbatas pada abjad Latin tanpa aksen karakter. Enkoding 7-bitnya hanya mengizinkan 128 karakter, itulah sebabnya ada beberapa varian tidak resmi yang digunakan di seluruh dunia.
  • ISO-8859 - Organisasi Internasional untuk kelompok pengkodean karakter Standardisasi yang paling banyak digunakan adalah nomor 8859. Setiap pengkodean khusus ditentukan oleh angka, sering diawali oleh moniker deskriptif, mis. ISO-8859-3 (Latin-3), ISO-8859-6 (Latin / Arab). Ini adalah superset dari ASCII, yang berarti bahwa 128 nilai pertama dalam pengkodean adalah sama dengan ASCII. Ini 8-bit, bagaimanapun, dan memungkinkan untuk 256 karakter, sehingga membangun dari sana dan mencakup banyak karakter yang lebih luas, dengan masing-masing pengkodean khusus yang berfokus pada serangkaian kriteria yang berbeda. Latin-1 termasuk sekelompok huruf dan simbol beraksen, tetapi kemudian diganti dengan set revisi yang disebut Latin-9 yang mencakup mesin terbang yang diperbarui seperti simbol Euro.

(Kutipan skrip Tibet, Unicode v4, dari unicode.org)

  • Unicode - Standar pengkodean ini bertujuan universalitas. Saat ini mencakup 93 skrip yang diorganisasikan dalam beberapa blok, dengan banyak lagi dalam karya. Unicode bekerja secara berbeda dari set karakter lain yang bukan langsung coding untuk glyph, masing-masing nilai lebih diarahkan ke "titik kode." Ini adalah nilai heksadesimal yang sesuai dengan karakter tetapi mesin terbang itu sendiri disediakan dengan cara terpisah oleh program , seperti browser web Anda. Poin kode ini biasanya digambarkan sebagai berikut: U + 0040 (yang diterjemahkan menjadi '@'). Pengkodean khusus di bawah standar Unicode adalah UTF-8 dan UTF-16. UTF-8 berusaha untuk memungkinkan kompatibilitas maksimum dengan ASCII. Ini 8-bit, tetapi memungkinkan untuk semua karakter melalui mekanisme substitusi dan beberapa pasang nilai per karakter. UTF-16 memberikan kompatibilitas ASCII yang sempurna untuk kompatibilitas 16-bit yang lebih lengkap dengan standar.
  • ISO-10646 - Ini bukan pengkodean yang sebenarnya, hanya satu set karakter Unicode yang telah distandarisasi oleh ISO. Ini sangat penting karena karakter repertoar yang digunakan oleh HTML. Beberapa fungsi yang lebih canggih yang disediakan oleh Unicode yang memungkinkan untuk collation dan kanan-ke-kiri bersama scripting kiri-ke-kanan hilang. Namun, ini bekerja sangat baik untuk digunakan di internet karena memungkinkan penggunaan berbagai skrip dan memungkinkan browser untuk menafsirkan glyph. Ini membuat lokalisasi agak lebih mudah.

Apa Pengkodean yang Harus Saya Gunakan?

Yah, ASCII berfungsi untuk sebagian besar penutur bahasa Inggris, tetapi tidak untuk yang lainnya. Lebih sering Anda akan melihat ISO-8859-1, yang berfungsi untuk sebagian besar bahasa Eropa Barat. Versi lain dari ISO-8859 berfungsi untuk skrip Cyrillic, Arab, Yunani, atau skrip spesifik lainnya. Namun, jika Anda ingin menampilkan beberapa skrip dalam dokumen yang sama atau pada halaman web yang sama, UTF-8 memungkinkan kompatibilitas yang jauh lebih baik. Ini juga bekerja sangat baik untuk orang-orang yang menggunakan tanda baca yang tepat, simbol matematika, atau karakter off-the-cuff, seperti kotak dan kotak centang.

(Banyak bahasa dalam satu dokumen, Screenshot dari gujaratsamachar.com)

Namun ada kekurangan untuk setiap set. ASCII terbatas pada tanda baca, sehingga tidak berfungsi dengan baik untuk pengeditan tipografi yang benar. Pernah ketik copy / paste dari Word hanya untuk memiliki beberapa kombinasi aneh dari mesin terbang? Itulah kelemahan ISO-8859, atau lebih tepatnya, inter-operabilitasnya dengan halaman kode khusus OS (kita melihat ANDA, Microsoft!). Kelemahan utama UTF-8 adalah kurangnya dukungan yang tepat dalam pengeditan dan penerbitan aplikasi. Masalah lainnya adalah bahwa browser sering tidak menafsirkan dan hanya menampilkan tanda urutan byte dari karakter yang dikodekan UTF-8. Ini menghasilkan glyph yang tidak diinginkan yang ditampilkan. Dan tentu saja, mendeklarasikan satu pengkodean dan menggunakan karakter dari yang lain tanpa mendeklarasikan / mereferensikannya dengan benar di halaman web menyulitkan browser untuk merendernya dengan benar dan agar mesin telusur mengindeksnya dengan tepat.

Untuk dokumen Anda sendiri, manuskrip, dan seterusnya, Anda dapat menggunakan apa pun yang Anda butuhkan untuk menyelesaikan pekerjaan. Sejauh web berjalan, tampaknya, kebanyakan orang setuju menggunakan versi UTF-8 yang tidak menggunakan tanda urutan byte, tapi itu tidak sepenuhnya bulat. Seperti yang Anda lihat, setiap pengkodean karakter memiliki penggunaan, konteks, kekuatan, dan kelemahannya sendiri. Sebagai pengguna akhir, Anda mungkin tidak perlu berurusan dengan ini, tetapi sekarang Anda dapat mengambil langkah ekstra ke depan jika Anda memilih demikian.