Kokie simbolių kodavimai, pavyzdžiui, ANSI ir Unicode, ir kaip jie skiriasi?

Turinys:

Kokie simbolių kodavimai, pavyzdžiui, ANSI ir Unicode, ir kaip jie skiriasi?
Kokie simbolių kodavimai, pavyzdžiui, ANSI ir Unicode, ir kaip jie skiriasi?

Video: Kokie simbolių kodavimai, pavyzdžiui, ANSI ir Unicode, ir kaip jie skiriasi?

Video: Kokie simbolių kodavimai, pavyzdžiui, ANSI ir Unicode, ir kaip jie skiriasi?
Video: Breaking Crypto News | Shytoshi Kusama in "Situation Room" for Shibarium - YouTube 2024, Balandis
Anonim
ASCII, UTF-8, ISO-8859 … Galbūt jūs matėte šias keistes vardus, kurie plaukioja, bet ką jie iš tikrųjų reiškia? Perskaitykite, kai paaiškiname, kokia yra simbolių kodavimo funkcija ir kaip šie akronimai susiję su ekrano matomu paprastu tekstu.
ASCII, UTF-8, ISO-8859 … Galbūt jūs matėte šias keistes vardus, kurie plaukioja, bet ką jie iš tikrųjų reiškia? Perskaitykite, kai paaiškiname, kokia yra simbolių kodavimo funkcija ir kaip šie akronimai susiję su ekrano matomu paprastu tekstu.

Pagrindiniai statybiniai blokai

Kai mes kalbame apie rašytinę kalbą, mes kalbame apie laiškus, kurie yra žodžių konstruktoriai, kurie tada kuria sakinius, pastraipas ir pan. Laiškai yra simboliai, kurie vaizduoja garsus. Kai kalbate apie kalbą, tu kalbi apie garsų grupes, kurios susiburia tam tikra prasme. Kiekviena kalbos sistema turi sudėtingą taisyklių ir apibrėžimų rinkinį, kuris reglamentuoja šias reikšmes. Jei turite žodį, tai yra nenaudingas, nebent žinote, iš kokios kalbos ji yra, ir jūs naudojate ją su kitomis kalbomis.

("Grantha", "Tulu" ir "Malayalam" scenarijų palyginimas, "Wikipedia" vaizdas)
("Grantha", "Tulu" ir "Malayalam" scenarijų palyginimas, "Wikipedia" vaizdas)

Kompiuterių pasaulyje naudojamas terminas "simbolis". Charakteris yra savotiška abstrakčioji sąvoka, apibrėžta specifiniais parametrais, bet tai yra pagrindinis reikšmės vienetas. Lotynų "A" nėra tas pats kaip graikų "alfa" ar arabų "alifas", nes jie turi skirtingą kontekstą - jie yra skirtingų kalbų ir turi šiek tiek skirtingų kalbų - todėl galime sakyti, kad jie yra skirtingi simboliai. Vaizdinio simbolio vaizdavimas vadinamas "glifu", o skirtingi glikų rinkiniai vadinami šriftais. Grupių simboliai priklauso "nustatyti" arba "repertuare".

Kai įvedate pastraipą ir pakeičiate šriftą, jūs nesikeičiate raidžių fonetinių reikšmių, keičiate jų atvaizdus. Tai tik kosmetika (bet nesvarbu!). Kai kuriose kalbose, pvz., Senovės egiptiečių ir kinų, yra ideogramų; tai reiškia ne tik garsus, bet ir visas idėjas, o jų išraiškos gali skirtis priklausomai nuo laiko ir atstumo. Jei pakeisite kitą simbolį, pakeisite idėją. Tai ne tik keičiasi raides, bet ir pakeičia ideogramą.

Simbolių kodavimas

(Vaizdas iš Vikipedijos)
(Vaizdas iš Vikipedijos)

Kai įvesite kažką klaviatūroje arba įkeliate failą, kaip kompiuteris žino, ką rodyti? Štai kodėl simbolių kodavimas yra skirtas. Tekstas jūsų kompiuteryje nėra raidžių, tai yra suporuotų raidžių ir skaitmenų reikšmių serija. Simbolio kodavimas veikia kaip raktas, kurio vertės atitinka tas, kuris simbolis, panašiai kaip ortografija, diktuoja, kokie garsai atitinka tuos raides. Morzo kodas yra tam tikras simbolio kodavimas. Tai paaiškina, kaip ilgų ir trumpų vienetų grupės, pvz., Pyptelėjimai, yra simboliai. Morzo kodu simboliai yra tik anglų kalbos raidės, skaičiai ir visi sustojimai. Yra daug kompiuterio simbolių kodų, kurie verčiami į raidę, skaičių, akcento ženklus, skyrybos ženklus, tarptautinius simbolius ir pan.

