Koja je razlika između ASCII i Unicode teksta?

Koja je razlika između ASCII i Unicode teksta?

ASCII i Unicode standardi su koji se odnose na digitalnu reprezentaciju teksta, posebno znakova koji čine tekst. Međutim, dva se standarda značajno razlikuju, a mnoga svojstva odražavaju njihov redoslijed stvaranja.





Amerika nasuprot svemiru

Američki standardni kôd za razmjenu informacija (ASCII), što ne iznenađuje, zadovoljava potrebe američke publike, pišući engleskom abecedom. Bavi se nenaglašenim slovima, poput A-Z i a-z, plus malim brojem interpunkcijskih znakova i kontrolnih znakova.





Konkretno, ne postoji način predstavljanja posuđenih riječi usvojenih iz drugih jezika, kao što je npr kava u ASCII -u, bez angliciziranja zamjenom naglašenih znakova (npr. kafić ). Lokalizirana proširenja ASCII razvijena su kako bi zadovoljile potrebe različitih jezika, ali ti su napori učinili interoperabilnost neugodnom i očito su proširili mogućnosti ASCII -a.





Nasuprot tome, univerzalni skup kodiranih znakova (Unicode) nalazi se na suprotnom kraju ljestvice ambicija. Unicode pokušava zadovoljiti što više svjetskih pisanih sustava, u mjeri u kojoj pokriva drevne jezike i svima omiljeni skup izražajnih simbola, emoji.

Skup znakova ili kodiranje znakova?

Jednostavno rečeno, skup znakova je izbor znakova (npr. A-Z), dok je kodiranje znakova preslikavanje između skupa znakova i vrijednosti koja se može digitalno predstaviti (npr. A = 1, B = 2).



ASCII standard učinkovito je oboje: definira skup znakova koje predstavlja i metodu preslikavanja svakog znaka u numeričku vrijednost.

Nasuprot tome, riječ Unicode koristi se u nekoliko različitih konteksta kako bi označila različite stvari. Možete to zamisliti kao sveobuhvatni pojam, poput ASCII, koji se odnosi na skup znakova i brojne kodiranja. No, budući da postoji nekoliko kodiranja, izraz Unicode često se koristi za upućivanje na cjelokupni skup znakova, a ne na način na koji su mapirani.





Veličina

Zbog svog opsega, Unicode predstavlja daleko više znakova od ASCII. Standardni ASCII koristi 7-bitni raspon za kodiranje 128 različitih likovi . Unicode je, s druge strane, toliko velik da moramo koristiti različitu terminologiju samo da bismo pričali o tome!

Unicode zadovoljava 1.111.998 adresa kodne točke. Kodna točka otprilike je analogna prostoru rezerviranom za znak, ali situacija je puno složenija od one kada počnete zalaziti u detalje!





Korisnija je usporedba koliko je skripti (ili sustava za pisanje) trenutno podržano. Naravno, ASCII rukuje samo engleskim alfabetom, u biti latinskim ili rimskim pismom. Verzija Unicodea proizvedena 2020. ide puno dalje: uključuje podršku za ukupno 154 skripte.

Skladištenje

ASCII-ov 7-bitni raspon znači da je svaki znak pohranjen u jednom 8-bitnom bajtu; rezervni bit nije korišten u standardnom ASCII. To čini izračunavanje veličine trivijalnim: duljina teksta, u znakovima, je veličina datoteke u bajtima.

To možete potvrditi sljedećim nizom bash naredbi. Prvo stvaramo datoteku koja sadrži 12 slova teksta:

zašto imessage ne radi na mom macu
$ echo -n 'Hello, world' > foo

Da bismo provjerili je li tekst u ASCII kodiranju, možemo upotrijebiti datoteka naredba:

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

Konačno, da bismo dobili točan broj bajtova koje datoteka zauzima, koristimo država naredba:

$ stat -f%z foo
12

Budući da standard Unicode obrađuje daleko veći raspon znakova, datoteka Unicode prirodno zauzima više prostora za pohranu. Koliko točno ovisi o kodiranju.

