Codurile Aski ale literelor ruse. Codificare ASCII (cod standard american pentru schimbul de informații) - codificare de bază a textului pentru alfabetul latin
După cum știți, un computer stochează informații în formă binară, reprezentând-o ca o secvență de unu și zero. Pentru a traduce informațiile într-o formă convenabilă pentru percepția umană, fiecare secvență unică de numere este înlocuită cu simbolul său corespunzător atunci când este afișată.
Unul dintre sistemele de corelare a codurilor binare cu caracterele tipărite și de control este
La nivelul actual de dezvoltare a tehnologiei informatice, utilizatorului nu i se cere să cunoască codul fiecărui personaj specific. Cu toate acestea, o înțelegere generală a modului în care se realizează codificarea este extrem de utilă, iar pentru unele categorii de specialiști, chiar necesară.
Crearea ASCII
Codificarea a fost dezvoltată inițial în 1963 și apoi actualizată de două ori pe parcursul a 25 de ani.
În versiunea originală, tabelul de caractere ASCII includea 128 de caractere mai târziu a apărut o versiune extinsă, în care au fost salvate primele 128 de caractere, iar caracterele lipsă anterior au fost atribuite codurilor cu al optulea bit implicat.
Timp de mulți ani, această codificare a fost cea mai populară din lume. În 2006, Latin 1252 a ocupat poziția de lider, iar de la sfârșitul lui 2007 până în prezent, Unicode a deținut ferm poziția de lider.
Reprezentarea computerizată a ASCII
Fiecare caracter ASCII are propriul cod, format din 8 caractere reprezentând un zero sau unul. Numărul minim din această reprezentare este zero (opt zerouri în sistemul binar), care este codul primului element din tabel.
Două coduri din tabel au fost rezervate pentru comutarea între standardul US-ASCII și varianta sa națională.
După ce ASCII a început să includă nu 128, ci 256 de caractere, s-a răspândit o variantă de codificare, în care versiunea originală a tabelului a fost stocată în primele 128 de coduri cu al 8-lea bit zero. Caracterele scrise naționale au fost stocate în jumătatea superioară a tabelului (pozițiile 128-255).
Utilizatorul nu trebuie să cunoască codurile de caractere ASCII direct. De obicei, un dezvoltator de software trebuie să cunoască numărul elementului din tabel pentru a-și calcula codul folosind sistemul binar, dacă este necesar.
Limba rusă
După dezvoltarea codificărilor pentru limbile scandinave, chineză, coreeană, greacă etc. la începutul anilor '70, Uniunea Sovietică a început să creeze propria versiune. Curând, a fost dezvoltată o versiune a codificării pe 8 biți numită KOI8, păstrând primele 128 de coduri de caractere ASCII și alocând același număr de poziții pentru literele alfabetului național și caractere suplimentare.
Înainte de introducerea Unicode, KOI8 domina segmentul rus al internetului. Au existat opțiuni de codare atât pentru alfabetul rus, cât și pentru cel ucrainean.
Probleme ASCII
Deoarece numărul de elemente chiar și în tabelul extins nu a depășit 256, nu a existat nicio posibilitate de a găzdui mai multe scripturi diferite într-o singură codificare. În anii 90, problema „crocozyabr” a apărut pe Runet, când textele tastate cu caractere ASCII rusești erau afișate incorect.
Problema a fost că diferitele coduri ASCII nu se potriveau între ele. Să ne amintim că diferite caractere ar putea fi localizate în pozițiile 128-255, iar la schimbarea unei codări chirilice cu alta, toate literele textului au fost înlocuite cu altele având un număr identic într-o versiune diferită a codificării.
Starea curenta
Odată cu apariția Unicode, popularitatea ASCII a început să scadă brusc.
Motivul pentru aceasta constă în faptul că noua codificare a făcut posibilă găzduirea caracterelor din aproape toate limbile scrise. În acest caz, primele 128 de caractere ASCII corespund acelorași caractere în Unicode.
În 2000, ASCII era cea mai populară codare de pe Internet și era folosită pe 60% din paginile web indexate de Google. Până în 2012, ponderea acestor pagini a scăzut la 17%, iar Unicode (UTF-8) a luat locul celei mai populare codări.
Astfel, ASCII este o parte importantă a istoriei tehnologiei informației, dar utilizarea sa în viitor pare nepromițătoare.
Suprapunere de caractere
Caracterul BS (backspace) permite imprimantei să imprime un caracter peste altul. ASCII prevedea adăugarea de diacritice la litere în acest fel, de exemplu:
- a BS "→ á
- a BS ` → à
- a BS ^ → â
- o BS / → ø
- c BS , → ç
- n BS ~ → с
Notă: în fonturi vechi, apostroful „ a fost desenat înclinat spre stânga, iar tildele ~ a fost deplasată în sus, astfel încât să se potrivească doar cu rolul unui acut și a unei tilde deasupra.
Dacă același caracter este suprapus unui caracter, rezultatul este un efect de font aldine, iar dacă o subliniere este suprapusă unui caracter, rezultatul este text subliniat.
- a BS a → A
- aBS_→ A
Notă: Acesta este folosit, de exemplu, în sistemul de ajutor pentru om.
Variante naționale ASCII
Standardul ISO 646 (ECMA-6) prevede posibilitatea de a plasa simboluri naționale @ [ \ ] ^ ` { | } ~ . Pe lângă asta, la fața locului # poate fi postat £ , și pe loc $ - ¤ . Acest sistem este potrivit pentru limbile europene unde sunt necesare doar câteva caractere suplimentare. Versiunea ASCII fără caractere naționale se numește US-ASCII sau „Versiune de referință internațională”.
Ulterior, s-a dovedit a fi mai convenabil să folosești codificări pe 8 biți (pagini de cod), în care jumătatea inferioară a tabelului de coduri (0-127) este ocupată de caractere US-ASCII, iar jumătatea superioară (128-255) prin caractere suplimentare, inclusiv un set de caractere naționale. Astfel, jumătatea superioară a tabelului ASCII, înainte de adoptarea pe scară largă a Unicode, a fost folosită în mod activ pentru a reprezenta caractere localizate, litere ale limbii locale. Lipsa unui standard unificat pentru plasarea caracterelor chirilice în tabelul ASCII a cauzat multe probleme cu codificările (KOI-8, Windows-1251 și altele). Alte limbi cu scripturi non-latine au suferit, de asemenea, de a avea mai multe codificări diferite.
.0 | .1 | .2 | .3 | .4 | .5 | .6 | .7 | .8 | .9 | .A | .B | .C | .D | .E | .F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0. | NUL | SOM | EOA | EOM | EQT | W.R.U. | RU | CLOPOT | BKSP | HT | LF | VT | FF | CR | ASA DE | SI. |
1. | DC 0 | DC 1 | DC 2 | DC 3 | DC 4 | ERR | SINCRONIZARE | L.E.M. | S 0 | S 1 | S 2 | S 3 | S 4 | S 5 | S 6 | S 7 |
2. | ||||||||||||||||
3. | ||||||||||||||||
4. | GOL | ! | " | # | $ | % | & | " | ( | ) | * | + | , | - | . | / |
5. | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
6. | ||||||||||||||||
7. | ||||||||||||||||
8. | ||||||||||||||||
9. | ||||||||||||||||
A. | @ | A | B | C | D | E | F | G | H | eu | J | K | L | M | N | O |
B. | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ← | |
C. | ||||||||||||||||
D. | ||||||||||||||||
E. | A | b | c | d | e | f | g | h | i | j | k | l | m | n | o | |
F. | p | q | r | s | t | u | v | w | X | y | z | ESC | DEL |
Pe acele computere în care unitatea minimă de memorie adresabilă a fost un cuvânt de 36 de biți, au fost utilizate inițial caractere de 6 biți (1 cuvânt = 6 caractere). După trecerea la ASCII, astfel de computere au început să conțină fie 5 caractere pe șapte biți (1 bit a rămas în plus), fie 4 caractere pe nouă biți într-un cuvânt.
Codurile ASCII sunt de asemenea folosite pentru a determina ce tastă este apăsată în timpul programării. Pentru o tastatură QWERTY standard, tabelul de coduri arată astfel:
Pentru a utiliza corect ASCII, este necesar să vă extindeți cunoștințele în acest domeniu și despre capabilitățile de codare. Ce este?ASCII este un tabel de codare de caractere tipărite (vezi captura de ecran nr. 1) tastate pe tastatura unui computer pentru a transmite informații și unele coduri. Cu alte cuvinte, alfabetul și cifrele zecimale sunt codificate în simboluri corespunzătoare care reprezintă și poartă informațiile necesare. ASCII a fost dezvoltat în America, astfel încât setul de caractere standard include de obicei alfabetul englezesc cu numere, pentru un total de aproximativ 128 de caractere. Dar atunci apare o întrebare corectă: ce să faceți dacă este necesară codificarea alfabetului național? Alte versiuni ale tabelului ASCII au fost dezvoltate pentru a aborda probleme similare. De exemplu, pentru limbile cu o structură de limbă străină, literele alfabetului englez au fost fie eliminate, fie li s-au adăugat caractere suplimentare sub forma unui alfabet național. Astfel, codificarea ASCII poate conține litere rusești pentru uz național (vezi captura de ecran nr. 2). Unde este folosit sistemul de codare ASCII?Acest sistem de codare este necesar nu numai pentru tastarea informațiilor text pe tastatură. Este folosit și în grafică. De exemplu, în programul ASCII Art Maker, imaginile grafice ale diferitelor extensii constau dintr-o serie de caractere ASCII (vezi captura de ecran nr. 3). De regulă, astfel de programe pot fi împărțite în cele care îndeplinesc funcția de editor grafic, inversând o imagine în text și cele care convertesc o imagine în grafică ASCII. Cunoscuta emoticon (sau cum se mai numește și „ chip uman zâmbitor") este, de asemenea, un exemplu de caracter de codificare. Această metodă de codificare poate fi folosită și la scrierea sau crearea unui document HTML. De exemplu, introduceți un set specific și necesar de caractere, iar la vizualizarea paginii în sine, simbolul corespunzător acestui cod va fi afișat pe ecran. Printre altele, acest tip de codificare este necesar la crearea unui site web multilingv, deoarece caracterele care nu sunt incluse într-unul sau altul tabel național vor trebui înlocuite cu coduri ASCII. Dacă cititorul este conectat direct cu tehnologiile informației și comunicațiilor (TIC), atunci îi va fi util să se familiarizeze cu sisteme precum:
Proprietăți tabelului ASCIICa orice program sistematic, ASCII are propriile sale proprietăți caracteristice. Deci, de exemplu, sistemul numeric zecimal (cifre de la 0 la 9) este convertit în sistemul numeric binar (adică, fiecare cifră zecimală este convertită în binar 288 = 1001000, respectiv). Literele situate în coloanele superioare și inferioare diferă unele de altele doar printr-un pic, ceea ce reduce semnificativ nivelul de complexitate al verificării și editării cazului. Cu toate aceste proprietăți, codificarea ASCII funcționează ca pe opt biți, deși inițial a fost intenționat să fie pe șapte biți. Utilizarea ASCII în programele Microsoft Office: Dacă este necesar, această opțiune de codificare a informațiilor poate fi utilizată în Microsoft Notepad și Microsoft Office Word. În cadrul acestor aplicații, documentul poate fi salvat în format ASCII, dar în acest caz, nu veți putea folosi unele funcții la introducerea textului. În special, fonturile aldine și aldine nu vor fi disponibile deoarece codificarea păstrează doar sensul informațiilor tastate, și nu aspectul și forma generală. Puteți adăuga astfel de coduri la un document utilizând următoarele aplicații software:
Merită să luați în considerare faptul că atunci când introduceți cod ASCII în aceste aplicații, trebuie să țineți apăsată tasta ALT. Desigur, toate codurile necesare necesită un studiu mai lung și mai detaliat, dar acest lucru depășește scopul articolului nostru de astăzi. Sper că l-ai găsit cu adevărat util. Ne mai vedem! Rău Bun Potrivit Uniunii Internaționale de Telecomunicații, în 2016, trei miliarde și jumătate de oameni au folosit internetul cu o oarecare regularitate. Cei mai mulți dintre ei nici nu se gândesc la faptul că orice mesaje pe care le trimit prin intermediul computerului sau gadgeturilor mobile, precum și textele care sunt afișate pe tot felul de monitoare, sunt de fapt combinații de 0 și 1. Această reprezentare a informațiilor se numește codificare . Acesta asigură și facilitează foarte mult stocarea, prelucrarea și transmiterea acestuia. În 1963, a fost dezvoltată codarea ASCII americană, care face obiectul acestui articol. Prezentarea informațiilor pe un computerDin punctul de vedere al oricărui computer electronic, textul este un set de caractere individuale. Acestea includ nu numai litere, inclusiv majuscule, ci și semne de punctuație și numere. În plus, sunt folosite caractere speciale „=”, „&”, „(” și spații. Setul de caractere care alcătuiesc textul se numește alfabet, iar numărul lor se numește cardinalitate (notat cu N). Pentru a-l determina, se folosește expresia N = 2^b, unde b este numărul de biți sau greutatea informației unui anumit simbol. S-a dovedit că un alfabet cu o capacitate de 256 de caractere poate reprezenta toate caracterele necesare. Deoarece 256 reprezintă a 8-a putere a doi, greutatea fiecărui caracter este de 8 biți. O unitate de măsură de 8 biți se numește 1 octet, deci se obișnuiește să spunem că orice caracter din text stocat pe un computer ocupă un octet de memorie. Cum se face codarea?Orice texte sunt introduse în memoria unui computer personal folosind tastele de la tastatură pe care sunt scrise numere, litere, semne de punctuație și alte simboluri. Ele sunt transferate în RAM în cod binar, adică fiecare caracter este asociat cu un cod zecimal cunoscut oamenilor, de la 0 la 255, care corespunde unui cod binar - de la 00000000 la 11111111. Codificarea caracterelor octet-octet permite procesorului care efectuează procesarea textului să acceseze fiecare caracter individual. În același timp, 256 de caractere sunt destul de suficiente pentru a reprezenta orice informație simbolică. Codificarea caracterelor ASCIIAceastă abreviere în engleză înseamnă cod pentru schimbul de informații. Chiar și în zorii computerizării, a devenit evident că era posibil să se vină cu o mare varietate de modalități de codificare a informațiilor. Cu toate acestea, pentru a transfera informații de la un computer la altul, a fost necesar să se dezvolte un standard unificat. Deci, în 1963, în SUA a apărut tabelul de codificare ASCII. În el, orice simbol al alfabetului computerului este asociat cu numărul său de serie în reprezentare binară. ASCII a fost folosit inițial doar în Statele Unite și mai târziu a devenit un standard internațional pentru computere. Codurile ASCII sunt împărțite în 2 părți. Doar prima jumătate a acestui tabel este considerată standard internațional. Include caractere cu numere de serie de la 0 (codificat ca 00000000) la 127 (codat 01111111).
În tabel, codificările sunt scrise cu majuscule și se succed în ordine alfabetică, iar numerele sunt în ordine crescătoare. Acest principiu rămâne același pentru alfabetul rus. Personaje de controlTabelul de codificare ASCII a fost creat inițial pentru a primi și transmite informații prin intermediul unui dispozitiv care nu a fost folosit de mult timp, cum ar fi un teletype. În acest sens, în setul de caractere au fost incluse caractere neprintabile, folosite ca comenzi pentru controlul acestui dispozitiv. Comenzi similare au fost folosite în astfel de metode de mesagerie pre-computer precum codul Morse etc. Cel mai comun caracter de teletip este NUL (00). Este folosit și astăzi în majoritatea limbajelor de programare pentru a indica sfârșitul unei linii. Unde este folosită codarea ASCII?Codul standard american este necesar pentru mai mult decât pentru introducerea textului. Este folosit și în grafică. În special, în ASCII Art Maker, imaginile diferitelor extensii reprezintă un spectru de caractere ASCII. Există două tipuri de astfel de produse: cele care îndeplinesc funcția de editor grafic prin conversia imaginilor în text și cele care convertesc „desenele” în grafică ASCII. De exemplu, celebra emoticon este un exemplu excelent de simbol de codificare. ASCII poate fi folosit și la crearea unui document HTML. În acest caz, puteți introduce un anumit set de caractere, iar la vizualizarea paginii va apărea pe ecran un simbol care corespunde acestui cod. ASCII este, de asemenea, necesar pentru crearea de site-uri web multilingve, deoarece caracterele care nu sunt incluse într-un tabel național specific sunt înlocuite cu coduri ASCII. Unele caracteristiciASCII a fost folosit inițial pentru a codifica informațiile text folosind 7 biți (unul a fost lăsat necompletat), dar astăzi funcționează ca 8 biți. Literele situate în coloanele situate deasupra și dedesubt diferă între ele doar într-un singur bit. Acest lucru reduce semnificativ complexitatea auditului. Utilizarea ASCII în Microsoft OfficeDacă este necesar, acest tip de codificare a informațiilor text poate fi utilizat în editorii de text Microsoft, cum ar fi Notepad și Office Word. Cu toate acestea, este posibil să nu puteți utiliza unele funcții când introduceți text în acest caz. De exemplu, nu veți putea folosi text îngroșat deoarece codificarea ASCII păstrează doar sensul informațiilor, ignorând aspectul și forma generală a acesteia. StandardizareOrganizația ISO a adoptat standardele ISO 8859. Acest grup definește codificări pe opt biți pentru diferite grupuri de limbi. Mai exact, ISO 8859-1 este un tabel ASCII extins pentru Statele Unite și țările din Europa de Vest. Și ISO 8859-5 este un tabel folosit pentru alfabetul chirilic, inclusiv limba rusă. Din mai multe motive istorice, standardul ISO 8859-5 a fost folosit pentru o perioadă foarte scurtă de timp. Pentru limba rusă, în acest moment sunt utilizate următoarele codificări:
Principalul avantaj al primului standard CP866 a fost păstrarea caracterelor pseudografice în aceleași poziții ca și în ASCII extins. Acest lucru a făcut posibilă rularea programelor text fabricate în străinătate, cum ar fi celebrul Norton Commander, fără modificări. În prezent, CP866 este utilizat pentru programele dezvoltate pentru Windows care rulează în modul text pe ecran complet sau în ferestre text, inclusiv FAR Manager. Textele de computer scrise în codificare CP866 sunt destul de rare în zilele noastre, dar este cea care este folosită pentru numele fișierelor rusești în Windows. „Unicode”În prezent, această codificare este cea mai utilizată. Codurile Unicode sunt împărțite în zone. Primul (U+0000 la U+007F) include caractere ASCII cu coduri. Urmează zonele de caractere ale diferitelor scripturi naționale, precum și semnele de punctuație și simbolurile tehnice. În plus, unele coduri Unicode sunt rezervate în cazul în care este necesar să se includă noi caractere în viitor. Acum știți că în ASCII, fiecare caracter este reprezentat ca o combinație de 8 zerouri și unu. Pentru nespecialiști, aceste informații pot părea inutile și neinteresante, dar nu vrei să știi ce se întâmplă „în creierul” computerului tău?!
Tabel de coduri de caractere ASCII Windows. Trebuie remarcat faptul că caracterele de control ale tabelului ASCII au fost utilizate inițial pentru a asigura schimbul de date prin telemașină, introducerea datelor de pe bandă perforată și pentru controlul simplu al dispozitivelor externe. |
Cod | Descriere |
---|---|
NUL, 00 | Nul, gol |
SOH, 01 | Începutul titlului |
STX, 02 | Începutul textului, începutul textului. |
ETX, 03 | Sfârșitul textului, sfârșitul textului |
EOT, 04 | Sfârșitul transmisiei |
ENQ, 05 | Întreba. Vă rugăm să confirmați |
ACK, 06 | Confirmare. confirm |
BEL, 07 | Bell, sună |
BS, 08 | Backspace, întoarceți un caracter înapoi |
TAB, 09 | Filă, filă orizontală |
LF, 0A | Line Feed, line feed. În prezent, în majoritatea limbajelor de programare este notat ca \n |
VT, 0B | Filă verticală, tabulare verticală. |
FF, 0C | Feed de formulare, feed de pagini, pagină nouă |
CR, 0D | Întoarcere cu cărucior, întoarcere cu cărucior. În prezent, în majoritatea limbajelor de programare este notat cu \r |
deci,0E | Shift Out, schimbați culoarea benzii de cerneală din dispozitivul de imprimare |
SI,0F | Schimbați, întoarceți înapoi culoarea benzii de cerneală din dispozitivul de imprimare |
DLE, 10 | Data Link Escape, comutarea canalului la transmisia de date |
DC1, 11 DC2, 12 DC3, 13 DC4, 14 | Controlul dispozitivului, simboluri de control al dispozitivului |
NAK, 15 | Confirmare negativă, nu confirm. |
SYN, 16 | Sincronizare. Simbol de sincronizare |
ETB, 17 | Sfârșitul blocului de text, sfârșitul blocului de text |
CAN, 18 | Anulare, anulare a unei transmise anterior |
EM, 19 | Sfârșitul Mediului |
SUB, 1A | Înlocuitor, înlocuitor. Plasat în locul unui simbol al cărui sens a fost pierdut sau corupt în timpul transmiterii |
ESC, 1B | Secvență de control de evacuare |
FS, 1C | Separator de fișiere, separator de fișiere |
GS, 1D | Separator de grup |
RS, 1E | Separator de înregistrări, separator de înregistrări |
SUA, 1F | Separator de unități |
DEL, 7F | Ștergeți, ștergeți ultimul caracter. |