Dažnai šioje temoje vartojamas terminas "kodų lapai". Jie iš esmės yra simbolių kodai, kuriuos naudoja konkrečios įmonės, dažnai šiek tiek modifikuojamos. Pavyzdžiui, "Windows 1252" kodo puslapis (anksčiau vadinamas ANSI 1252) yra modifikuotas ISO-8859-1 formatas. Jie dažniausiai naudojami kaip vidinė sistema, skirta nurodyti standartines ir modifikuotas simbolių koduotes, kurios būdingos toms pačioms sistemoms. Anksčiau simbolių kodavimas nebuvo toks svarbus, nes kompiuteriai nesusiejo vienas su kitu. Kai internetas tampa vis svarbesniu, o tinklų kūrimas yra įprastas įvykis, jis tampa vis svarbesnis mūsų kasdieniam gyvenimui, be mūsų supratimo.

Daug skirtingų tipų

(Image iš sarah sosiak)
(Image iš sarah sosiak)

Čia yra daug skirtingų simbolių kodavimo, ir yra daug priežasčių. Kuris jūsų naudojamo simbolio kodavimas priklauso nuo jūsų poreikių. Jei bendraujate rusiškai, prasminga naudoti simbolių koduotę, kuri palaiko kirilica. Jei bendrausite korėjiečių kalba, tuomet jūs norėsite kažką, kas gerai atitinka "Hangul" ir "Hanja". Jei esate matematikas, tuomet jūs norite kažko, kuris gerai atspindi visus mokslo ir matematikos simbolius, taip pat graikų ir lotynų kalbų glikus. Jei esate išprotinkas, galbūt naudosite iš apversto teksto. Ir jei norite, kad visi tokio tipo dokumentai būtų peržiūrėti kiekvienam konkrečiam asmeniui, jūs norite, kad būtų gana paplitęs ir lengvai pasiekiamas kodavimas.

Pažvelkime į kai kuriuos dažniausiai pasitaikančius dalykus.

(ASCII lentelės ištrauka, vaizdas iš asciitable.com)
(ASCII lentelės ištrauka, vaizdas iš asciitable.com)
  • ASCII - Amerikos standartinis informacijos mainų kodas yra vienas seniausių simbolių kodavimo. Jis iš pradžių buvo sukurtas remiantis telegrafiniais kodais ir išsivystė laikui bėgant, įtraukiant daugiau simbolių ir kai kurių pasenusių nenaudotų kontrolinių simbolių. Tai tikriausiai yra tokia pat paprasta kaip ir šiuolaikinėse sistemose, nes tai tik lotyniškoji abėcėlė be akcentuotų simbolių. Jo 7 bitų kodavimas leidžia tik 128 simbolius, todėl visame pasaulyje yra keletas neoficialių variantų.
  • ISO-8859 - Tarptautinės standartizacijos organizacijos dažniausiai naudojamos simbolių kodų grupės yra numeris 8859. Kiekvienas konkretus kodavimas žymimas skaičiumi, dažnai jį papildo aprašomuoju pavadinimu, pvz. ISO-8859-3 (lotynų-3), ISO-8859-6 (lotynų / arabų).Tai ASCII antstatas, o tai reiškia, kad pirmosios 128 kodavimo reikšmės yra tokios pačios kaip ir ASCII. Tačiau jis yra 8 bitų ir leidžia 256 simbolius, todėl jis išsiskleidžia iš ten ir apima daug daugiau simbolių, kiekvienas konkretus kodavimas sutelkiamas į skirtingus kriterijų rinkinius. Lotyniškai-1 įtraukta daugybė raide ar raidžių su simboliais, bet vėliau pakeista pakeista rinkiniu "Latin-9", kuriame pateikiami atnaujinti simboliai, pvz., "Euro" simbolis.
Image
Image

