Mis vahe on ASCII ja Unicode'i teksti vahel?

Mis vahe on ASCII ja Unicode'i teksti vahel?

ASCII ja Unicode on mõlemad standardid, mis viitavad teksti digitaalsele esitamisele, täpsemalt teksti moodustavatele märkidele. Need kaks standardit on aga oluliselt erinevad ning paljud omadused peegeldavad nende loomise järjekorda.





Ameerika versus universum

Ameerika standardse teabevahetuse standardkood (ASCII) on üllatav, et see on mõeldud Ameerika publikule, kirjutades inglise tähestikus. See käsitleb rõhutamata tähti, nagu A-Z ja a-z, lisaks väike arv kirjavahemärke ja juhtmärke.





Eelkõige ei ole võimalik kujutada teistest keeltest, näiteks kohvi ASCII -s, ilma neid anglikiseerimata rõhumärke asendades (nt kohvik ). Lokaliseeritud ASCII laiendused töötati välja erinevate keelte vajaduste rahuldamiseks, kuid need jõupingutused muutsid koostalitlusvõime ebamugavaks ja laiendasid selgelt ASCII võimalusi.





Seevastu universaalne kodeeritud märgistik (Unicode) asub ambitsioonide skaala teises otsas. Unicode püüab rahuldada võimalikult paljusid maailma kirjutamissüsteeme, kuivõrd see hõlmab iidseid keeli ja kõigi lemmik väljendusrikkaid sümboleid, emotikone.

Märkide kogum või tähemärkide kodeerimine?

Lihtsamalt öeldes on märgistik tähemärkide valik (nt A-Z), samas kui tähemärkide kodeerimine on kaardistamine tähemärkide ja väärtuste vahel, mida saab digitaalselt esitada (nt A = 1, B = 2).



ASCII standard on tegelikult mõlemad: see määratleb selle esindatava tähemärkide komplekti ja meetodi iga märgi numbriliseks väärtuseks vastendamiseks.

Seevastu sõna Unicode kasutatakse mitmetes erinevates kontekstides, et tähendada erinevaid asju. Võite mõelda sellest kui kõikehõlmavast terminist, nagu ASCII, mis viitab märgistikule ja mitmetele kodeeringutele. Kuid kuna kodeeringuid on mitu, kasutatakse terminit Unicode sageli tähemärkide komplekti tähistamiseks, mitte nende kaardistamiseks.





Suurus

Oma ulatuse tõttu tähistab Unicode palju rohkem tähemärke kui ASCII. Standardne ASCII kasutab 128 erineva kodeerimiseks 7-bitist vahemikku tegelased . Seevastu Unicode on nii suur, et peame sellest rääkimiseks kasutama erinevat terminoloogiat!

Unicode pakub 1 111 998 aadressi koodipunkte. Koodipunkt on laias laastus analoogne tegelasele reserveeritud ruumiga, kuid olukord on palju keerulisem, kui hakkate detailidesse süvenema!





Kasulikum võrdlus on see, kui palju skripte (või kirjutamissüsteeme) praegu toetatakse. Loomulikult tegeleb ASCII ainult inglise tähestikuga, sisuliselt ladina või rooma kirjaga. 2020. aastal toodetud Unicode'i versioon läheb palju kaugemale: see toetab kokku 154 skripti.

Ladustamine

ASCII 7-bitine vahemik tähendab, et iga märk on salvestatud ühte 8-bitisesse baiti; varuots on standard ASCII -s kasutamata. See muudab suuruse arvutamise tühiseks: teksti pikkus tähemärkides on faili suurus baitides.

Seda saate kinnitada järgmise bash -käskude jada abil. Esiteks loome faili, mis sisaldab 12 tähte teksti:

miks imessage minu maciga ei tööta
$ echo -n 'Hello, world' > foo

Et kontrollida, kas tekst on ASCII kodeeringus, saame kasutada faili käsk:

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

Lõpuks, faili täpse baitide arvu saamiseks kasutame osariik käsk:

$ stat -f%z foo
12

Kuna Unicode'i standard käsitleb palju suuremat tähemärkide valikut, võtab Unicode -fail loomulikult rohkem salvestusruumi. Kui palju täpselt, sõltub kodeerimisest.