Ponavljanje istog skupa naredbi od prije, pomoću znaka koji se ne može predstaviti u ASCII -u, daje sljedeće:

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

Taj jedini znak zauzima 3 bajta u Unicode datoteci. Imajte na umu da je bash automatski stvorio UTF-8 datoteku budući da ASCII datoteka ne može pohraniti odabrani znak (€). UTF-8 je daleko najčešće kodiranje znakova za Unicode; UTF-16 i UTF-32 dva su alternativna kodiranja, ali se koriste daleko manje.

UTF-8 je kodiranje promjenjive širine, što znači da koristi različite količine prostora za pohranu za različite kodne točke. Svaka kodna točka zauzimat će između jedan i četiri bajta, s namjerom da uobičajeniji znakovi zahtijevaju manje prostora, pružajući vrstu ugrađene kompresije. Nedostatak je što određivanje zahtjeva za duljinom ili veličinom određenog dijela teksta postaje mnogo složenije.

ASCII je Unicode, ali Unicode nije ASCII

Radi unatrag kompatibilnosti, prvih 128 Unicode kodnih točaka predstavljaju ekvivalentne ASCII znakove. Budući da UTF-8 kodira svaki od ovih znakova jednim bajtom, svaki ASCII tekst je također UTF-8 tekst. Unicode je nadskup ASCII -a.

Međutim, kao što je gore prikazano, mnoge Unicode datoteke ne mogu se koristiti u ASCII kontekstu. Svaki znak koji je izvan granica bit će prikazan na neočekivan način, često sa zamjenjenim znakovima koji se potpuno razlikuju od onih koji su namijenjeni.

Moderna upotreba

Za većinu svrha, ASCII se uglavnom smatra naslijeđenim standardom. Čak i u situacijama koje podržavaju samo latinično pismo-gdje, na primjer, nije potrebna potpuna podrška složenosti Unicodea-obično je prikladnije koristiti UTF-8 i iskoristiti njegovu ASCII kompatibilnost.

kako vidjeti izvornu fotografiju u lightroomu

Konkretno, web stranice treba spremati i prenositi pomoću UTF-8, koji je zadani za HTML5. To je u suprotnosti s ranijim webom, koji se prema zadanim postavkama bavio ASCII -jem prije nego što ga je zamijenio latinica 1.

Standard koji se mijenja

Posljednja revizija ASCII -a dogodila se 1986. godine.

Nasuprot tome, Unicode se nastavlja ažurirati svake godine. Redovito se dodaju nove skripte, likovi, a posebno novi emoji. S dodijeljenim samo malim dijelom, čitav skup znakova vjerojatno će rasti i rasti u doglednoj budućnosti.

Povezano: 100 najpopularnijih objašnjenih emojija

ASCII u odnosu na Unicode

ASCII je služio svojoj svrsi dugi niz desetljeća, ali Unicode ga je sada učinkovito zamijenio za sve praktične svrhe osim za naslijeđene sustave. Unicode je veći i stoga je izražajniji. Predstavlja globalni zajednički napor i nudi daleko veću fleksibilnost, iako na štetu određene složenosti.

Udio Udio Cvrkut E -pošta Što je ASCII tekst i kako se koristi?

ASCII tekst izgleda kriptičan, ali ima mnogo koristi na internetu.

Pročitajte Dalje
Povezane teme
  • Objašnjena tehnologija
  • Emoji
  • Žargon
  • Web kultura
  • Unicode
O autoru Bobby Jack(Objavljeno 58 članaka)

Bobby je entuzijast u tehnologiji koji je skoro dva desetljeća radio kao programer softvera. Oduševljen je igranjem igara, radi kao urednik recenzija u Switch Player Magazinu, a uronjen je u sve aspekte online izdavaštva i web razvoja.

Više od Bobbyja Jacka

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e -knjige i ekskluzivne ponude!

Kliknite ovdje za pretplatu