(Tibeto scenarijaus fragmentas, Unicode v4, iš unicode.org)

  • Unicode - Šis kodavimo standartas siekia universalumo. Šiuo metu jis apima 93 scenarijus, surengtus keliuose blokuose, ir daug daugiau darbuose. "Unicode" veikia kitaip nei kiti simbolių rinkiniai, kuriuose vietoj tiesiogiai koduojamas glikas, kiekviena vertė nukreipta toliau į "kodo tašką". Tai yra šešioliktainės vertės, atitinkančios simbolius, tačiau pačios glyphs yra pateikiamos atskirai nuo programos, pvz., savo naršyklę. Šie kodai dažniausiai vaizduojami taip: U + 0040 (tai reiškia "@"). Konkrečios koduotės pagal Unicode standartą yra UTF-8 ir UTF-16. UTF-8 bando leisti maksimalų suderinamumą su ASCII. Tai yra 8 bitų, bet leidžia visus simbolius per keitimo mechanizmą ir keletą reikšmių porų vienam simboliui. UTF-16 grioviai puikiai tinka ASCII suderinimui, kad galėtumėte atlikti išsamesnį 16 bitų suderinamumą su standartu.
  • ISO-10646 - Tai nėra faktinis kodavimas, tik "Unicode" simbolių rinkinys, kuris buvo standartizuotas ISO. Tai dažniausiai svarbu, nes tai simbolių repertuaras, kurį naudoja HTML. Trūksta kai kurių iš tobulesnių "Unicode" funkcijų, leidžiančių palyginti, ir iš dešinės į kairę kartu su kairiuoju į dešinę. Vis dėlto, jis puikiai veikia naudodamasis internetu, nes leidžia naudoti daugybę scenarijų ir leidžia naršyklei interpretuoti glikus. Dėl to lokalizavimas tampa lengvesnis.

Kodavimas turėčiau naudoti?

Na, ASCII veikia daugeliui anglų kalbėtojų, bet ne daugeliui kitų. Dažniau matysite ISO-8859-1, kuris veikia daugelyje Vakarų Europos kalbų. Kitos ISO-8859 versijos veikia kirilicų, arabų, graikų ar kitų konkrečių scenarijų. Tačiau, jei norite rodyti kelis scenarijus toje pačioje dokumento ar toje pačioje interneto svetainėje, UTF-8 leidžia gerokai geriau suderinti. Tai taip pat puikiai tinka žmonėms, kurie naudoja tinkamas skyrybos ženklus, matematikos simbolius ar užrakto ženklus, pvz., Kvadratus ir žymėjimo langelius.

(Keli dokumentai viename dokumente, "gujaratsamachar.com" ekrano kopija)
(Keli dokumentai viename dokumente, "gujaratsamachar.com" ekrano kopija)

Tačiau trūksta kiekvieno rinkinio. ASCII yra apribota jo skyrybos ženklais, todėl jis neįmanomas tinkamai dėl tipografiškai teisingų pataisymų. Kada nors tipo kopijuoti / įklijuoti iš "Word" tik į keistą glyfų kombinaciją? Toks yra ISO-8859 ar, tiksliau, teisingumo trūkumas, jo manoma, sąveika su OS konkrečiais kodo puslapiais (mes žiūrime į JŪS, "Microsoft"!). Didžiausias trūkumas UTF-8 yra tai, kad trūksta tinkamos paramos programų redagavimui ir publikavimui. Kita problema yra tai, kad naršyklės dažnai neinterpretuoja ir tiesiog parodo UTF-8 užkoduotojo simbolio baitų užsakymo ženklą. Dėl to rodomi nepageidaujami glyfai. Be abejo, deklaruojant vieną kodavimą ir naudojantis kitais simboliais, netinkamai juos deklaruojant / tinkamai nuorodos į tinklalapį, naršyklėms sunku tinkamai juos pateikti ir paieškos sistemoms tinkamai juos indeksuoti.

Jūsų pačių dokumentams, rankraščiams ir pan. Galite naudotis viskuo, ko reikia, norint atlikti darbą. Kalbant apie žiniatinklį, atrodo, kad dauguma žmonių sutinka naudoti UTF-8 versiją, kurioje nenaudojamas baitų užsakymo ženklas, tačiau tai nėra visiškai vieninga. Kaip matote, kiekvieno simbolio kodavimas turi savo naudojimą, kontekstą, stipriąsias ir silpnąsias puses. Galutiniam vartotojui tikriausiai neturėsite elgtis su šia problema, tačiau dabar galite imtis papildomo žingsnio į priekį, jei pasirinksite.

Rekomenduojamas: