Ano ang Pagkakaiba sa Pagitan ng ASCII at Unicode Text?

Ano ang Pagkakaiba sa Pagitan ng ASCII at Unicode Text?

Ang ASCII at Unicode ay parehong pamantayan na tumutukoy sa digital na representasyon ng teksto, partikular sa mga character na bumubuo sa teksto. Gayunpaman, ang dalawang pamantayan ay magkakaiba-iba, na may maraming mga pag-aari na sumasalamin sa kani-kanilang pagkakasunud-sunod ng paglikha.





America Versus the Universe

Ang American Standard Code for Information Interchange (ASCII), hindi nakapagtataka, nakatuon sa isang tagapakinig na Amerikano, na sumusulat sa alpabetong Ingles. Nakikipag-usap ito sa mga hindi naaakma na titik, tulad ng A-Z at a-z, kasama ang isang maliit na bilang ng mga simbolong bantas at mga character na kontrol.





Sa partikular, walang paraan upang kumatawan sa mga salitang utang na pinagtibay mula sa ibang mga wika, tulad ng kape sa ASCII, nang hindi anglicizing ang mga ito sa pamamagitan ng pagpapalit ng mga accent na character (hal., cafe ). Ang naisalokal na mga extension ng ASCII ay binuo upang matugunan ang mga pangangailangan ng iba`t ibang mga wika, ngunit ang mga pagsisikap na ito ay naging awkward sa interoperability at malinaw na umaabot sa mga kakayahan ng ASCII.





Sa kaibahan, ang Universal Coded Character Set (Unicode) ay namamalagi sa kabaligtaran na antas ng ambisyon. Sinusubukan ng Unicode na magsilbi sa maraming mga sistema ng pagsulat sa mundo hangga't maaari, hanggang sa saklaw nito ang mga sinaunang wika at ang paboritong hanay ng mga nagpapahiwatig na simbolo, emoji.

Itakda ang Character o Pag-encode ng Character?

Sa mga simpleng term, ang isang set ng character ay isang pagpipilian ng mga character (hal., A-Z) habang ang isang pag-encode ng character ay isang pagmamapa sa pagitan ng isang set ng character at isang halaga na maaaring kinatawan ng digital (hal., A = 1, B = 2).



Ang pamantayan ng ASCII ay mabisang kapwa: tinutukoy nito ang hanay ng mga character na kinakatawan nito at isang pamamaraan ng pagmamapa ng bawat character sa isang numerong halaga.

Sa kaibahan, ang salitang Unicode ay ginagamit sa iba't ibang mga konteksto upang mangahulugang iba't ibang mga bagay. Maaari mong isipin ito bilang isang nakapaloob na term, tulad ng ASCII, upang tumukoy sa isang set ng character at isang bilang ng mga pag-encode. Ngunit, dahil maraming mga pag-encode, ang terminong Unicode ay madalas na ginagamit upang tumukoy sa pangkalahatang hanay ng mga character, kaysa sa kung paano sila nai-mapa.





Sukat

Dahil sa saklaw nito, ang Unicode ay kumakatawan sa higit pang mga character kaysa sa ASCII. Gumagamit ang Standard ASCII ng isang 7-bit na saklaw upang ma-encode ang 128 na natatangi mga tauhan . Sa kabilang banda, ang Unicode ay napakalaki na kailangan nating gumamit ng iba`t ibang terminolohiya upang pag-usapan lamang ito!

Ang Unicode ay nagsisilbi sa 1,111,998 na maaaring matugunan mga puntos ng code. Ang isang code point ay halos magkatulad sa isang puwang na nakalaan para sa isang character, ngunit ang sitwasyon ay mas kumplikado kaysa sa kapag nagsimula kang pagtuklasin ang mga detalye!





Ang isang mas kapaki-pakinabang na paghahambing ay kung gaano karaming mga script (o mga sistema ng pagsulat) ang kasalukuyang sinusuportahan. Siyempre, hinahawakan lamang ng ASCII ang alpabetong Ingles, mahalagang ang Latin o Roman na iskrip. Ang bersyon ng Unicode na ginawa noong 2020 ay napakarami pa: kasama rito ang suporta para sa isang kabuuang 154 na mga script.

Imbakan

Ang 7-bit na saklaw ng ASCII ay nangangahulugang ang bawat character ay nakaimbak sa isang solong 8-bit byte; ang ekstrang piraso ay hindi ginagamit sa karaniwang ASCII. Ginagawa nitong maliit ang mga kalkulasyon ng laki: ang haba ng teksto, sa mga character, ang laki ng file sa mga byte.

Maaari mong kumpirmahin ito sa sumusunod na pagkakasunud-sunod ng mga utos na bash. Una, lumikha kami ng isang file na naglalaman ng 12 mga titik ng teksto:

libreng online na mga site ng pelikula walang mag-sign up
$ echo -n 'Hello, world' > foo

Upang suriin na ang teksto ay nasa encoding ng ASCII, maaari nating gamitin ang file utos:

$ file foo
foo: ASCII text, with no line terminators

Sa wakas, upang makuha ang eksaktong bilang ng mga byte na sinasakop ng file, ginagamit namin ang estado utos:

$ stat -f%z foo
12

Dahil ang pamantayan ng Unicode ay nakikipag-usap sa isang mas malawak na saklaw ng mga character, natural na tumatagal ang isang file ng Unicode ng mas maraming espasyo sa imbakan. Eksakto kung magkano ang nakasalalay sa pag-encode.

Ang pag-uulit ng parehong hanay ng mga utos mula dati, na gumagamit ng isang character na hindi maaaring kinatawan sa ASCII, ay nagbibigay ng sumusunod:

$ echo -n '€' > foo
$ file foo
foo: UTF-8 Unicode text, with no line terminators
$ stat -f%z foo
3

Ang solong character na iyon ay sumasakop sa 3 bytes sa isang file ng Unicode. Tandaan na awtomatikong nilikha ng bash ang isang UTF-8 file dahil ang isang ASCII file ay hindi maiimbak ang napiling character (€). Ang UTF-8 ay ang pinakakaraniwang pag-encode ng character para sa Unicode; Ang UTF-16 at UTF-32 ay dalawang alternatibong pag-encode, ngunit ang mga ito ay ginamit nang mas mababa.

Ang UTF-8 ay isang variable na lapad na pag-encode, na nangangahulugang gumagamit ito ng iba't ibang halaga ng imbakan para sa iba't ibang mga puntos ng code. Ang bawat code point ay sakupin sa pagitan ng isa at apat na byte, na may hangarin na ang mas karaniwang mga character ay nangangailangan ng mas kaunting espasyo, na nagbibigay ng isang uri ng built-in na compression. Ang kawalan ay ang pagtukoy sa haba ng mga kinakailangan sa laki ng isang naibigay na tipak ng teksto ay naging mas kumplikado.

Ang ASCII Ay Unicode, ngunit Ang Unicode Ay Hindi ASCII

Para sa pabalik na pagiging tugma, ang unang 128 mga puntos ng code ng Unicode ay kumakatawan sa katumbas na mga character na ASCII. Dahil nai-encode ng UTF-8 ang bawat isa sa mga character na ito na may isang solong byte, ang anumang teksto na ASCII ay isang teksto din ng UTF-8. Ang Unicode ay isang superset ng ASCII.

Gayunpaman, tulad ng ipinakita sa itaas, maraming mga file ng Unicode ay hindi maaaring gamitin sa isang konteksto ng ASCII. Anumang character na nasa labas ng mga hangganan ay ipapakita sa isang hindi inaasahang paraan, madalas na may mga pamalit na character na ganap na naiiba sa mga nilalayon.

Modernong Paggamit

Para sa karamihan ng mga layunin, ang ASCII ay higit na itinuturing na isang pamantayan sa pamana. Kahit na sa mga sitwasyong sinusuportahan lamang ang Latin script — kung saan ang buong suporta para sa mga pagiging kumplikado ng Unicode ay hindi kinakailangan, halimbawa - karaniwang mas maginhawa na gamitin ang UTF-8 at samantalahin ang pagiging tugma ng ASCII.

paano magdirekta ng mensahe sa youtube

Sa partikular, ang mga web page ay dapat na nai-save at mailipat gamit ang UTF-8, na kung saan ay ang default para sa HTML5. Taliwas ito sa naunang web, na nakitungo sa ASCII bilang default bago ito ay pinalitan ng Latin 1.

Isang Pamantayan na Nagbabago

Ang huling rebisyon ng ASCII ay naganap noong 1986.

Sa kaibahan, ang Unicode ay patuloy na na-update taun-taon. Mga bagong script, character, at, partikular, ang bagong emoji ay regular na idinagdag. Sa pamamagitan lamang ng isang maliit na bahagi ng mga inilaan, ang buong hanay ng character ay malamang na lumago at lumago para sa hinaharap na hinaharap.

Kaugnay: Ipinaliwanag ng 100 Pinakatanyag na Emojis

ASCII Versus Unicode

Inihatid ng ASCII ang layunin nito sa loob ng maraming dekada, ngunit mabisang napalitan ito ngayon ng Unicode para sa lahat ng mga praktikal na layunin maliban sa mga sistemang legacy. Ang Unicode ay mas malaki at, samakatuwid, mas nagpapahiwatig. Ito ay kumakatawan sa isang pandaigdigan, pagtutulungan na pagsisikap at nag-aalok ng higit na kakayahang umangkop, kahit na sa gastos ng ilang pagiging kumplikado.

Magbahagi Magbahagi Mag-tweet Email Ano ang Teksto ng ASCII at Paano Ito Ginagamit?

Ang teksto ng ASCII ay lilitaw na cryptic, ngunit marami itong gamit sa internet.

Basahin Susunod
Mga Kaugnay na Paksa
  • Ipinaliwanag ang Teknolohiya
  • Emojis
  • Jargon
  • Kulturang Web
  • Unicode
Tungkol sa May-akda Bobby Jack(58 Mga Artikulo Na-publish)

Si Bobby ay isang mahilig sa teknolohiya na nagtrabaho bilang isang developer ng software sa loob ng halos dalawang dekada. Masigasig siya sa paglalaro, nagtatrabaho bilang Review Editor sa Switch Player Magazine, at nahuhulog sa lahat ng aspeto ng online na pag-publish at pag-unlad sa web.

Higit pa Mula kay Bobby Jack

Mag-subscribe sa aming newsletter

Sumali sa aming newsletter para sa mga tip sa tech, pagsusuri, libreng ebook, at eksklusibong deal!

Mag-click dito upang mag-subscribe