Kui korrata sama käskude komplekti varasemalt, kasutades märki, mida ei saa ASCII -s esitada, saadakse järgmine:

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

See üks märk võtab Unicode -failis 3 baiti. Pange tähele, et bash lõi automaatselt UTF-8 faili, kuna ASCII fail ei saa valitud märki salvestada (€). UTF-8 on Unicode'i jaoks kõige tavalisem märkide kodeering; UTF-16 ja UTF-32 on kaks alternatiivset kodeeringut, kuid neid kasutatakse palju vähem.

UTF-8 on muutuva laiusega kodeering, mis tähendab, et see kasutab erinevate koodipunktide jaoks erinevaid salvestusruume. Iga koodipunkt võtab ühe kuni nelja baiti, eesmärgiga, et tavalisemad tähemärgid nõuavad vähem ruumi, pakkudes teatud tüüpi sisseehitatud tihendust. Puuduseks on asjaolu, et antud tekstiosa pikkuse või suuruse nõuete määramine muutub palju keerukamaks.

ASCII on Unicode, kuid Unicode ei ole ASCII

Tagasiühilduvuse huvides tähistavad 128 esimest Unicode'i koodpunkti samaväärseid ASCII märke. Kuna UTF-8 kodeerib kõiki neid märke ühe baidiga, on ASCII tekst ka UTF-8 tekst. Unicode on ASCII superset.

Kuid nagu eespool näidatud, ei saa paljusid Unicode -faile ASCII kontekstis kasutada. Iga tegelane, kes on väljaspool piire, kuvatakse ootamatult, sageli asendatud märkidega, mis on kavandatust täiesti erinevad.

Kaasaegne kasutamine

Enamikul eesmärkidel peetakse ASCII -d suures osas pärandistandardiks. Isegi olukordades, mis toetavad ainult ladina kirju-näiteks Unicode'i keerukuse täielik tugi pole vajalik-, on tavaliselt mugavam kasutada UTF-8 ja kasutada selle ASCII ühilduvust.

kuidas printida kausta failide loendit

Eelkõige tuleks veebilehti salvestada ja edastada, kasutades UTF-8, mis on HTML5 vaikeseade. See on vastupidine varasemale veebile, mis tegeles vaikimisi ASCII -ga enne seda, kui see asendati ladina 1 -ga.

Muutuv standard

Viimane ASCII läbivaatamine toimus 1986. aastal.

Seevastu Unicode'i uuendatakse jätkuvalt igal aastal. Uusi skripte, tähemärke ja eriti uusi emotikone lisatakse regulaarselt. Kui eraldatakse neist vaid väike osa, kasvab tähemärkide kogum tõenäoliselt lähitulevikus.

Seotud: 100 kõige populaarsemat emotikonide seletust

ASCII versus Unicode

ASCII täitis oma eesmärki mitu aastakümmet, kuid Unicode on selle nüüd praktiliselt asendanud kõigil muudel praktilistel eesmärkidel peale pärandsüsteemide. Unicode on suurem ja seega väljendusrikkam. See kujutab endast ülemaailmset koostööd ja pakub palju suuremat paindlikkust, ehkki teatud keerukuse arvelt.

Jaga Jaga Piiksuma E -post Mis on ASCII tekst ja kuidas seda kasutatakse?

ASCII tekst tundub salapärane, kuid sellel on Internetis palju kasutusvõimalusi.

Loe edasi
Seotud teemad
  • Tehnoloogia selgitatud
  • Emotikonid
  • Žargon
  • Veebikultuur
  • Unicode
Autori kohta Bobby Jack(58 artiklit avaldatud)

Bobby on tehnoloogiahuviline, kes töötas enam kui kaks aastakümmet tarkvaraarendajana. Ta on kirglik mängude vastu, töötab ajakirja Switch Player ülevaadete toimetajana ning on süvenenud kõikidesse veebipõhiste avaldamise ja veebiarenduse aspektidesse.

Veel Bobby Jackilt

Telli meie uudiskiri

Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e -raamatuid ja eksklusiivseid pakkumisi!

Tellimiseks klõpsake siin