Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • U kontaktu sa
  • Pivot tablica prozora ascii kodova. ASCII (američki standardni kod za razmjenu informacija) kodiranje - osnovno kodiranje teksta za latinicu

Pivot tablica prozora ascii kodova. ASCII (američki standardni kod za razmjenu informacija) kodiranje - osnovno kodiranje teksta za latinicu

[8-bitna kodiranja: ASCII, KOI-8R i CP1251] Prve tabele skupova znakova kreirane u SAD-u nisu koristile osmi bit u bajtu. Tekst je predstavljen kao niz bajtova, ali osmi bit nije uzet u obzir (koristio se u servisne svrhe).

Općeprihvaćeni standard je postao tabela ASCII(Američki standardni kod za razmjenu informacija). Prva 32 ASCII znaka (00 do 1F) korištena su za znakove koji se ne mogu ispisati. Dizajnirani su za kontrolu uređaja za štampanje i slično. Ostatak - od 20 do 7F - su normalni (štampavi) znakovi.

Tabela 1 - ASCII kodiranje

decHexoktCharOpis
0 0 000 null
1 1 001 početak naslova
2 2 002 početak teksta
3 3 003 kraj teksta
4 4 004 kraj prenosa
5 5 005 upit
6 6 006 priznati
7 7 007 zvono
8 8 010 backspace
9 9 011 horizontalni jezičak
10 A 012 nova linija
11 B 013 vertikalna kartica
12 C 014 nova stranica
13 D 015 povrat kočije
14 E 016 prebaciti se
15 F 017 prebaciti se
16 10 020 bijeg podatkovne veze
17 11 021 kontrola uređaja 1
18 12 022 kontrola uređaja 2
19 13 023 kontrola uređaja 3
20 14 024 kontrola uređaja 4
21 15 025 negativno priznanje
22 16 026 sinhroni mirovanje
23 17 027 kraj trans. blok
24 18 030 otkaži
25 19 031 kraj medija
26 1A 032 zamjena
27 1B 033 bijeg
28 1C 034 separator fajlova
29 1D 035 separator grupe
30 1E 036 separator zapisa
31 1F 037 separator jedinice
32 20 040 svemir
33 21 041 !
34 22 042 "
35 23 043 #
36 24 044 $
37 25 045 %
38 26 046 &
39 27 047 "
40 28 050 (
41 29 051 )
42 2A 052 *
43 2B 053 +
44 2C 054 ,
45 2D 055 -
46 2E 056 .
47 2F 057 /
48 30 060 0
49 31 061 1
50 32 062 2
51 33 063 3
52 34 064 4
53 35 065 5
54 36 066 6
55 37 067 7
56 38 070 8
57 39 071 9
58 3A 072 :
59 3B 073 ;
60 3C 074 <
61 3D 075 =
62 3E 076 >
63 3F 077 ?
decHexoktChar
64 40 100 @
65 41 101 A
66 42 102 B
67 43 103 C
68 44 104 D
69 45 105 E
70 46 106 F
71 47 107 G
72 48 110 H
73 49 111 I
74 4A 112 J
75 4B 113 K
76 4C 114 L
77 4D 115 M
78 4E 116 N
79 4F 117 O
80 50 120 P
81 51 121 Q
82 52 122 R
83 53 123 S
84 54 124 T
85 55 125 U
86 56 126 V
87 57 127 W
88 58 130 X
89 59 131 Y
90 5A 132 Z
91 5B 133 [
92 5C 134 \
93 5D 135 ]
94 5E 136 ^
95 5F 137 _
96 60 140 `
97 61 141 a
98 62 142 b
99 63 143 c
100 64 144 d
101 65 145 e
102 66 146 f
103 67 147 g
104 68 150 h
105 69 151 i
106 6A 152 j
107 6B 153 k
108 6C 154 l
109 6D 155 m
110 6E 156 n
111 6F 157 o
112 70 160 str
113 71 161 q
114 72 162 r
115 73 163 s
116 74 164 t
117 75 165 u
118 76 166 v
119 77 167 w
120 78 170 x
121 79 171 y
122 7A 172 z
123 7B 173 {
124 7C 174 |
125 7D 175 }
126 7E 176 ~
127 7F 177 DEL

Kao što možete lako vidjeti, ovo kodiranje sadrži samo latinična slova, i to ona koja se koriste u engleskom jeziku. Tu su i aritmetički i drugi uslužni simboli. Ali ne postoje ruska slova, pa čak ni posebna latinična slova za njemački ili francuski. Ovo je lako objasniti - kodiranje je razvijeno posebno kao američki standard. Kada su kompjuteri počeli da se koriste širom sveta, postalo je neophodno kodiranje drugih simbola.

Za to je odlučeno da se koristi osmi bit u svakom bajtu. Tako je bilo dostupno još 128 vrijednosti (od 80 do FF), koje su se mogle koristiti za kodiranje znakova. Prva od osmobitnih tabela je "prošireni ASCII" ( Prošireni ASCII) - uključuje različite varijante latiničnih znakova koji se koriste u nekim jezicima zapadne Evrope. Sadržao je i druge dodatne simbole, uključujući pseudo grafiku.

Pseudo-grafički znakovi omogućavaju, prikazujući samo tekstualne znakove, da pruže neki privid grafike. Na primjer, program za upravljanje datotekama FAR Manager radi uz pomoć pseudo-grafike.

U proširenoj ASCII tabeli nije bilo ruskih slova. U Rusiji (bivši SSSR) i drugim državama stvorena su vlastita kodiranja koja su omogućila predstavljanje specifičnih „nacionalnih“ znakova u 8-bitnim tekstualnim datotekama - latinična slova poljskog i češkog jezika, ćirilica (uključujući ruska slova ) i druga pisma.

U svim kodiranjima koja su postala široko rasprostranjena, prvih 127 znakova (to jest, vrijednosti bajta s osmim bitom jednakim 0) podudaraju se sa ASCII. Dakle, ASCII datoteka radi u bilo kojem od ovih kodiranja; slova engleskog jezika su predstavljena na isti način.

Organizacija ISO(Međunarodna organizacija za standardizaciju) usvojila je grupu standarda ISO 8859... Definira 8-bitna kodiranja za različite grupe jezika. Dakle, ISO 8859-1 je prošireni ASCII, tabela za Sjedinjene Države i Zapadnu Evropu. A ISO 8859-5 je tabela za ćirilicu (uključujući ruski).

Međutim, iz istorijskih razloga, ISO 8859-5 kodiranje se nije uhvatilo. U stvarnosti, za ruski jezik se koriste sljedeća kodiranja:

Kodna stranica 866 ( CP866), zvani “DOS”, zvani “alternativno GOST kodiranje”. Bio je u širokoj upotrebi do sredine 90-ih; sada se koristi u ograničenoj mjeri. Praktično se ne koristi za distribuciju tekstova na Internetu.
- KOI-8. Razvijen 70-ih i 80-ih godina. To je općeprihvaćeni standard za prijenos mail poruka na ruskom Internetu. Takođe se široko koristi u operativnim sistemima porodice Unix, uključujući Linux. Zove se verzija KOI-8, dizajnirana za ruski jezik KOI-8R; postoje verzije za druge ćiriličke jezike (na primjer, KOI8-U je opcija za ukrajinski jezik).
- Šifra 1251, CP1251, Windows-1251. Razvijen od strane Microsofta za podršku ruskom jeziku u Windows-u.

Glavna prednost CP866 bila je očuvanje pseudografskih znakova na istim mjestima kao u proširenom ASCII-u; stoga bi strani tekstualni programi, na primjer, čuveni Norton Commander, mogli raditi bez promjena. Danas se CP866 koristi za Windows programe koji rade u tekstualnim prozorima ili tekstualnom režimu preko celog ekrana, uključujući FAR Manager.

Poslednjih godina tekstovi u CP866 su prilično retki (ali se koristi za kodiranje ruskih imena datoteka u Windows-u). Stoga ćemo se detaljnije zadržati na dva druga kodiranja - KOI-8R i CP1251.



Kao što možete vidjeti, u tablici kodiranja CP1251 ruska slova su raspoređena po abecednom redu (osim, međutim, slova E). Ovaj raspored olakšava kompjuterskim programima da sortiraju po abecednom redu.

Ali u KOI-8R, redoslijed ruskih slova izgleda nasumičan. Ali zapravo nije.

Mnogi stariji programi izgubili su 8. bit prilikom obrade ili prijenosa teksta. (Sada su takvi programi praktički "izumrli", ali su kasnih 80-ih - ranih 90-ih bili široko rasprostranjeni). Da biste dobili 7-bitnu vrijednost od 8-bitne vrijednosti, oduzmite 8 od najznačajnije cifre; na primjer E1 postaje 61.

Sada uporedite KOI-8R sa ASCII tabelom (Tabela 1). Videćete da su ruska slova jasno usklađena sa latiničnim. Ako osmi bit nestane, mala ruska slova pretvaraju se u velika latinična slova, a velika ruska slova pretvaraju se u mala latinična slova. Dakle, E1 u KOI-8 je rusko "A", dok je 61 u ASCII latinično "a".

Dakle, KOI-8 vam omogućava da sačuvate čitljivost ruskog teksta dok gubite 8. bit. “Zdravo svima” postaje “pRIWET WSEM”.

Nedavno su i abecedni red znakova u tablici kodiranja i čitljivost sa gubitkom 8. bita izgubili odlučujuću važnost. Osmi bit se u savremenim računarima ne gubi ni tokom prenosa ni obrade. Sortiranje po abecednom redu zasniva se na kodiranju, a ne na jednostavnom poređenju kodova. (Usput, CP1251 kodovi nisu potpuno abecedni - slovo E nije na svom mjestu).

Zbog činjenice da postoje dva uobičajena kodiranja, kada radite sa Internetom (pošta, pregledavanje web stranica), ponekad možete vidjeti besmislen skup slova umjesto ruskog teksta. Na primjer, "Ja sam SBUFEMHEL". Ovo su samo riječi "s poštovanjem"; ali su bili kodirani u CP1251 kodiranju, a kompjuter je dekodirao tekst prema tabeli KOI-8. Ako su iste riječi bile, naprotiv, kodirane u KOI-8, a kompjuter je dekodirao tekst prema tabeli CP1251, rezultat će biti “U HČBCEOJEN”.

Ponekad se desi da kompjuter uopšte dešifruje slova ruskog jezika prema tabeli koja nije namenjena ruskom jeziku. Tada se umjesto ruskih slova pojavljuje besmislen skup simbola (na primjer, latinična slova istočnoevropskih jezika); često se nazivaju "krokozijabre".

U većini slučajeva, savremeni programi sami se nose sa određivanjem kodiranja internetskih dokumenata (e-pošte i web stranica). Ali ponekad "zapadnu", i tada možete vidjeti čudne sekvence ruskih slova ili "krokozyabra". U pravilu, da bi se na ekranu prikazao pravi tekst, dovoljno je ručno odabrati kodiranje u meniju programa.

Za članak su korištene informacije sa stranice http://open-office.edusite.ru/TextProcessor/p5aa1.html.

Materijal preuzet sa sajta:

Pozdrav dragi čitaoci blog stranice. Danas ćemo razgovarati s vama o tome odakle dolaze krakozyabri na web-mjestu iu programima, koja kodiranja teksta postoje i koja se trebaju koristiti. Pogledajmo pobliže povijest njihovog razvoja, počevši od osnovnog ASCII-a, kao i njegovih proširenih verzija CP866, KOI8-R, Windows 1251 i završavajući modernim kodiranjem Unicode konzorcija UTF 16 i 8.

Nekome se ova informacija može činiti suvišnom, ali znate koliko pitanja dobijam u vezi s ispuzanim krakozjabrima (nečitljivim skupom znakova). Sada ću imati priliku uputiti sve na tekst ovog članka i samostalno pronaći svoje dovratnike. Pa, pripremite se da upijete informacije i pokušajte pratiti priču.

ASCII - osnovno kodiranje teksta za latinično pismo

Razvoj kodiranja teksta odvijao se istovremeno sa formiranjem IT industrije, a za to vrijeme uspjeli su pretrpjeti dosta promjena. Istorijski, sve je počelo sa EBCDIC-om, koji u ruskom izgovoru nije bio eufoničan, koji je omogućio da se slova latinice, arapski brojevi i interpunkcijski znakovi kodiraju kontrolnim znakovima.

Ali ipak, početna tačka za razvoj modernog kodiranja teksta je poznato ASCII(Američki standardni kod za razmjenu informacija, koji se na ruskom obično izgovara kao "aski"). Opisuje prvih 128 znakova koje najčešće koriste korisnici engleskog govornog područja - latinična slova, arapski brojevi i znakovi interpunkcije.

Čak je i ovih 128 znakova opisanih u ASCII-u uključivalo neke uslužne simbole kao što su zagrade, heš linije, zvjezdice itd. Zapravo, i sami ih možete vidjeti:

Upravo je ovih 128 znakova iz originalne ASCII verzije postalo standard, a u bilo kojem drugom kodiranju ćete ih sigurno susresti i oni će stajati tim redoslijedom.

Ali činjenica je da je uz pomoć jednog bajta informacija moguće kodirati ne 128, već čak 256 različitih vrijednosti (dva na stepen osam jednako je 256), dakle, nakon osnovne verzije Asuke , pojavio se čitav niz proširena ASCII kodiranja, u kojem je, pored 128 osnovnih znakova, bilo moguće kodirati simbole nacionalnog kodiranja (na primjer, ruski).

Ovdje, možda, vrijedi reći nešto više o sistemima brojeva koji se koriste u opisu. Prvo, kao što svi znate, kompjuter radi samo sa brojevima u binarnom sistemu, odnosno sa nulama i jedinicama ("Boolean algebra", ako je neko išao na fakultet ili školu). , od kojih je svaki 2 u potenciji, počevši od nule, pa do dva u sedmom:

Nije teško shvatiti da u takvoj konstrukciji može postojati samo 256 mogućih kombinacija nula i jedinica, a broj iz binarnog sistema u decimalni je vrlo jednostavno pretvoriti. Samo treba da saberete sve stepene dva iznad kojih ima jedan.

U našem primjeru, ovo je 1 (2 na nulti stepen) plus 8 (dva na stepen 3), plus 32 (dva na peti stepen), plus 64 (na šesti), plus 128 (na sedmi). Ukupan broj dobija 233 u decimalnom zapisu. Kao što vidite, sve je vrlo jednostavno.

Ali ako pažljivo pogledate tabelu sa ASCII znakovima, vidjet ćete da su predstavljeni u heksadecimalnom kodiranju. Na primjer, zvjezdica odgovara heksadecimalnom broju 2A u Asuki. Vjerovatno znate da se u heksadecimalnom brojevnom sistemu, pored arapskih brojeva, koriste i latinična slova od A (znači deset) do F (znači petnaest).

Pa, za pretvoriti binarni broj u heksadecimalni pribjegavajte sljedećoj jednostavnoj i intuitivnoj metodi. Svaki bajt informacija je podijeljen na dva dijela od četiri bita, kao što je prikazano na gornjoj slici. To. u svakom polubajtu, samo šesnaest vrijednosti (dvije na četvrti stepen) može biti kodirano u binarnom obliku, što se lako može predstaviti kao heksadecimalni broj.

Štaviše, u lijevoj polovini bajta bit će potrebno ponovo brojati stepene počevši od nule, a ne kao što je prikazano na snimku ekrana. Kao rezultat, nekim jednostavnim proračunima dobijamo da je broj E9 kodiran na snimku ekrana. Nadam se da su vam tok mog razmišljanja i rješenje ove zagonetke bili jasni. Pa, hajde sada da nastavimo, zapravo, o kodiranju teksta.

Proširene verzije Asuke - CP866 i KOI8-R kodiranja sa pseudografijom

Dakle, počeli smo da pričamo o ASCII-u, koji je bio, takoreći, polazna tačka za razvoj svih modernih kodiranja (Windows 1251, Unicode, UTF 8).

U početku je sadržavao samo 128 znakova latinične abecede, arapske brojeve i još nešto, ali u proširenoj verziji postalo je moguće koristiti svih 256 vrijednosti koje se mogu kodirati u jednom bajtu informacije. One. postalo je moguće dodati simbole slova vašeg jezika u Aski.

Ovdje će biti potrebno još jednom skrenuti pažnju da razjasnimo - zašto su nam uopšte potrebna kodiranja tekstove i zašto je to toliko važno. Simboli na ekranu vašeg računara se formiraju na osnovu dve stvari - skupova vektorskih oblika (reprezentacija) svih vrsta znakova (oni su u ko fajlovima) i koda koji vam omogućava da izvučete ovaj skup vektorskih oblika (font fajl) upravo onaj simbol koji će biti potrebno umetnuti na pravo mjesto.

Jasno je da su sami fontovi odgovorni za vektorske forme, ali su operativni sistem i programi koji se u njemu koriste odgovorni za kodiranje. One. bilo koji tekst na vašem računaru će biti skup bajtova, od kojih svaki kodira samo jedan karakter ovog teksta.

Program koji ovaj tekst prikazuje na ekranu (uređivač teksta, pretraživač itd.), prilikom raščlanjivanja koda, čita kodiranje sljedećeg znaka i traži odgovarajući vektorski oblik u potrebnoj datoteci fonta, koji je povezan za prikaz ovog tekstualni dokument. Sve je jednostavno i otrcano.

To znači da da bismo kodirali bilo koji znak koji nam je potreban (na primjer, iz nacionalnog alfabeta), moraju biti ispunjena dva uslova - vektorski oblik ovog znaka mora biti u fontu koji se koristi i ovaj znak može biti kodiran u proširenim ASCII kodovima u jedan bajt. Stoga postoji čitava gomila takvih opcija. Postoji nekoliko varijanti proširene Asuke samo za kodiranje znakova ruskog jezika.

Na primjer, izvorno se pojavio CP866, u kojem je bilo moguće koristiti znakove ruskog alfabeta i to je bila proširena verzija ASCII-a.

One. njen gornji dio se potpuno poklapao sa osnovnom verzijom Asuke (128 latiničnih znakova, brojeva i bilo kakvog drugog sranja), što je prikazano na snimku ekrana odmah iznad, ali donji dio tabele sa CP866 kodiranjem imao je prikaz prikazan na snimku ekrana upravo ispod i dozvoljeno je kodiranje još 128 znakova (ruska slova i sve vrste pseudo-grafike):

Vidite, u desnoj koloni brojevi počinju sa 8, jer brojevi od 0 do 7 odnose se na osnovni ASCII dio (pogledajte prvi snimak ekrana). To. rusko slovo "M" u CP866 imaće kod 9C (nalazi se na preseku odgovarajuće linije sa 9 i kolone sa brojem C u heksadecimalnom zapisu), koji se može napisati u jednom bajtu informacije, i ako postoji odgovarajući font sa ruskim znakovima, ovo slovo će bez problema biti prikazano u tekstu.

Odakle taj iznos? pseudografija u CP866? Poenta je da je ovo kodiranje za ruski tekst razvijeno još u tim krznenim godinama, kada nije bilo širenja grafičkih operativnih sistema kao sada. I u Dosu, i sličnim tekstualnim operativnim sistemima, pseudografika je omogućila da se na neki način diverzificira dizajn tekstova i stoga CP866 i svi ostali njegovi vršnjaci iz kategorije proširenih verzija Asuke obiluju njome.

CP866 je distribuirao IBM, ali osim toga, razvijeno je nekoliko kodiranja za ruske znakove, na primjer, ovaj tip (prošireni ASCII) se može pripisati KOI8-R:

Princip njegovog rada ostaje isti kao i kod CP866 opisanog malo ranije - svaki znak teksta je kodiran s jednim bajtom. Snimak ekrana prikazuje drugu polovinu tabele KOI8-R, od prva polovina je u potpunosti u skladu sa osnovnom Asukom, koja je prikazana na prvom snimku ekrana u ovom članku.

Među karakteristikama KOI8-R kodiranja, može se primijetiti da ruska slova u njegovoj tablici nisu po abecednom redu, kao što je, na primjer, bila u CP866.

Ako pogledate prvi snimak ekrana (osnovnog dijela, koji je uključen u sva proširena kodiranja), primijetit ćete da se u KOI8-R ruska slova nalaze u istim ćelijama tabele kao i slova suglasnika latinice sa njima iz prvog dela tabele. Ovo je učinjeno radi pogodnosti prebacivanja sa ruskih znakova na latinične znakove odbacivanjem samo jednog bita (dva na sedmu potenciju ili 128).

Windows 1251 - moderna verzija ASCII i zašto krakozyabry izlaze

Dalji razvoj kodiranja teksta bio je povezan s činjenicom da su grafički operativni sistemi postajali sve popularniji i da je vremenom nestala potreba za korištenjem pseudografike u njima. Kao rezultat toga, nastala je cijela grupa, koje su, u suštini, još uvijek bile proširene verzije Asuke (jedan znak teksta je kodiran sa samo jednim bajtom informacija), ali već bez upotrebe pseudo-grafičkih znakova.

Pripadali su takozvanim ANSI kodovima, koje je razvio Američki institut za standarde. U običnom govoru, naziv ćirilice i dalje se koristio za verziju s podrškom za ruski jezik. Primjer za to može poslužiti.

Povoljno se razlikovao od ranije korištenih CP866 i KOI8-R po tome što su mjesto pseudografskih simbola u njemu zauzeli nedostajući simboli ruske tipografije (osim znaka akcenta), kao i simboli koji se koriste u slavenskim jezicima blisko ruskom (ukrajinskom, bjeloruskom, itd.) ):

Zbog tolikog obilja kodiranja ruskog jezika, proizvođači fontova i softveri su stalno imali glavobolje, a mi, dragi čitaoci, često smo izvlačili one ozloglašene krakozyabry kada je došlo do zabune sa verzijom korištenom u tekstu.

Vrlo često su izlazili prilikom slanja i primanja poruka e-poštom, što je podrazumijevalo kreiranje vrlo složenih tabela konverzije, koje, zapravo, nisu mogle suštinski riješiti ovaj problem, a često su korisnici za korespondenciju izbjegavali zloglasne krakozjabe prilikom korištenja Ruski kodiranja poput CP866, KOI8-R ili Windows 1251.

U stvari, krakozyabry, koji je izašao umjesto ruskog teksta, bio je rezultat pogrešne upotrebe kodiranja ovog jezika, koje nije odgovaralo onom u kojem je tekstualna poruka izvorno kodirana.

Na primjer, ako pokušamo prikazati znakove kodirane sa CP866 pomoću tablice kodova Windows 1251, tada će se pojaviti ti isti krakozyabry (besmisleni skup znakova) koji će u potpunosti zamijeniti tekst poruke.

Slična situacija se vrlo često dešava kada, na forumima ili blogovima, kada je tekst sa ruskim znakovima greškom sačuvan u pogrešnom kodiranju koje se podrazumevano koristi na sajtu, ili u pogrešnom uređivaču teksta koji dodaje gagging kodu koji nije vidljiv golim okom.

Na kraju, mnogi su bili umorni od ove situacije s puno kodiranja i stalno nastajajućih krakozjabera, postojali su preduslovi za stvaranje nove univerzalne varijacije koja bi zamijenila sve postojeće i konačno riješila korijenski problem pojave nečitljivih tekstova . Osim toga, postojao je problem jezika poput kineskog, gdje je znakova jezika bilo mnogo više od 256.

Unicode - univerzalna UTF kodiranja 8, 16 i 32

Ove hiljade znakova iz grupe jezika jugoistočne Azije ne mogu se opisati u jednom bajtu informacija, koji je bio dodijeljen za kodiranje znakova u proširenim verzijama ASCII-a. Kao rezultat, stvoren je konzorcij tzv Unicode(Unicode - Unicode Consortium) uz saradnju mnogih lidera IT industrije (onih koji proizvode softver, koji kodiraju hardver, koji kreiraju fontove) koji su bili zainteresovani za pojavu univerzalnog kodiranja teksta.

Prva varijacija objavljena pod okriljem Unicode konzorcija je bila UTF 32... Broj u nazivu kodiranja označava broj bitova koji se koriste za kodiranje jednog znaka. 32 bita su 4 bajta informacija koje će biti potrebne za kodiranje jednog pojedinačnog znaka u novom univerzalnom UTF kodiranju.

Kao rezultat toga, isti fajl sa tekstom kodiranim u proširenoj verziji ASCII-a iu UTF-32, u drugom slučaju, imaće četiri puta veću veličinu (težinu). Ovo je loše, ali sada imamo priliku da kodiramo broj znakova jednak dva na stepen od trideset druge ( milijarde znakova, koji će pokriti svaku zaista potrebnu vrijednost sa kolosalnom marginom).

Ali mnoge zemlje s jezicima europske grupe nisu morale koristiti tako ogroman broj znakova u kodiranju, ali kada se koristio UTF-32, dobile su četiri puta povećanje težine tekstualnih dokumenata za ništa, a kao rezultat, povećanje obima internet saobraćaja i količine pohranjenih podataka. Ovo je mnogo, i niko si nije mogao priuštiti takav otpad.

Kao rezultat razvoja Unicode-a, UTF-16, koji se pokazao toliko uspješnim da je standardno prihvaćen kao osnovni prostor za sve simbole koje koristimo. Koristi dva bajta za kodiranje jednog znaka. Da vidimo kako izgleda ovaj slučaj.

U operativnom sistemu Windows možete pratiti putanju "Start" - "Programi" - "Dodatna oprema" - "Sistemski alati" - "Mapa simbola". Kao rezultat, otvorit će se tabela sa vektorskim oblicima svih fontova instaliranih u vašem sistemu. Ako odaberete Unicode skup znakova u "Dodatni parametri", moći ćete vidjeti za svaki font posebno cijeli asortiman znakova koji su uključeni u njega.

Usput, klikom na bilo koji od njih, možete vidjeti njegov dvobajt UTF-16 kod koji se sastoji od četiri heksadecimalne cifre:

Koliko znakova se može kodirati u UTF-16 sa 16 bita? 65536 (dva na stepen šesnaest), a upravo je taj broj uzet kao osnovni prostor u Unicode-u. Osim toga, postoje načini za kodiranje sa njim i oko dva miliona karaktera, ali su bili ograničeni na prošireni prostor od milion karaktera teksta.

Ali čak ni ova uspješna verzija Unicode kodiranja nije donijela veliko zadovoljstvo onima koji su, na primjer, pisali programe samo na engleskom, jer se nakon prelaska sa proširene verzije ASCII na UTF-16 težina dokumenata udvostručila (jedan bajt po jednom karakteru u Aski i dva bajta za isti znak u UTP-16).

Upravo na zadovoljstvo svih i svih u Unicode konzorcijumu odlučeno je da se osmisli kodiranje promenljive dužine... Nazvali su ga UTF-8. Uprkos broju osam u nazivu, on zaista ima promjenjivu dužinu, tj. svaki znak u tekstu se može kodirati u niz od jednog do šest bajtova.

U praksi se u UTF-8 koristi samo raspon od jednog do četiri bajta, jer osim četiri bajta koda ništa nije moguće čak ni teoretski zamisliti. Svi latinični znakovi u njemu su kodirani u jedan bajt, baš kao u dobrom starom ASCII-u.

Ono što je vrijedno pažnje, u slučaju kodiranja samo latiničnog pisma, čak i oni programi koji ne razumiju Unicode će i dalje čitati ono što je kodirano u UTF-8. One. osnovni dio Asuke upravo je prešao u ovu zamisao Unicode konzorcijuma.

Ćirilični znakovi u UTF-8 kodirani su u dva bajta, a, na primjer, gruzijski - u tri bajta. Unicode konzorcij nakon kreiranja UTF-a 16 i 8 riješio je glavni problem - sada imamo postoji jedan kodni prostor u fontovima... A sada ih njihovi proizvođači mogu ispuniti samo vektorskim oblicima tekstualnih simbola na osnovu svojih snaga i mogućnosti. Sada čak iu setovima.

U gornjoj "Tablici znakova" možete vidjeti da različiti fontovi podržavaju različit broj znakova. Neki fontovi bogati Unicode-om mogu biti veoma teški. Ali sada se ne razlikuju po tome što su kreirani za različita kodiranja, već po tome što je proizvođač fontova popunio ili nije popunio niti jedan kodni prostor određenim vektorskim oblicima do kraja.

Krakozyabry umjesto ruskih slova - kako to popraviti

Pogledajmo sada kako se krakozjabre pojavljuju umjesto teksta, ili, drugim riječima, kako se bira ispravno kodiranje za ruski tekst. Zapravo, to je postavljeno u programu u kojem kreirate ili uređujete upravo ovaj tekst, odnosno kod koristeći fragmente teksta.

Za uređivanje i kreiranje tekstualnih fajlova, ja lično koristim jedan veoma dobar, po mom mišljenju. Međutim, može naglasiti sintaksu još dobrih stotinu programskih i markup jezika, a također ima mogućnost proširenja pomoću dodataka. Pročitajte detaljnu recenziju ovog sjajnog programa na navedenom linku.

U gornjem meniju Notepad ++ nalazi se stavka "Kodiranja", gde ćete moći da konvertujete postojeću verziju u onu koja se podrazumevano koristi na vašem sajtu:

U slučaju stranice na Joomli 1.5 i novijoj, kao i u slučaju bloga na WordPress-u, kako biste izbjegli pojavu pukotina, odaberite opciju UTF 8 bez BOM-a... Šta je prefiks BOM?

Činjenica je da su, kada je razvijeno YUTF-16 kodiranje, iz nekog razloga odlučili da mu pridruže nešto kao što je mogućnost pisanja koda znakova, kako u direktnom nizu (na primjer, 0A15) tako iu obrnutom (150A) . A da bi programi razumjeli kojim redoslijedom čitati kodove, i izmišljen je BOM(Oznaka reda bajtova ili, drugim riječima, potpis), što je izraženo dodavanjem tri dodatna bajta na samom početku dokumenata.

U UTF-8 kodiranju, u Unicode konzorcijumu nije predviđena BOM, pa stoga dodavanje potpisa (ova najozloglašenija dodatna tri bajta na početak dokumenta) jednostavno sprečava neke programe da čitaju kod. Stoga, kada snimamo datoteke u UTP, uvijek moramo odabrati opciju bez BOM-a (bez potpisa). Dakle, napreduj zaštitite se od puzanja krakozyabrov.

Ono što je vrijedno pažnje je da neki programi u Windows-u to ne mogu (ne mogu sačuvati tekst u UTP-8 bez BOM-a), na primjer, ozloglašeni Windows Notepad. Dokument sprema u UTF-8, ali i dalje dodaje potpis (tri dodatna bajta) na početak. Štaviše, ovi bajtovi će uvijek biti isti - čitajte kod u direktnom nizu. Ali na serverima, zbog ove sitnice, može nastati problem - krakozyabry će izaći.

Dakle, nikako nemojte koristiti običan Windows notepad za uređivanje dokumenata vašeg sajta, ako ne želite izgled krakozjabrova. Najbolja i najjednostavnija opcija, mislim, je već spomenuti uređivač Notepad ++, koji praktički nema nedostataka i sastoji se samo od prednosti.

U Notepad ++, kada birate kodiranje, moći ćete da konvertujete tekst u UCS-2 kodiranje, što je inherentno vrlo blisko Unicode standardu. Također u Notepad-u će biti moguće kodirati tekst u ANSI, tj. u odnosu na ruski jezik to ćemo već opisati odmah iznad Windowsa 1251. Odakle dolazi ova informacija?

Registriran je u registru vašeg Windows operativnog sistema - koje kodiranje odabrati u slučaju ANSI, koje odabrati u slučaju OEM (za ruski jezik će to biti CP866). Ako instalirate drugi podrazumevani jezik na svom računaru, onda će ovi kodovi biti zamenjeni sličnim iz ANSI ili OEM kategorije za isti jezik.

Nakon što snimite dokument u kodiranju koji vam je potreban u Notepad ++ ili otvorite dokument sa stranice za uređivanje, možete vidjeti njegov naziv u donjem desnom kutu uređivača:

Da biste izbjegli krakozyabrov, pored gore opisanih radnji, bit će korisno napisati informacije o ovom kodiranju u zaglavlju izvornog koda svih stranica web-mjesta kako ne bi došlo do zabune na serveru ili lokalnom hostu.

Općenito, u svim jezicima za označavanje hiperteksta osim Html-a, koristi se posebna xml deklaracija, koja označava kodiranje teksta.

Prije nego počne raščlanjivati ​​kod, pretraživač će znati koja se verzija koristi i kako tačno treba tumačiti kodove znakova ovog jezika. Ali ono što je vredno pažnje je da ako sačuvate dokument u podrazumevanom unicode-u, onda se ova xml deklaracija može izostaviti (kodiranje će se smatrati UTF-8 ako nema BOM ili YUTF-16 ako postoji BOM).

U slučaju HTML dokumenta, specificirano je kodiranje Meta element, koji je napisan između otvaranja i zatvaranja Head tagova:

... ...

Ovaj unos se dosta razlikuje od onog usvojenog, ali je u potpunosti usklađen sa novim Html 5 standardom koji se polako uvodi i biće 100% ispravno shvaćen od strane svih trenutno korišćenih pretraživača.

U teoriji, Meta element koji ukazuje na kodiranje Html dokumenta bi bio bolje postavljen što je više moguće u zaglavlju dokumenta tako da bi u trenutku susreta sa prvim znakom u tekstu koji nije iz osnovnog ANSI (koji se uvek čita ispravno i u bilo kojoj varijaciji), pretraživač već treba da ima informaciju kako da tumači kodove ovih znakova.

Sretno ti! Vidimo se uskoro na stranicama blog stranice

možete pogledati više video zapisa ako odete na
");">

Možda ste zainteresovani

Šta su URL-ovi, koja je razlika između apsolutnih i relativnih linkova za sajt
OpenServer je moderan lokalni server i primjer njegove upotrebe za instaliranje WordPress-a na računar
Šta je Chmod, koje dozvole dodijeliti datotekama i mapama (777, 755, 666) i kako to učiniti putem PHP-a
Yandex pretraga na web lokaciji i online trgovini

Prema podacima Međunarodne unije za telekomunikacije, 2016. godine, tri i po milijarde ljudi koristilo je internet s različitom redovnošću. Većina njih i ne razmišlja o tome da su sve poruke koje šalju preko računara ili mobilnih uređaja, kao i tekstovi koji se prikazuju na svim vrstama monitora, zapravo kombinacije 0 i 1. Ovakav prikaz informacija naziva se kodiranje . Omogućava i uvelike olakšava njegovo skladištenje, obradu i prijenos. Godine 1963. razvijeno je američko ASCII kodiranje, čemu je i posvećen ovaj članak.

Prezentacija informacija u kompjuteru

Sa stanovišta svakog elektronskog računara, tekst je skup pojedinačnih znakova. To uključuje ne samo slova, uključujući velika slova, već i znakove interpunkcije i brojeve. Osim toga, koriste se posebni znakovi "=", "&", "(" i razmaci.

Skup simbola koji čine tekst naziva se abeceda, a njihov broj kardinalitet (označen kao N). Da bi se to definiralo, koristi se izraz N = 2 ^ b, gdje je b broj bitova ili informacijska težina određenog karaktera.

Dokazano je da abeceda kapaciteta 256 znakova može predstavljati sve potrebne znakove.

Pošto je 256 8. stepen dvojke, težina svakog znaka je 8 bita.

Mjerna jedinica od 8 bita naziva se 1 bajt, pa je uobičajeno reći da bilo koji znak u tekstu pohranjenom na računaru zauzima jedan bajt memorije.

Kako se radi kodiranje

Bilo koji tekst se unosi u memoriju personalnog računara pomoću tastera na tastaturi na kojima su ispisani brojevi, slova, interpunkcijski znaci i drugi simboli. Oni se prenose u RAM u binarnom kodu, odnosno svaki znak je povezan sa decimalnim kodom poznatim ljudima, od 0 do 255, što odgovara binarnom kodu - od 00000000 do 11111111.

Kodiranje znakova u bajtu omogućava procesoru teksta da pristupi svakom karakteru zasebno. U isto vrijeme, 256 znakova je dovoljno za predstavljanje bilo koje informacije o karakteru.

ASCII kodiranje znakova

Ova skraćenica na engleskom znači kod za razmjenu informacija.

Čak i u zoru kompjuterizacije, postalo je očigledno da možete smisliti širok izbor načina za kodiranje informacija. Međutim, za prijenos informacija s jednog računala na drugi, bilo je potrebno razviti jedinstveni standard. Tako se 1963. godine u Sjedinjenim Državama pojavila ASCII tablica kodiranja. U njemu je bilo koji simbol kompjuterske abecede povezan sa njegovim rednim brojem u binarnom prikazu. U početku se ASCII koristio samo u Sjedinjenim Državama, a kasnije je postao međunarodni standard za PC.

ASCII kodovi su podijeljeni u 2 dijela. Samo prva polovina ove tabele se smatra međunarodnim standardom. Sadrži znakove sa rednim brojevima od 0 (kodirano kao 00000000) do 127 (šifra 01111111).

Serijski broj

ASCII kodiranje teksta

Simbol

0000 0000 - 0001 1111

Znakovi sa N od 0 do 31 nazivaju se kontrolni znakovi. Njihova funkcija je da „vode“ proces prikazivanja teksta na monitoru ili uređaju za štampanje, daju zvučni signal itd.

0010 0000 - 0111 1111

Znakovi sa N od 32 do 127 (standardni dio tabele) - velika i mala slova latinice, 10-cifreni brojevi, znaci interpunkcije, kao i razni zagrade, komercijalni i drugi simboli. Znak 32 označava razmak.

1000 0000 - 1111 1111

Znakovi sa N od 128 do 255 (alternativni dio tabele ili kodne stranice) mogu imati različite varijante, od kojih svaka ima svoj broj. Kodna stranica se koristi za određivanje nacionalnih alfabeta koje se razlikuju od latinice. Konkretno, uz njegovu pomoć se provodi ASCII kodiranje za ruske znakove.

U tablici kodiranja, velika slova i slijede jedan za drugim abecednim redom, a brojevi - uzlaznim redoslijedom vrijednosti. Ovaj princip važi i za rusko pismo.

Kontrolni znakovi

ASCII tablica kodiranja prvobitno je kreirana za primanje i prijenos informacija na takvom uređaju koji se dugo nije koristio, kao što je teletip. S tim u vezi, znakovi koji se ne mogu štampati su uključeni u skup znakova, koji se koriste kao komande za kontrolu ovog uređaja. Slične komande su korištene u takvim metodama razmjene poruka prije kompjutera kao što su Morzeov kod, itd.

Najčešći "teletip" znak je NUL (00, "nula"). Još uvijek se koristi u većini programskih jezika do danas, označavajući terminator linije.

Gdje se koristi ASCII kodiranje?

Američki standardni kod je potreban za više od samog unosa tekstualnih informacija sa tastature. Takođe se koristi u grafici. Konkretno, u ASCII Art Maker-u, slike različitih ekstenzija predstavljaju spektar ASCII znakova.

Takvi proizvodi su dvije vrste: oni obavljaju funkciju grafičkih uređivača tako što pretvaraju slike u tekst i pretvaraju "slike" u ASCII grafiku. Na primjer, poznati emotikon je odličan primjer kodirajućeg karaktera.

ASCII se također može koristiti prilikom kreiranja HTML dokumenta. U tom slučaju možete unijeti određeni skup znakova, a prilikom pregleda stranice na ekranu će se pojaviti znak koji odgovara ovom kodu.

ASCII je takođe neophodan za kreiranje višejezičnih sajtova, pošto se znakovi koji nisu uključeni u određenu nacionalnu tabelu zamenjuju ASCII kodovima.

Neke karakteristike

Za kodiranje tekstualnih informacija u ASCII kodiranju prvobitno je korišteno 7 bitova (jedan je ostavljen prazan), ali danas radi kao 8-bitni.

Slova u gornjem i donjem stupcu razlikuju se jedno od drugog za samo jedan bit. Ovo uvelike smanjuje složenost provjere.

Korišćenje ASCII-a u Microsoft Office-u

Ako je potrebno, ovaj tip kodiranja teksta može se koristiti u Microsoft uređivačima teksta kao što su Notepad i Office Word. Međutim, prilikom kucanja u ovom slučaju, neke funkcije neće biti moguće koristiti. Na primjer, nećete moći podebljati, jer ASCII samo čuva značenje informacija, zanemarujući njihov opći izgled i oblik.

Standardizacija

ISO organizacija je usvojila standarde ISO 8859. Ova grupa definiše osmobitna kodiranja za različite jezičke grupe. Konkretno, ISO 8859-1 je prošireni ASCII, što je tabela za Sjedinjene Države i Zapadnu Evropu. A ISO 8859-5 je tabela koja se koristi za ćirilično pismo, uključujući ruski jezik.

Iz brojnih istorijskih razloga, standard ISO 8859-5 je u upotrebi veoma kratko vreme.

Za ruski jezik se trenutno koriste kodiranja:

  • CP866 (kod stranice 866) ili DOS, koji se često naziva alternativnim GOST kodiranjem. Aktivno se koristio do sredine 90-ih godina prošlog stoljeća. Trenutno se praktično ne koristi.
  • KOI-8. Kodiranje je razvijeno 1970-80-ih i trenutno je općeprihvaćeni standard za poruke pošte na Runetu. Široko se koristi u OS porodice Unix, uključujući Linux. "Ruska" verzija KOI-8 zove se KOI-8R. Osim toga, postoje verzije za druge ćiriličke jezike, kao što je ukrajinski.
  • Kodna stranica 1251 (CP 1251, Windows - 1251). Razvijen od strane Microsofta za pružanje podrške za ruski jezik u Windows okruženju.

Glavna prednost prvog standarda CP866 bila je očuvanje pseudografskih znakova na istim pozicijama kao u proširenom ASCII-u. Ovo je omogućilo pokretanje bez izmjena stranih tekstualnih programa, kao što je dobro poznati Norton Commander. Trenutno se CP866 koristi za programe razvijene pod Windows-om koji rade u tekstualnom modu preko cijelog ekrana ili u tekstualnim prozorima, uključujući FAR Manager.

Kompjuterski tekstovi pisani u CP866 kodiranju su prilično rijetki u posljednje vrijeme, ali se upravo to kodiranje koristi za ruske nazive datoteka u Windows-u.

"Unicode"

U ovom trenutku, upravo je ovo kodiranje dobilo najširu upotrebu. Unicode kodovi su podijeljeni na područja. Prvi (U + 0000 do U + 007F) uključuje ASCII znakove sa kodovima. Zatim slijede područja znakova različitih nacionalnih pisama, kao i znakova interpunkcije i tehničkih simbola. Osim toga, neki od "Unicode" kodova su rezervirani u slučaju da u budućnosti bude potrebe za uključivanjem novih znakova.

Sada znate da je u ASCII-u svaki znak predstavljen kao kombinacija 8 nula i jedinica. Nespecijalistima ove informacije mogu izgledati nepotrebne i nezanimljive, ali zar ne želite da znate šta se dešava "u mozgu" vašeg računara ?!

Unicode (na engleskom Unicode) je standard za kodiranje znakova. Jednostavno rečeno, ovo je tabela korespondencije tekstualnih znakova (, slova, interpunkcijski elementi) binarni kodovi. Računar razumije samo niz nula i jedinica. Da bi znao šta tačno treba da prikaže na ekranu, potrebno je svakom karakteru dodeliti jedinstveni broj. Osamdesetih godina, znakovi su bili kodirani u jednom bajtu, odnosno u osam bita (svaki bit je 0 ili 1). Tako se pokazalo da jedna tabela (aka kodiranje ili skup) može sadržati samo 256 karaktera. Ovo možda neće biti dovoljno ni za jedan jezik. Stoga se pojavilo mnogo različitih kodiranja, zabuna s kojima je često dovodila do činjenice da se umjesto čitljivog teksta na ekranu pojavio neki čudan krakozyabry. Bio je potreban jedinstven standard, koji je postao Unicode. Najčešće korišteno kodiranje je UTF-8 (Unicode Transformation Format), koji koristi 1 do 4 bajta za prikaz znaka.

Simboli

Znakovi u Unicode tabelama su numerisani heksadecimalnim brojevima. Na primjer, ćirilično veliko slovo M označeno je U + 041C. To znači da se nalazi na raskrsnici linije 041 i kolone C. Možete je jednostavno kopirati, a zatim negdje zalijepiti. Da ne biste preturali po višekilometarskoj listi, trebali biste koristiti pretragu. Kada odete na stranicu sa simbolima, vidjet ćete njen broj u Unicodeu i način na koji je nacrtan različitim fontovima. Također možete ubaciti sam znak u traku za pretraživanje, čak i ako je umjesto toga nacrtan kvadrat, barem da biste saznali o čemu se radi. Takođe, na ovom sajtu postoje posebni (i - nasumični) setovi ikona iste vrste, sakupljeni iz različitih sekcija, radi lakšeg korišćenja.

Unicode standard je međunarodni. Uključuje znakove iz gotovo svih pisama na svijetu. Uključujući i one koji se više ne koriste. Egipatski hijeroglifi, germanske rune, majansko pismo, klinopis i abecede drevnih država. Prikazana je i oznaka mjera i težina, notni zapisi, matematički pojmovi.

Sam Unicode konzorcij ne izmišlja nove znakove. One ikone koje nađu svoju primjenu u društvu dodaju se na tabele. Na primjer, znak rublje se aktivno koristio šest godina prije nego što je dodat u Unicode. Emoji piktogrami (emotikoni) su također prvi put bili široko korišteni u Japanu i prije nego što su uključeni u kodiranje. Ali zaštitni znakovi i logotipi kompanije se u principu ne dodaju. Čak i uobičajena kao Apple apple ili Windows zastava. Danas je u verziji 8.0 kodirano oko 120 hiljada znakova.

Skup znakova kojim se piše tekst naziva se abeceda.

Broj znakova u abecedi je njegov moć.

Formula za određivanje količine informacija: N = 2 b,

gdje je N kardinalnost abecede (broj znakova),

b - broj bitova (informaciona težina karaktera).

Abeceda kapaciteta 256 znakova može primiti gotovo sve potrebne znakove. Ova abeceda se zove dovoljno.

Jer 256 = 2 8, tada je težina 1 znaka 8 bita.

8-bitna jedinica je dobila ime 1 bajt:

1 bajt = 8 bitova.

Binarni kod svakog znaka u kompjuterskom tekstu zauzima 1 bajt memorije.

Kako su tekstualne informacije predstavljene u memoriji računara?

Pogodnost bajt kodiranja znakova je očigledna, budući da je bajt najmanji adresabilni dio memorije i stoga procesor može pristupiti svakom karakteru zasebno, obavljajući obradu teksta. S druge strane, 256 znakova je sasvim dovoljan broj za predstavljanje širokog spektra informacija o znakovima.

Sada se postavlja pitanje kakvu vrstu osmobitnog binarnog koda povezati sa svakim znakom.

Jasno je da je ovo uslovna stvar, možete smisliti mnoge metode kodiranja.

Svi znakovi kompjuterske abecede su numerisani od 0 do 255. Svaki broj odgovara osmocifrenom binarnom kodu od 00000000 do 11111111. Ovaj kod je jednostavno redni broj znaka u binarnom sistemu.

Tabela u kojoj su svim znakovima kompjuterske abecede dodijeljeni serijski brojevi naziva se tabela kodiranja.

Za različite tipove računara koriste se različite tablice kodiranja.

Međunarodni standard za PC je postao stol ASCII(čitaj asci) (Američki standardni kod za razmjenu informacija).

ASCII tabela je podijeljena na dva dijela.

Međunarodni standard je samo prva polovina tabele, tj. simboli sa brojevima iz 0 (00000000), do 127 (01111111).

Struktura ASCII tablice kodiranja

Serijski broj

Šifra

Simbol

0 - 31

00000000 - 00011111

Simboli sa brojevima od 0 do 31 obično se nazivaju kontrolni znakovi.
Njihova funkcija je kontrola procesa prikazivanja teksta na ekranu ili štampanja, davanja zvučnog signala, označavanja teksta itd.

32 - 127

00100000 - 01111111

Standardni dio tabele (engleski). Ovo uključuje mala i velika slova latinice, decimalne cifre, znakove interpunkcije, sve vrste zagrada, komercijalne i druge simbole.
Znak 32 je razmak, tj. prazna pozicija u tekstu.
Svi ostali se ogledaju u određenim znacima.

128 - 255

10000000 - 11111111

Alternativni dio tabele (ruski).
Druga polovina tabele kodova ASCII, nazvana kodna stranica (128 kodova, počevši od 10000000 i završavajući sa 11111111), može imati različite varijante, svaka varijanta ima svoj broj.
Kodna stranica se prvenstveno koristi za smještaj nacionalnih alfabeta osim latinice. U ruskim nacionalnim kodovima, ovaj dio tabele sadrži simbole ruskog alfabeta.

Prva polovina ASCII tabele


Skrećem vam pažnju da su u tablici kodiranja slova (velika i mala slova) raspoređena abecednim redom, a brojevi rastućim redoslijedom vrijednosti. Ovo poštovanje leksikografskog reda u rasporedu znakova naziva se princip sekvencijalnog kodiranja abecede.

Za slova ruske abecede također se poštuje princip sekvencijalnog kodiranja.

Druga polovina ASCII tabele


Nažalost, trenutno postoji pet različitih ćiriličkih kodiranja (KOI8-R, Windows. MS-DOS, Macintosh i ISO). Zbog toga često nastaju problemi sa prenosom ruskog teksta sa jednog računara na drugi, iz jednog softverskog sistema u drugi.

Hronološki, jedan od prvih standarda za kodiranje ruskih slova na računarima bio je KOI8 („Kod za razmjenu informacija, 8-bitni“). Ovo kodiranje je korišćeno još 70-ih godina na računarima serije računara ES, a od sredine 80-ih počelo je da se koristi u prvim rusifikovanim verzijama UNIX operativnog sistema.

Od početka 90-ih, vremena dominacije operativnog sistema MS DOS, ostaje CP866 kodiranje („CP“ je skraćenica za „Code Page“).

Apple računari koji koriste Mac OS koriste vlastito Mac kodiranje.

Pored toga, Međunarodna organizacija za standardizaciju (International Standards Organization, ISO) odobrila je još jedno kodiranje pod nazivom ISO 8859-5 kao standard za ruski jezik.

Trenutno, najčešće kodiranje je Microsoft Windows, skraćeno CP1251.

Od kasnih 90-ih, problem standardizacije kodiranja znakova riješen je uvođenjem novog međunarodnog standarda tzv. Unicode... Ovo je 16-bitno kodiranje, tj. dodjeljuje 2 bajta memorije za svaki znak. Naravno, ovo udvostručuje količinu korištene memorije. Ali s druge strane, takva kodna tabela omogućava uključivanje do 65536 znakova. Kompletna specifikacija Unicode standarda uključuje sve postojeće, izumrle i umjetno stvorene alfabete svijeta, kao i mnoge matematičke, muzičke, hemijske i druge simbole.

Pokušajmo koristiti ASCII tablicu da zamislimo kako će riječi izgledati u memoriji računara.

Interno predstavljanje riječi u memoriji računara

Ponekad se desi da se tekst koji se sastoji od slova ruske abecede, primljen sa drugog računara, ne može pročitati - na ekranu monitora je vidljiva neka vrsta "brblja". To je zbog činjenice da računari koriste različito kodiranje znakova ruskog jezika.

Top srodni članci