Cum se configurează smartphone-uri și PC-uri. Portal informativ

Tabel Ascii extins. Codificarea informațiilor text

Excel pentru Office 365 Word pentru Office 365 Outlook pentru Office 365 PowerPoint pentru Office 365 Publisher pentru Office 365 Excel 2019 Word 2019 Outlook 2019 PowerPoint 2019 OneNote 2016 Publisher 2019 Visio Professional 2019 Visio Standard 2019 Excel 2016 Word 2016 Outlook 2016 PowerPoint 2016 OneNote 2013 Publisher 2016 Visio 2013 Visio Professional 2016 Visio Standard 2016 Excel 2013 Word 2013 Outlook 2013 PowerPoint 2013 Publisher 2013 Excel 2010 Word 2010 Outlook 2010 PowerPoint 2010 OneNote 2010 Publisher 2010 Visio 2010 Excel 2007 Word 2007 Outlook 2007 Outlook 2007070200702010 PowerPoint One 2007070200702010 Visio Standard 2007 Visio Standard 2010 Mai puțin

În acest articol

Introduceți un caracter ASCII sau Unicode într-un document

Dacă trebuie să introduceți doar câteva caractere speciale sau simboluri, puteți utiliza oricare dintre comenzile rapide de la tastatură. Pentru o listă de caractere ASCII, consultați tabelele următoare sau articolul Introducerea alfabetelor naționale folosind comenzile rapide de la tastatură.

Note:

Introduceți caractere ASCII

Pentru a introduce un caracter ASCII, țineți apăsată tasta ALT în timp ce introduceți codul caracterului. De exemplu, pentru a introduce un simbol grad (º), apăsați și mențineți apăsată tasta Alt, apoi introduceți 0176 pe tastatura numerică.

Utilizați tastatura numerică pentru a introduce numereîn loc de numere de pe tastatura principală. Dacă trebuie să introduceți numere pe tastatura numerică, asigurați-vă că indicatorul BLOCARE NUMĂR este aprins.

Inserarea caracterelor Unicode

Pentru a introduce un caracter Unicode, introduceți codul caracterului, apoi apăsați ALT și X în secvență. De exemplu, pentru a introduce un semn dolar ($), introduceți 0024 și apăsați ALT și X în secvență. Pentru toate codurile de caractere Unicode, consultați.

Important: Unele programe Microsoft Office, cum ar fi PowerPoint și InfoPath, nu acceptă conversia codurilor Unicode în caractere. Dacă trebuie să inserați un caracter Unicode într-unul dintre aceste programe, utilizați.

Note:

    Dacă vedeți caracterul Unicode greșit după ce apăsați ALT + X, selectați codul corect, apoi apăsați din nou ALT + X.

    În plus, „U +” trebuie introdus înaintea codului. De exemplu, dacă introduceți „1U + B5” și apăsați Alt + X, este afișat textul „1µ”, iar dacă introduceți „1B5” și apăsați Alt + X, este afișat caracterul „Ƶ”.

Folosind tabelul de simboluri

Symbol Map este un program încorporat în Microsoft Windows care vă permite să vizualizați simbolurile disponibile pentru un font selectat.

Folosind un tabel de simboluri, puteți copia simboluri individuale sau un grup de simboluri în clipboard și le puteți lipi în orice program care poate afișa acele simboluri. Deschiderea tabelului de simboluri

    Pe Windows 10 Introduceți cuvântul „simbol” în caseta de căutare din bara de activități și selectați un tabel cu simboluri din rezultatele căutării.

    Pe Windows 8 Introduceți cuvântul „caracter” pe ecranul de start și selectați un tabel de caractere din rezultatele căutării.

    Pe Windows 7 apasa butonul start, selectați secvențial Toate programele, Standard, Serviciuși faceți clic tabel de simboluri.

Caracterele sunt grupate după font. Faceți clic pe lista de fonturi pentru a selecta setul de caractere corespunzător. Pentru a selecta un simbol, faceți clic pe el, apoi faceți clic Selectați... Pentru a insera un simbol, faceți clic dreapta pe locația dorită din document și selectați Introduce.

Coduri de simbol utilizate frecvent

Pentru o listă completă de caractere, consultați computerul dvs., tabelul cu coduri de caractere ASCII sau tabelele cu seturi de caractere Unicode.

Glifă

Glifă

Unități monetare

Simboluri legale

Simboluri matematice

Fracții

Simboluri de punctuație și dialect

Formează simboluri

Codurile diacritice utilizate în mod obișnuit

Pentru o listă completă de glife și coduri aferente, consultați.

Glifă

Glifă

Caractere de control ASCII neimprimabile

Caracterele folosite pentru a controla unele dispozitive periferice, cum ar fi imprimantele, sunt numerotate de la 0 la 31 în tabelul ASCII. De exemplu, un caracter de alimentare/nouă pagină este numărul 12. Acest caracter îi spune imprimantei să meargă în partea de sus a paginii următoare.

Tabel de caractere de control ASCII neimprimabil

Zecimal

Semn

Zecimal

Semn

Eliberarea canalului de date

Începutul titlului

Primul cod de control al dispozitivului

Începutul textului

Al doilea cod de control al dispozitivului

Sfârșitul textului

Al treilea cod de control al dispozitivului

Sfârșitul transmisiei

Al patrulea cod de control al dispozitivului

în cinci colţuri

Confirmare negativă

Confirmare

Mod transmisie sincronă

Semnal sonor

Sfârșitul blocului de date transmise

Filă orizontală

Sfârșitul media

Avans de linie / linie nouă

Caracter de înlocuire

Filă verticală

depaseste

Traducere pagină / pagină nouă

Al doisprezecelea

Separator de fișiere

Retur transport

Separator de grup

Schimbați fără a salva cifrele

Separator de înregistrări

Deplasare cu conservarea cifrelor

cincisprezece

Separator de date

Se numește setul de caractere cu care este scris textul alfabet.

Numărul de caractere din alfabet este al lui putere.

Formula pentru determinarea cantității de informații: N = 2 b,

unde N este cardinalitatea alfabetului (numărul de caractere),

b - numărul de biți (greutatea informațională a caracterului).

Alfabetul cu o capacitate de 256 de caractere poate găzdui aproape toate caracterele necesare. Acest alfabet se numește suficient.

pentru că 256 = 2 8, atunci greutatea unui caracter este de 8 biți.

Unitatea de 8 biți a fost numită 1 octet:

1 octet = 8 biți.

Codul binar al fiecărui caracter din textul computerului ocupă 1 octet de memorie.

Cum sunt reprezentate informațiile text în memoria computerului?

Comoditatea codificării octet a caracterelor este evidentă, deoarece un octet este cea mai mică parte adresabilă a memoriei și, prin urmare, procesorul poate accesa fiecare caracter separat, efectuând procesarea textului. Pe de altă parte, 256 de caractere este un număr destul de suficient pentru a reprezenta o mare varietate de informații despre caractere.

Acum se pune întrebarea, ce fel de cod binar pe opt biți să asociem cu fiecare caracter.

Este clar că aceasta este o chestiune condiționată, puteți veni cu multe metode de codare.

Toate caracterele alfabetului computerului sunt numerotate de la 0 la 255. Fiecare număr corespunde unui cod binar de opt cifre de la 00000000 la 11111111. Acest cod este pur și simplu numărul ordinal al caracterului din sistemul binar.

Tabelul în care toate caracterele alfabetului computerului sunt atribuite numere de serie se numește tabel de codificare.

Pentru diferite tipuri de computere sunt folosite tabele de codare diferite.

Standardul internațional pentru PC a devenit tabelul ASCII(citiți asci) (Codul standard american pentru schimbul de informații).

Tabelul ASCII este împărțit în două părți.

Standardul internațional este doar prima jumătate a tabelului, adică. simboluri cu numere din 0 (00000000), până la 127 (01111111).

Structura tabelului de codificare ASCII

Număr de serie

Codul

Simbol

0 - 31

00000000 - 00011111

Simbolurile cu numere de la 0 la 31 sunt de obicei numite caractere de control.
Funcția lor este de a controla procesul de afișare a textului pe ecran sau de imprimare, de a da un semnal sonor, de marcare a textului etc.

32 - 127

00100000 - 01111111

Parte standard a tabelului (engleză). Aceasta include litere mici și mari ale alfabetului latin, cifre zecimale, semne de punctuație, tot felul de paranteze, simboluri comerciale și alte simboluri.
Caracterul 32 este un spațiu, adică. poziție goală în text.
Toate celelalte se reflectă în anumite semne.

128 - 255

10000000 - 11111111

Parte alternativă a tabelului (rusă).
A doua jumătate a tabelului de coduri ASCII, numită pagina de coduri (128 de coduri, începând cu 10000000 și terminând cu 11111111), poate avea variante diferite, fiecare variantă având propriul număr.
Pagina de coduri este folosită în primul rând pentru a găzdui alfabetele naționale, altele decât latină. În codificările naționale rusești, această parte a tabelului conține simboluri ale alfabetului rus.

Prima jumătate a tabelului ASCII


Vă atrag atenția că în tabelul de codificare literele (majuscule și mici) sunt aranjate în ordine alfabetică, iar numerele sunt ordonate în ordine crescătoare a valorilor. Această respectare a ordinii lexicografice în aranjarea caracterelor se numește principiul codificării secvențiale a alfabetului.

Pentru literele alfabetului rus, se respectă și principiul codificării secvențiale.

A doua jumătate a tabelului ASCII


Din păcate, în prezent există cinci codificări chirilice diferite (KOI8-R, Windows. MS-DOS, Macintosh și ISO). Din această cauză, apar adesea probleme cu transferul de text rusesc de la un computer la altul, de la un sistem software la altul.

Cronologic, unul dintre primele standarde pentru codificarea literelor rusești pe computere a fost KOI8 ("Cod de schimb de informații, 8 biți"). Această codificare a fost folosită încă din anii 70 pe computerele din seria de calculatoare ES, iar de la mijlocul anilor 80 a început să fie folosită în primele versiuni rusificate ale sistemului de operare UNIX.

De la începutul anilor 90, vremea dominației sistemului de operare MS DOS, codificarea CP866 rămâne („CP” înseamnă „Code Page”).

Computerele Apple care rulează Mac OS folosesc propria lor codificare Mac.

În plus, Organizația Internațională pentru Standardizare (International Standards Organization, ISO) a aprobat o altă codificare numită ISO 8859-5 ca standard pentru limba rusă.

În prezent, cea mai comună codificare este Microsoft Windows, prescurtat ca CP1251.

De la sfârșitul anilor '90, problema standardizării codării caracterelor a fost rezolvată prin introducerea unui nou standard internațional numit Unicode... Aceasta este o codificare pe 16 biți, adică alocă 2 octeți de memorie pentru fiecare caracter. Desigur, acest lucru dublează cantitatea de memorie utilizată. Dar, pe de altă parte, un astfel de tabel de coduri permite includerea a până la 65536 de caractere. Specificația completă a standardului Unicode include toate alfabetele existente, dispărute și create artificial din lume, precum și multe simboluri matematice, muzicale, chimice și alte simboluri.

Să încercăm să folosim un tabel ASCII pentru a ne imagina cum vor arăta cuvintele în memoria computerului.

Reprezentarea internă a cuvintelor în memoria computerului

Uneori se întâmplă ca un text constând din litere ale alfabetului rus, primit de la un alt computer, să nu poată fi citit - un fel de „farful” este vizibil pe ecranul monitorului. Acest lucru se datorează faptului că computerele folosesc codificare diferită a caracterelor limbii ruse.

Să ne amintim câteva fapte pe care le știm:

Setul de simboluri cu care este scris textul se numește alfabet.

Numărul de caractere din alfabet este cardinalitatea acestuia.

Formula pentru determinarea cantității de informații: N = 2 b,

unde N este cardinalitatea alfabetului (numărul de caractere),

b - numărul de biți (greutatea informațională a caracterului).

Alfabetul cu o capacitate de 256 de caractere poate găzdui aproape toate caracterele necesare. Un astfel de alfabet se numește suficient.

pentru că 256 = 2 8 , atunci greutatea unui caracter este de 8 biți.

Unitatea de 8 biți a fost numită 1 octet:

1 octet = 8 biți.

Codul binar al fiecărui caracter din textul computerului ocupă 1 octet de memorie.

Cum sunt reprezentate informațiile text în memoria computerului?

Codificarea înseamnă că fiecărui caracter i se atribuie un cod zecimal unic de la 0 la 255 sau codul binar corespunzător de la 00000000 la 11111111. Astfel, o persoană distinge caracterele după stilul lor, iar un computer - după codul lor.

Comoditatea codificării octet a caracterelor este evidentă, deoarece un octet este cea mai mică parte adresabilă a memoriei și, prin urmare, procesorul poate accesa fiecare caracter separat, efectuând procesarea textului. Pe de altă parte, 256 de caractere este un număr destul de suficient pentru a reprezenta o mare varietate de informații despre caractere.

Acum se pune întrebarea, ce fel de cod binar pe opt biți să asociem cu fiecare caracter.

Este clar că aceasta este o chestiune condiționată, puteți veni cu multe metode de codare.

Tabelul ASCII a devenit standardul internațional pentru PC (citiți asci) (Codul standard american pentru schimbul de informații).

Standardul internațional este doar prima jumătate a tabelului, adică. caractere cu numere de la 0 (00000000) la 127 (01111111).

Număr de serie

Simbol

00000000 - 00011111


Funcția lor este de a controla procesul de afișare a textului pe ecran sau de imprimare, de a da un semnal sonor, de marcare a textului etc.

32 - 127

00100000 - 01111111


128 - 255

10000000 - 11111111


A doua jumătate a tabelului de coduri ASCII, numită pagina de coduri (128 de coduri, începând cu 10000000 și terminând cu 11111111), poate avea variante diferite, fiecare variantă având propriul număr.


Vă atrag atenția că în tabelul de codificare literele (majuscule și mici) sunt aranjate în ordine alfabetică, iar numerele sunt ordonate în ordine crescătoare a valorilor. Această respectare a ordinii lexicografice în aranjarea caracterelor se numește principiul codificării secvențiale a alfabetului.


În prezent, cea mai comună codificare este Microsoft Windows, prescurtat ca CP1251.

De la sfârșitul anilor 90, problema standardizării codării caracterelor a fost rezolvată prin introducerea unui nou standard internațional numit Unicode. ... Aceasta este o codificare pe 16 biți, adică alocă 2 octeți de memorie pentru fiecare caracter. Desigur, acest lucru dublează cantitatea de memorie utilizată. Dar, pe de altă parte, un astfel de tabel de coduri permite includerea a până la 65536 de caractere. Specificația completă a standardului Unicode include toate alfabetele existente, dispărute și create artificial din lume, precum și multe simboluri matematice, muzicale, chimice și alte simboluri.

Să încercăm să folosim un tabel ASCII pentru a ne imagina cum vor arăta cuvintele în memoria computerului.

Cuvintele

Memorie

01100110

01101001

01101100

01100101

01100100

01101001

01110011

01101011

Când informațiile text sunt introduse într-un computer, caracterele (litere, cifre, semne) sunt codificate folosind diferite sisteme de codare, care constau dintr-un set de tabele de coduri situate pe paginile corespunzătoare ale standardelor de codificare a informațiilor text. În astfel de tabele, fiecărui caracter i se atribuie un cod numeric specific în notație hexazecimală sau zecimală, adică tabelele de coduri reflectă corespondența dintre imaginile caracterelor și codurile numerice și sunt concepute pentru a codifica și decodifica informațiile text. La introducerea informațiilor text folosind tastatura computerului, fiecare caracter de intrare este codificat, adică este convertit într-un cod numeric; atunci când informațiile text sunt transmise la un dispozitiv de ieșire al computerului (afișaj, imprimantă sau plotter), imaginea acestuia este construită folosind codul numeric al caracterului. Atribuirea unui anumit cod numeric unui simbol este rezultatul unui acord între organizațiile respective din diferite țări. În prezent, nu există un singur tabel universal de coduri care să satisfacă literele alfabetelor naționale ale diferitelor țări.

Tabelele de coduri moderne includ părți internaționale și naționale, adică conțin litere ale alfabetului latin și național, numere, semne de operații aritmetice și punctuație, caractere matematice și de control, simboluri pseudo-grafice. Parte internațională a tabelului de coduri bazată pe standard ASCII (Codul standard american pentru schimbul de informații), codifică prima jumătate a caracterelor din tabelul de coduri cu coduri numerice de la 0 la 7 F 16, sau în notație zecimală de la 0 la 127. Codurile de la 0 la 20 16 (0? 32 10) sunt alocate tastelor funcționale (F1, F2, F3 etc.) ale tastaturii computerului. În fig. 3.1 arată partea internațională a tabelelor de coduri bazate pe standard ASCII. Celulele din tabel sunt numerotate în notație zecimală și, respectiv, hexazecimală.

Fig 3.1. Partea internațională a tabelului de coduri (standard ASCII) cu numerele de celule prezentate în sistem numeric zecimal (a) și hexazecimal (b).


Partea națională a tabelelor de coduri conține codurile alfabetelor naționale, care se mai numește și tabelul setului de caractere (set de caractere).

În prezent, pentru a sprijini literele alfabetului rus (chirilic), există mai multe tabele de coduri (codificări) care sunt utilizate de diverse sisteme de operare, ceea ce reprezintă un dezavantaj semnificativ și, în unele cazuri, duce la probleme asociate cu operațiunile de decodare a cifrelor numerice. valorile caracterelor. Masa 3.1 listează numele paginilor de coduri (standarde) pe care se află tabelele de coduri (codificări) ale alfabetului chirilic.

Tabelul 3.1

Unul dintre primele standarde pentru codificarea alfabetului chirilic pe computere a fost standardul KOI8-R. Partea națională a tabelului de coduri pentru acest standard este prezentată în Fig. 3.2.

Orez. 3.2. Partea națională a tabelului de coduri al standardului KOI8-R


În prezent, este folosit și tabelul de coduri situat pe pagina CP866 a standardului pentru codificarea informațiilor text utilizate în sistemul de operare. MS DOS sau sesiune MS DOS pentru a codifica alfabetul chirilic (Fig. 3.3, A).

Orez. 3.3. Partea națională a tabelului de coduri, situată pe pagina CP866 (a) și pe pagina CP1251 (b) a standardului de codificare a informațiilor textuale


În prezent, cel mai utilizat tabel de coduri pentru codificarea alfabetului chirilic se află pe pagina CP1251 a standardului corespunzător, care este utilizat în sistemele de operare ale familiei Windows firmelor Microsoft(fig. 3.2, b).În toate tabelele de coduri prezentate, cu excepția tabelului standard Unicode, 8 cifre binare (8 biți) sunt alocate pentru a codifica un caracter.

La sfârșitul secolului trecut, a apărut un nou standard internațional Unicode,în care un caracter este reprezentat de un cod binar de doi octeți. Aplicarea acestui standard este o continuare a dezvoltării unui standard internațional universal care permite rezolvarea problemei de compatibilitate a codificărilor naționale de caractere. Cu acest standard, 2 16 = 65536 de caractere diferite pot fi codificate. În fig. 3.4 este tabelul de coduri 0400 (alfabet rus) al standardului Unicode.

Orez. 3.4. Tabelul de coduri 0400 al standardului Unicode


Să clarificăm ceea ce s-a spus cu privire la codificarea informațiilor textuale cu un exemplu.

Exemplul 3.1

Codificați cuvântul „Computer” ca o secvență de numere zecimale și hexazecimale utilizând codificarea CP1251. Ce caractere vor fi afișate în tabelele de coduri CP866 și KOI8-R când se utilizează codul primit.

Secvențe de coduri hexazecimale și binare ale cuvântului „Computer” bazate pe tabelul de codificare CP1251 (vezi Fig. 3.3, b) va arata asa:

Această secvență de cod în codificările CP866 și KOI8-R va avea ca rezultat afișarea următoarelor caractere:

Pentru a converti documentele text în limba rusă de la un standard de codare a textului la altul, se folosesc programe speciale - convertoare. Convertoarele sunt de obicei integrate în alte programe. Un exemplu ar fi un program de browser - Internet Explorer (IE), care are un convertor încorporat. Programul browser este un program special pentru vizualizarea conținutului pagini webîn rețeaua globală de calculatoare Internet. Să folosim acest program pentru a confirma rezultatul afișării simbolurilor obținute în exemplul 3.1. Pentru a face acest lucru, vom efectua următoarele acțiuni.

1. Lansați programul Notepad (NotePad). Programul Notepad în sistemul de operare Windows XP este lansat cu comanda: [Button start- Programe - Standard - Notepad]. În fereastra Notepad deschisă, tastați cuvântul „Computer” folosind sintaxa limbajului de marcare al documentelor hipertext - HTML (Hyper Text Markup Language). Acest limbaj este folosit pentru a crea documente pe Internet. Textul ar trebui să arate astfel:

Compywater

, Unde

și

etichete (construcții speciale) ale limbajului HTML pentru a marca anteturile. În fig. 3.5 arată rezultatul acestor acțiuni.

Orez. 3.5. Afișarea textului într-o fereastră Notepad


Să salvăm acest text executând comanda: [File - Save As ...] în folderul corespunzător al computerului, la salvarea textului, vom atribui un nume fișierului - Aproximativ, cu extensia fișierului. html.

2. Rulați programul Internet Explorer, prin executarea comenzii: [Button start- Programe - Internet Explorer]. Când programul pornește, fereastra prezentată în Fig. 3.6

Orez. 3.6. Fereastra de acces offline


Selectați și activați butonul Deconectatîn acest caz, computerul nu va fi conectat la internetul global. Va apărea fereastra principală a programului Microsoft Internet Explorer, prezentată în fig. 3.7.

Orez. 3.7. Fereastra principală a Microsoft Internet Explorer


Rulați următoarea comandă: [File - Open], va apărea o fereastră (Fig. 3.8), în care trebuie să specificați numele fișierului și să faceți clic pe O.K sau apăsați butonul Prezentare generală…și găsiți fișierul App. html.

Orez. 3.8. Deschide fereastra


Fereastra principală a Internet Explorer va lua forma prezentată în Fig. 3.9. Fereastra afișează cuvântul „Computer”. În plus, folosind meniul de sus al programului Internet Explorer, executați următoarea comandă: [Vizualizare - Codificare - Chirilic (DOS)]. După executarea acestei comenzi în fereastra programului Internet Ехplorer simbolurile prezentate în fig. 3.10. La executarea comenzii: [Vizualizare - Codificare - Chirilic (KOI8-R)]în fereastra programului Internet Explorer simbolurile prezentate în fig. 3.11.

Orez. 3.9. Caractere afișate la codificarea CP1251


Orez. 3.10. Caractere afișate atunci când codarea CP866 este activată pentru secvența de cod reprezentată în codificarea CP1251


Orez. 3.11. Caractere afișate atunci când codarea KOI8-R este activată pentru secvența de cod reprezentată în codificarea CP1251


Astfel, obținut cu programul Internet Explorer secvențele de caractere coincid cu secvențele de caractere obținute folosind tabelele de coduri CP866 și KOI8-R din exemplul 3.1.

3.2. Codificarea informațiilor grafice

Informațiile grafice prezentate sub formă de desene, fotografii, diapozitive, imagini în mișcare (animație, video), diagrame, desene, pot fi create și editate cu ajutorul unui computer, în timp ce sunt codificate corespunzător. În prezent, există un număr destul de mare de aplicații pentru procesarea informațiilor grafice, dar toate implementează trei tipuri de grafică pe computer: raster, vectorială și fractală.

Dacă aruncați o privire mai atentă la imaginea grafică de pe ecranul monitorului computerului, puteți vedea un număr mare de puncte multicolore (pixeli - din engleză. pixel, educat din element de imagine - element imagine), care, atunci când sunt puse împreună, formează o imagine grafică dată. Din aceasta putem concluziona: o imagine grafică într-un computer este codificată într-un anumit mod și trebuie prezentată sub forma unui fișier grafic. Fișierul este unitatea structurală principală a organizării și stocării datelor într-un computer și în acest caz ar trebui să conțină informații despre cum să reprezinte acest set de puncte pe ecranul monitorului.

Fișierele create pe baza graficelor vectoriale conțin informații sub formă de relații matematice (funcții matematice care descriu relații liniare) și date conexe despre cum se construiește o imagine a unui obiect folosind segmente de linie (vectori) atunci când este afișat pe un monitor de computer.

Fișierele create pe baza graficelor raster presupun stocarea datelor despre fiecare punct individual din imagine. Pentru a afișa grafice raster, nu sunt necesare calcule matematice complexe, este suficient să obțineți date despre fiecare punct al imaginii (coordonatele și culoarea acestuia) și să le afișați pe ecranul computerului.

În procesul de codificare a unei imagini, se efectuează eșantionarea sa spațială, adică imaginea este împărțită în puncte separate și fiecărui punct i se atribuie un cod de culoare (galben, roșu, albastru etc.). Pentru a codifica fiecare punct al unei imagini grafice color, se aplică principiul descompunerii unei culori arbitrare în componentele sale principale, care sunt trei culori primare: roșu (cuvântul englezesc Roșu, notează prin literă LA), verde (Verde, notează prin literă G), albastru (Albastru, notează prin fag V). Orice culoare punctuală percepută de ochiul uman poate fi obținută prin adăugarea (amestecarea) aditivă (proporțională) a celor trei culori primare - roșu, verde și albastru. Acest sistem de codare se numește sistem de culoare. RGB. Fișiere grafice care utilizează sistemul de culoare RGB, reprezentați fiecare punct al imaginii ca un triplet de culoare - trei valori numerice R, Gși V, corespunzătoare intensităților culorilor roșu, verde și albastru. Procesul de codificare a unei imagini grafice se realizează folosind diverse mijloace tehnice (scanner, cameră digitală, cameră video digitală etc.); rezultatul este un bitmap. La reproducerea graficelor color pe un monitor color de computer, culoarea fiecărui punct (pixel) al unei astfel de imagini este obținută prin amestecarea a trei culori primare R, Gși B.

Calitatea unei imagini raster este determinată de doi parametri principali - rezoluția (numărul de puncte orizontal și vertical) și paleta de culori utilizată (numărul de culori specificate pentru fiecare punct din imagine). Rezoluția este setată prin specificarea numărului de puncte orizontal și vertical, de exemplu, 800 pe 600 de puncte.

Există o relație între numărul de culori specificat pentru un punct dintr-o imagine raster și cantitatea de informații care trebuie selectată pentru a stoca culoarea unui punct, care este determinată de relație (formula lui R. Hartley):

Unde eu- cantitatea de informații; N - numărul de culori acordat la punct.

Cantitatea de informații necesare pentru a stoca culoarea unui punct se mai numește și adâncimea culorii sau calitatea culorii.

Deci, dacă numărul de culori specificat pentru punctul de imagine este N = 256, atunci cantitatea de informații necesară pentru stocarea acesteia (adâncimea culorii) în conformitate cu formula (3.1) va fi egală cu eu= 8 biți.

Calculatoarele folosesc diferite moduri de afișare grafică pentru a afișa informații grafice. Trebuie remarcat aici că, pe lângă modul grafic al monitorului, există și un mod text, în care ecranul monitorului este împărțit în mod convențional în 25 de linii a câte 80 de caractere pe linie. Aceste moduri grafice se caracterizează prin rezoluția ecranului monitorului și calitatea culorii (adâncimea culorii). Pentru a seta modul grafic al ecranului monitorului în sistemul de operare MS Windows XP trebuie să executați comanda: [Button start- Setări - Panou de control - Ecran]. În caseta de dialog „Properties: Display” care apare (Fig. 3.12), selectați fila „Parameters” și utilizați glisorul „Screen resolution” pentru a selecta rezoluția corespunzătoare a ecranului (800 x 600 pixeli, 1024 x 768 pixeli etc. ). Folosind lista derulantă „Calitatea culorii”, puteți selecta adâncimea culorii - „Cea mai mare (32 biți)”, „Mediu (16 biți)”, etc., în timp ce numărul de culori atribuit fiecărui punct de imagine va fi respectiv egal cu 2 32 (4294967296), 2 16 (65536), etc.

Orez. 3.12. Caseta de dialog Display Properties


Pentru a implementa fiecare dintre modurile grafice ale ecranului monitorului, este necesar un anumit volum de informații din memoria video a computerului. Volumul de informații necesar al memoriei video (V) este determinată din relație

Unde LA - numărul de puncte de imagine de pe ecranul monitorului (K = A · B); A - numărul de puncte orizontale de pe ecranul monitorului; V - numărul de puncte verticale de pe ecranul monitorului; eu- cantitatea de informații (adâncimea culorii).

Deci, dacă ecranul monitorului are o rezoluție de 1024 pe 768 pixeli și o paletă constând din 65 536 de culori, atunci adâncimea culorii în conformitate cu formula (3.1) va fi I = log 2 65 538 = 16 biți, numărul imaginii punctele vor fi egale cu: K = 1024 x 768 = 786432, iar volumul de informații necesar al memoriei video în conformitate cu (3.2) va fi egal cu

V = 786432 16 biți = 12582912 biți = 1572864 octeți = 1536 KB = 1,5 MB.

În concluzie, trebuie menționat că, pe lângă caracteristicile enumerate, cele mai importante caracteristici ale monitorului sunt dimensiunile geometrice ale ecranului și punctele de imagine. Dimensiunile geometrice ale ecranului sunt stabilite de diagonala monitorului. Dimensiunea diagonalei monitoarelor este stabilită în inci (1 inch = 1 "= 25,4 mm) și poate lua valori egale cu: 14", 15 ", 17", 21 "etc. Tehnologiile moderne de producție a monitoarelor pot oferi un dimensiunea pixelilor egală cu 0,22 mm.

Astfel, pentru fiecare monitor există o rezoluție maximă fizică posibilă a ecranului, care este determinată de dimensiunea diagonalei sale și de dimensiunea punctului imaginii.

Exerciții pentru auto-împlinire

1.Utilizarea programului MS Excel convertiți tabelele de coduri ASCII, CP866, CP1251, KOI8-R în tabele de forma: scrieți litere mari și apoi minuscule latine și chirilice în ordine alfabetică în celulele primei coloane de tabele; a treia coloană - literele corespunzătoare codurilor în sistemul numeric hexazecimal. Valorile codului trebuie selectate din tabelele de coduri corespunzătoare.

2. Codificați și scrieți următoarele cuvinte ca o secvență de numere în notație zecimală și hexazecimală:

A) Internet Explorer, b) Microsoft Office; v) Corel Draw.

Efectuați codificarea utilizând tabelul de codificare ASCII modernizat obținut în exercițiul anterior.

3. Decodificați secvențele de numere scrise în sistemul numeric hexazecimal utilizând tabelul de codificare modernizat KOI8-R:

a) FC CB DA C9 D3 D4 C5 CE C3 C9 D1;

b) EB CF CE C6 CF D2 CD C9 DA CD;

c) FC CB D3 D0 D2 C5 D3 C9 CF CE C9 DA CD.

4. Cum va arăta cuvântul „Cibernetică” scris în codificarea CP1251 când se utilizează codificările CP866 și KOI8-R? Verificați rezultatele obținute cu ajutorul programului Internet Explorer.

5. Folosind tabelul de coduri prezentat în fig. 3.1 A, decodificați următoarele secvențe de cod scrise în notație binară:

a) 01010111 01101111 01110010 01100100;

b) 01000101 01111000 01100011 01100101 01101100;

c) 01000001 01100011 01100011 01100101 01110011 01110011.

6. Determinați volumul informațional al cuvântului „Economie” codificat folosind tabelele de coduri CP866, CP1251, Unicode și KOI8-R.

7. Determinați volumul de informații al fișierului obținut în urma scanării unei imagini color de 12x12 cm.Rezoluția scanerului folosit pentru scanarea acestei imagini este de 600 dpi. Scanerul setează adâncimea de culoare a pixelilor imaginii la 16 biți.

Rezoluția scanerului 600 dpi (dotper inch - puncte per inch) determină capacitatea unui scaner cu o astfel de rezoluție de a distinge 600 de puncte pe un segment de 1 inch.

8. Determinați volumul de informații al fișierului obținut în urma scanării unei imagini color de dimensiune A4. Rezoluția scanerului utilizat pentru scanarea acestei imagini este de 1200 dpi. Scanerul setează adâncimea de culoare a pixelilor imaginii la 24 de biți.

9. Determinați numărul de culori din paletă la adâncimi de culoare de 8, 16, 24 și 32 de biți.

10. Determinați cantitatea necesară de memorie video pentru modurile de afișare grafică ale monitorului 640 x 480, 800 x 600, 1024 x 768 și 1280 x 1024 pixeli la adâncimea de culoare a punctului de imagine de 8, 16, 24 și 32 de biți. Rezultatele sunt tabulate. Dezvoltați în MS Excel un program de automatizare a calculelor.

11. Determinați numărul maxim de culori care pot fi utilizate pentru a stoca o imagine de 32 x 32 pixeli dacă computerul are 2 KB de memorie alocată pentru imagine.

12. Determinați rezoluția maximă posibilă a unui ecran de monitor cu o lungime a diagonalei de 15” și o dimensiune a pixelilor de 0,28 mm.

13. Ce moduri grafice de funcționare a monitorului poate oferi memoria video de 64 MB?

Incinerare

I. Istoricul codificării informațiilor ……………………………… ..3

II. Codificarea informațiilor ………………………………………… 4

III. Codarea informațiilor text …………………………… .4

IV. Tipuri de tabele de codificare ………………………………………… ... 6

V. Calculul cantității de informații text ……………………… 14

Lista literaturii utilizate ………………………………………… ..16

eu . Istoricul codificării informațiilor

Omenirea a folosit criptarea (codificarea) textului chiar din momentul în care au apărut primele informații secrete. Înainte de a vă prezenta mai multe metode de codificare a textului care au fost inventate în diferite etape ale dezvoltării gândirii umane:

Criptografia este o scriere secretă, un sistem de modificare a unei scrisori cu scopul de a face textul de neînțeles pentru cei neinițiați;

Cod Morse sau cod telegrafic neregulat, în care fiecare literă sau caracter este reprezentat de propria sa combinație de cipuri scurte de curent electric (puncte) și cipuri cu durată triplă (linii);

limbajul semnelor este un limbaj gestual folosit de persoanele cu deficiențe de auz.

Una dintre cele mai vechi metode de criptare cunoscute este numită după împăratul roman Iulius Cezar (secolul I î.Hr.). Această metodă se bazează pe înlocuirea fiecărei litere a textului criptat cu alta, prin deplasarea alfabetului de la litera originală cu un număr fix de caractere, iar alfabetul se citește în cerc, adică după litera i, a este considerată. Deci, cuvântul „octet” atunci când este deplasat cu două caractere la dreapta este codificat cu cuvântul „gvlf”. Procesul invers de decodare a unui anumit cuvânt - este necesar să înlocuiți fiecare literă criptată, cu a doua în stânga acesteia.

II. Codificarea informațiilor

Un cod este un set de convenții (sau semnale) pentru înregistrarea (sau transmiterea) unor concepte predefinite.

Codarea informațiilor este procesul de formare a unei reprezentări specifice a informațiilor. Într-un sens mai restrâns, termenul „codificare” este adesea înțeles ca o tranziție de la o formă de prezentare a informațiilor la alta, mai convenabilă pentru stocare, transmitere sau procesare.

De obicei, fiecare imagine atunci când este codificată (uneori se spune - criptată) este reprezentată printr-un semn separat.

Un semn este un element dintr-un set finit de elemente distincte.

Într-un sens mai restrâns, termenul „codificare” este adesea înțeles ca o tranziție de la o formă de prezentare a informațiilor la alta, mai convenabilă pentru stocare, transmitere sau procesare.

Computerul poate procesa informații text. Când este introdusă într-un computer, fiecare literă este codificată cu un anumit număr, iar atunci când este transmisă către dispozitive externe (ecran sau imprimare), imaginile literelor sunt create pentru percepția umană folosind aceste numere. Corespondența dintre un set de litere și numere se numește codare de caractere.

De regulă, toate numerele dintr-un computer sunt reprezentate folosind zerouri și unu (și nu zece cifre, așa cum este obișnuit pentru oameni). Cu alte cuvinte, computerele funcționează de obicei într-un sistem de numere binar, deoarece dispozitivele pentru procesarea lor sunt mult mai simple. Introducerea numerelor într-un computer și scoaterea lor pentru citire umană poate fi efectuată în forma zecimală obișnuită, iar toate transformările necesare sunt efectuate de programe care rulează pe computer.

III. Codificarea informațiilor text

Aceeași informație poate fi prezentată (codificat) în mai multe forme. Odată cu apariția computerelor, a devenit necesară codificarea tuturor tipurilor de informații cu care se ocupă atât o persoană individuală, cât și umanitatea în ansamblu. Dar omenirea a început să rezolve problema codificării informațiilor cu mult înainte de apariția computerelor. Realizările extraordinare ale omenirii - scrisul și aritmetica - nu sunt altceva decât un sistem de codificare a vorbirii și a informațiilor numerice. Informația nu apare niciodată în forma ei pură, este întotdeauna prezentată cumva, cumva codificată.

Codarea binară este una dintre modalitățile comune de a reprezenta informații. În calculatoare, roboți și mașini-unelte controlate numeric, de regulă, toate informațiile cu care se ocupă dispozitivul sunt codificate sub formă de cuvinte într-un alfabet binar.

De la sfârșitul anilor 60, computerele au fost din ce în ce mai folosite pentru a procesa informații textuale, iar în prezent, cea mai mare parte a computerelor personale din lume (și de cele mai multe ori) este angajată în procesarea informațiilor textuale. Toate aceste tipuri de informații dintr-un computer sunt reprezentate în cod binar, adică se folosește un alfabet cu puterea doi (doar două caractere 0 și 1). Acest lucru se datorează faptului că este convenabil să se reprezinte informația sub forma unei secvențe de impulsuri electrice: nu există impuls (0), există un impuls (1).

O astfel de codificare este de obicei numită binară, iar secvențele logice de zerouri și unități în sine sunt numite limbaj mașină.

Din punctul de vedere al unui computer, textul este format din caractere individuale. Simbolurile includ nu numai litere (majuscule sau mici, latină sau rusă), ci și numere, semne de punctuație, caractere speciale precum „=", „(”, „&”, etc. și chiar (acordați o atenție deosebită!) spații între cuvinte.

Textele sunt introduse în memoria computerului folosind tastatura. Pe taste sunt scrise literele, cifrele, semnele de punctuație și alte simboluri. Ei introduc memoria RAM în cod binar. Aceasta înseamnă că fiecare caracter este reprezentat de un cod binar de 8 biți.

În mod tradițional, pentru a codifica un caracter, se folosește o cantitate de informații egală cu 1 octet, adică I = 1 octet = 8 biți. Folosind o formulă care conectează numărul de evenimente posibile K și cantitatea de informații I, puteți calcula câte simboluri diferite pot fi codificate (presupunând că simbolurile sunt evenimente posibile): K = 2 I = 2 8 = 256, adică , pentru Reprezentarea informațiilor textuale se poate folosi un alfabet cu o capacitate de 256 de caractere.

Acest număr de caractere este suficient pentru a reprezenta informații textuale, inclusiv litere mari și mici ale alfabetului rus și latin, numere, semne, simboluri grafice etc.

Codificarea înseamnă că fiecărui caracter i se atribuie un cod zecimal unic de la 0 la 255 sau codul binar corespunzător de la 00000000 la 11111111. Astfel, o persoană distinge caracterele după stilul lor, iar un computer - după codul lor.

Comoditatea codificării octet a caracterelor este evidentă, deoarece un octet este cea mai mică parte adresabilă a memoriei și, prin urmare, procesorul poate accesa fiecare caracter separat, efectuând procesarea textului. Pe de altă parte, 256 de caractere este un număr destul de suficient pentru a reprezenta o mare varietate de informații despre caractere.

În procesul de afișare a unui caracter pe ecranul computerului, se efectuează procesul invers - decodare, adică conversia codului caracterului în imaginea sa. Este important ca atribuirea unui anumit cod unui simbol să fie o chestiune de convenție, care este fixată în tabelul de coduri.

Acum se pune întrebarea, ce fel de cod binar pe opt biți să asociem cu fiecare caracter. Este clar că aceasta este o chestiune condiționată, puteți veni cu multe metode de codare.

Toate caracterele alfabetului computerului sunt numerotate de la 0 la 255. Fiecare număr corespunde unui cod binar de opt cifre de la 00000000 la 11111111. Acest cod este pur și simplu numărul ordinal al caracterului din sistemul binar.

IV ... Tipuri de tabele de codificare

Tabelul în care toate caracterele alfabetului computerului sunt atribuite numere de serie se numește tabel de codificare.

Pentru diferite tipuri de computere sunt folosite tabele de codare diferite.

Tabelul de coduri ASCII (American Standard Code for Information Interchange) a fost adoptat ca standard internațional, care codifică prima jumătate a caracterelor cu coduri numerice de la 0 la 127 (codurile de la 0 la 32 sunt atribuite nu simbolurilor, ci tastelor funcționale). ).

Tabelul ASCII este împărțit în două părți.

Standardul internațional este doar prima jumătate a tabelului, adică. caractere cu numere de la 0 (00000000) la 127 (01111111).

Structura tabelului de codificare ASCII

Număr de serie Codul Simbol
0 - 31 00000000 - 00011111

Simbolurile cu numere de la 0 la 31 sunt de obicei numite caractere de control.

Funcția lor este de a controla procesul de afișare a textului pe ecran sau de imprimare, de a da un semnal sonor, de marcare a textului etc.

32 - 127 0100000 - 01111111

Parte standard a tabelului (engleză). Aceasta include litere mici și mari ale alfabetului latin, cifre zecimale, semne de punctuație, tot felul de paranteze, simboluri comerciale și alte simboluri.

Caracterul 32 este un spațiu, adică. poziție goală în text.

Toate celelalte se reflectă în anumite semne.

128 - 255 10000000 - 11111111

Parte alternativă a tabelului (rusă).

A doua jumătate a tabelului de coduri ASCII, numită pagina de coduri (128 de coduri, începând cu 10000000 și terminând cu 11111111), poate avea variante diferite, fiecare variantă având propriul număr.

Pagina de coduri este folosită în primul rând pentru a găzdui alfabetele naționale, altele decât latină. În codificările naționale rusești, această parte a tabelului conține simboluri ale alfabetului rus.

Prima jumătate a tabelului ASCII

Se atrage atenția asupra faptului că în tabelul de codificare, literele (majuscule și minuscule) sunt aranjate în ordine alfabetică, iar numerele sunt ordonate în ordine crescătoare a valorilor. Această respectare a ordinii lexicografice în aranjarea caracterelor se numește principiul codificării secvențiale a alfabetului.

Pentru literele alfabetului rus, se respectă și principiul codificării secvențiale.

A doua jumătate a tabelului ASCII

Din păcate, în prezent există cinci codificări chirilice diferite (KOI8-R, Windows. MS-DOS, Macintosh și ISO). Din această cauză, apar adesea probleme cu transferul de text rusesc de la un computer la altul, de la un sistem software la altul.

Cronologic, unul dintre primele standarde pentru codificarea literelor rusești pe computere a fost KOI8 ("Cod de schimb de informații, 8 biți"). Această codificare a fost folosită încă din anii 70 pe computerele din seria de calculatoare ES, iar de la mijlocul anilor 80 a început să fie folosită în primele versiuni rusificate ale sistemului de operare UNIX.

De la începutul anilor 90, vremea dominației sistemului de operare MS DOS, codificarea CP866 rămâne („CP” înseamnă „Code Page”).

Computerele Apple care rulează Mac OS folosesc propria lor codificare Mac.

În plus, Organizația Internațională pentru Standardizare (International Standards Organization, ISO) a aprobat o altă codificare numită ISO 8859-5 ca standard pentru limba rusă.

În prezent, cea mai comună codificare este Microsoft Windows, prescurtat ca CP1251. Introdus de Microsoft; ținând cont de distribuția largă a sistemelor de operare (OS) și a altor produse software ale acestei companii în Federația Rusă, a găsit o distribuție largă.

De la sfârșitul anilor 90, problema standardizării codării caracterelor a fost rezolvată prin introducerea unui nou standard internațional numit Unicode.

Aceasta este o codificare pe 16 biți, adică alocă 2 octeți de memorie pentru fiecare caracter. Desigur, acest lucru dublează cantitatea de memorie utilizată. Dar, pe de altă parte, un astfel de tabel de coduri permite includerea a până la 65536 de caractere. Specificația completă a standardului Unicode include toate alfabetele existente, dispărute și create artificial din lume, precum și multe simboluri matematice, muzicale, chimice și alte simboluri.

Reprezentarea internă a cuvintelor în memoria computerului

folosind tabelul ASCII

Uneori se întâmplă ca un text constând din litere ale alfabetului rus, primit de la un alt computer, să nu poată fi citit - un fel de „farful” este vizibil pe ecranul monitorului. Acest lucru se datorează faptului că computerele folosesc codificare diferită a caracterelor limbii ruse.

Astfel, fiecare codificare este specificată de propriul tabel de coduri. După cum puteți vedea din tabel, simboluri diferite sunt atribuite aceluiași cod binar în codificări diferite.

De exemplu, o secvență de coduri numerice 221, 194, 204 în codificarea CP1251 formează cuvântul „calculator”, în timp ce în alte codificări va fi un set de caractere fără sens.

Din fericire, în majoritatea cazurilor, utilizatorul nu trebuie să-și facă griji cu privire la conversia documentelor text, deoarece acest lucru se face prin programe speciale de conversie încorporate în aplicații.

V ... Calcularea cantității de informații text

Obiectivul 1: Codați cuvântul „Roma” folosind tabelele de codare KOI8-R și CP1251.

Soluţie:

Obiectivul 2: Presupunând că fiecare caracter este codificat într-un octet, estimați volumul de informații al următoarei propoziții:

„Unchiul meu are cele mai oneste reguli,

Când este grav bolnav,

Și-a făcut respect

Și nu mi-aș fi putut imagina mai bine.”

Soluţie: Această expresie are 108 caractere, inclusiv semne de punctuație, ghilimele și spații. Înmulțim acest număr cu 8 biți. Obținem 108 * 8 = 864 de biți.

Obiectivul 3: Cele două texte conțin același număr de caractere. Primul text este scris în rusă, iar al doilea în limba tribului Naguri, al cărui alfabet este format din 16 caractere. Al cui text conține mai multe informații?

Soluţie:

1) I = K * a (volumul de informații al textului este egal cu produsul numărului de caractere cu ponderea informațională a unui caracter).

2) Pentru că ambele texte au același număr de caractere (K), diferența depinde de caracterul informativ al unui caracter al alfabetului (a).

3) 2 a1 = 32, adică a 1 = 5 biți, 2 a2 = 16, adică a 2 = 4 biți.

4) I 1 = K * 5 biți, I 2 = K * 4 biți.

5) Aceasta înseamnă că textul scris în limba rusă este de 5/4 ori mai multe informații.

Sarcina 4: Dimensiunea mesajului, care conține 2048 de caractere, a fost 1/512 dintr-un MB. Determinați cardinalitatea alfabetului.

Soluţie:

1) I = 1/512 * 1024 * 1024 * 8 = 16384 biți - volumul de informații al mesajului a fost convertit în biți.

2) a = I / K = 16384/1024 = 16 biți - se încadrează pe un caracter al alfabetului.

3) 2 * 16 * 2048 = 65536 caractere - puterea alfabetului folosit.

Sarcina 5: Imprimanta laser Canon LBP imprimă la o viteză medie de 6,3 Kbps. Cât timp va dura să tipăriți un document de 8 pagini dacă se știe că pe o pagină sunt în medie 45 de linii, 70 de caractere pe linie (1 caracter - 1 octet)?

Soluţie:

1) Găsiți cantitatea de informații conținute pe 1 pagină: 45 * 70 * 8 biți = 25200 biți

2) Găsiți cantitatea de informații pe 8 pagini: 25200 * 8 = 201600 biți

3) Aducem la unități de măsură uniforme. Pentru a face acest lucru, traduceți Mbiți în biți: 6,3 * 1024 = 6451,2 biți / s.

4) Găsiți timpul de imprimare: 201600: 6451,2 = 31 de secunde.

Bibliografie

1. Ageev V.M. Teoria informației și codării: discretizarea și codificarea informațiilor de măsurare. - M .: MAI, 1977.

2. Kuzmin I.V., Kedrus V.A. Bazele teoriei și codificării informațiilor. - Kiev, școala Vishcha, 1986.

3. Cele mai simple metode de criptare a textului / D.М. Zlatopolsky. - M .: Chistye Prudy, 2007 - 32 p.

4. Ugrinovich N.D. Informatica si tehnologia informatiei. Manual pentru clasele 10-11 / N.D. Ugrinovich. - M .: BINOM. Laboratorul de cunoștințe, 2003 .-- 512 p.

5.http://school497.spb.edu.ru/uchint002/les10/les.html#n

Material de auto-studiu legat de cursurile 2

Codificare ASCII

Tabel de coduri ASCII (ASCII - American Standard Code for Information Interchange - Cod standard american pentru schimbul de informații).

În total, 256 de caractere diferite pot fi codificate folosind tabelul de codare ASCII (Figura 1). Acest tabel este împărțit în două părți: principal (cu coduri de la OOh la 7Fh) și suplimentar (de la 80h la FFh, unde litera h indică faptul că codul aparține sistemului numeric hexazecimal).

Poza 1

Pentru a codifica un caracter din tabel, sunt alocați 8 biți (1 octet). La procesarea informațiilor text, un octet poate conține codul unui anumit simbol - litere, cifre, semn de punctuație, semn de acțiune etc. Fiecare caracter are propriul cod sub forma unui număr întreg. În acest caz, toate codurile sunt colectate în tabele speciale numite tabele de codificare. Cu ajutorul lor, codul caracterului este convertit în reprezentarea sa vizibilă pe ecranul monitorului. Ca urmare, orice text din memoria computerului este reprezentat ca o secvență de octeți cu coduri de caractere.

De exemplu, cuvântul salut! vor fi codificate după cum urmează (tabelul 1).

tabelul 1

Cod binar

Cod zecimal

Figura 1 prezintă caracterele incluse în codarea ASCII standard (engleză) și extinsă (rusă).

Prima jumătate a tabelului ASCII este standardizată. Conține coduri de control (00h la 20h și 77h). Aceste coduri au fost eliminate din tabel, deoarece nu se aplică elementelor de text. Aici se află și semnele de punctuație și matematice: 2lh -!, 26h - &, 28h - (, 2Bh - +, ..., litere mari și mici latine: 41h - A, 61h - а.

A doua jumătate a tabelului conține fonturi naționale, simboluri pseudo-grafice din care pot fi construite tabele și semne matematice speciale. Partea inferioară a tabelului de codificare poate fi înlocuită folosind driverele adecvate - programe auxiliare de control. Această tehnică vă permite să utilizați mai multe fonturi și fonturile lor.

Afișajul pentru fiecare cod de caracter trebuie să afișeze o imagine a personajului pe ecran - nu doar un cod digital, ci o imagine corespunzătoare acestuia, deoarece fiecare caracter are propria sa formă. Descrierea formei fiecărui simbol este stocată într-o memorie specială de afișare - un generator de caractere. Evidențierea unui simbol pe ecranul de afișare al computerului IBM, de exemplu, se realizează folosind puncte care formează o matrice simbolică. Fiecare pixel dintr-o astfel de matrice este un element de imagine și poate fi luminos sau întunecat. Punctul întunecat este codificat cu numărul 0, lumina (luminoasă) - 1. Dacă reprezentați pixeli întunecați cu un punct în câmpul matricei al semnului și pixeli deschisi cu un asterisc, puteți reprezenta grafic forma simbolului .

Oamenii din diferite țări folosesc simboluri pentru a scrie cuvinte în limba lor maternă. Majoritatea aplicațiilor din zilele noastre, inclusiv sistemele de e-mail și browserele web, sunt puri pe 8 biți, ceea ce înseamnă că pot afișa și interpreta doar caractere pe 8 biți conform standardului ISO-8859-1.

În lume există peste 256 de caractere (dacă ținem cont de limbile chirilice, arabă, chineză, japoneză, coreeană și thailandeză) și apar tot mai multe caractere. Și acest lucru creează următoarele lacune pentru mulți utilizatori:

Nu este posibil să utilizați caractere din seturi de codare diferite în același document. Deoarece fiecare document text folosește propriul set de codificări, există mari dificultăți cu recunoașterea automată a textului.

Apar simboluri noi (de exemplu: Euro), drept urmare ISO dezvoltă un nou standard ISO-8859-15, care este foarte asemănător cu standardul ISO-8859-1. Diferența este următoarea: din tabelul de codificare al vechiului standard ISO-8859-1, simbolurile pentru desemnarea valutelor vechi care nu sunt utilizate în prezent au fost eliminate pentru a face loc simbolurilor nou apărute (cum ar fi euro ). Drept urmare, utilizatorii pot avea aceleași documente pe discurile lor, dar în codificări diferite. Soluția la aceste probleme este adoptarea unui singur set internațional de codificări numit codificare universală sau Unicode.

Codificare Unicode

Standardul a fost propus în 1991 de Unicode Consortium, Unicode Inc., o organizație non-profit. Utilizarea acestui standard face posibilă codificarea unui număr foarte mare de caractere din diferite scripturi: în documentele Unicode, caracterele chinezești, caracterele matematice, literele alfabetului grecesc, alfabetul latin și chirilic pot coexista, astfel comutarea paginilor de cod devine inutilă.

Standardul constă din două secțiuni principale: setul de caractere universal (UCS) și formatul de transformare Unicode (UTF). Setul de caractere universal definește o corespondență unu-la-unu de caractere cu coduri - elemente ale spațiului de cod care reprezintă numere întregi nenegative. Familia de codificări definește reprezentarea automată a unei secvențe de coduri UCS.

Standardul Unicode a fost dezvoltat cu scopul de a crea o codificare uniformă a caracterelor pentru toate limbile scrise moderne și vechi. Fiecare caracter din acest standard este codificat pe 16 biți, ceea ce îi permite să acopere un număr incomparabil mai mare de caractere decât codificările de 8 biți acceptate anterior. O altă diferență importantă între Unicode și alte sisteme de codare este că nu numai că atribuie un cod unic fiecărui caracter, ci și definește diferite caracteristici ale acestui caracter, de exemplu:

    tipul de caractere (majuscule, minuscule, număr, semn de punctuație etc.);

    atributele caracterului (afișare de la stânga la dreapta sau de la dreapta la stânga, spațiu, întrerupere de linie etc.);

    litera majuscule sau minuscule corespunzatoare (pentru litere mici, respectiv majuscule);

    valoarea numerică corespunzătoare (pentru caractere numerice).

Întreaga gamă de coduri de la 0 la FFFF este împărțită în mai multe subseturi standard, fiecare dintre ele corespunde fie alfabetului unei anumite limbi, fie unui grup de caractere speciale care sunt similare în funcțiile lor. Diagrama de mai jos oferă o listă generală a subseturilor Unicode 3.0 (Figura 2).

Poza 2

Standardul Unicode este baza pentru stocarea și textul în multe sisteme informatice moderne. Cu toate acestea, nu este compatibil cu majoritatea protocoalelor de Internet, deoarece codurile sale pot conține orice valoare de octet, iar protocoalele folosesc de obicei octeții 00 - 1F și FE - FF ca supraîncărcare. Pentru a realiza interoperabilitatea, au fost dezvoltate mai multe formate de transformare Unicode (UTF, Unicode Transformation Formats), dintre care UTF-8 este cel mai comun astăzi. Acest format definește următoarele reguli pentru conversia fiecărui cod Unicode într-un set de octeți (unu până la trei) potriviti pentru transport prin protocoale Internet.

Aici x, y, z indică biții din codul sursă care ar trebui extrași, începând cu cel mai puțin semnificativ, și introduși în octeții de rezultat de la dreapta la stânga până când toate pozițiile specificate sunt umplute.

Dezvoltarea ulterioară a standardului Unicode este asociată cu adăugarea de noi planuri de limbaj, de ex. caractere în intervalele 10000 - 1FFFF, 20000 - 2FFFF etc., unde ar trebui să includă codificarea pentru scripturile limbilor moarte care nu sunt incluse în tabelul de mai sus. Un nou format UTF-16 a fost dezvoltat pentru a codifica aceste caractere suplimentare.

Astfel, există 4 moduri principale de codificare a octeților Unicode:

UTF-8: 128 de caractere sunt codificate într-un octet (format ASCII), 1920 de caractere sunt codificate în 2 octeți ((caractere romane, grecești, chirilice, copte, armeane, ebraice, arabe), 63488 de caractere sunt codificate în 3 octeți (chineze) , japoneză și altele) Cele 2.147.418.112 de caractere rămase (neutilizate încă) pot fi codificate cu 4, 5 sau 6 octeți.

UCS-2: Fiecare caracter este reprezentat de 2 octeți. Această codificare include doar primele 65.535 de caractere din formatul Unicode.

UTF-16: Aceasta este o extensie a UCS-2 și include 1 114 112 caractere Unicode. Primele 65.535 de caractere sunt reprezentate de 2 octeți, restul de 4 octeți.

USC-4: Fiecare caracter este codificat în 4 octeți.

[Codări pe 8 biți: ASCII, KOI-8R și CP1251] Primele tabele de set de caractere create în SUA nu au folosit al optulea bit dintr-un octet. Textul a fost prezentat ca o secvență de octeți, dar al optulea bit nu a fost luat în considerare (a fost folosit în scopuri de service).

Standardul general acceptat a devenit tabelul ASCII(Codul American Standard pentru Schimbul de Informații). Primele 32 de caractere ASCII (de la 00 la 1F) au fost folosite pentru caracterele care nu pot fi imprimate. Au fost concepute pentru a controla un dispozitiv de imprimare și altele asemenea. Restul - de la 20 la 7F - sunt caractere normale (printabile).

Tabelul 1 - Codificare ASCII

DecHexoctCharDescriere
0 0 000 nul
1 1 001 începutul direcției
2 2 002 începutul textului
3 3 003 sfârşitul textului
4 4 004 sfârşitul transmisiei
5 5 005 Anchetă
6 6 006 recunoaște
7 7 007 clopot
8 8 010 backspace
9 9 011 filă orizontală
10 A 012 linie nouă
11 B 013 filă verticală
12 C 014 pagina noua
13 D 015 retur transport
14 E 016 schimbă afară
15 F 017 schimbă în
16 10 020 evadare a legăturii de date
17 11 021 controlul dispozitivului 1
18 12 022 controlul dispozitivului 2
19 13 023 controlul dispozitivului 3
20 14 024 controlul dispozitivului 4
21 15 025 recunoaștere negativă
22 16 026 inactiv sincron
23 17 027 sfârşitul trans. bloc
24 18 030 Anulare
25 19 031 sfârşitul mediei
26 1A 032 substitui
27 1B 033 evadare
28 1C 034 separator de fișiere
29 1D 035 separator de grup
30 1E 036 separator de înregistrări
31 1F 037 separator de unitate
32 20 040 spaţiu
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 ?
DecHexoctChar
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 eu
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 p
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

După cum puteți vedea cu ușurință, această codificare conține doar litere latine și cele care sunt folosite în engleză. Există, de asemenea, simboluri aritmetice și alte simboluri de serviciu. Dar nu există litere rusești, sau chiar litere latine speciale pentru germană sau franceză. Acest lucru este ușor de explicat - codificarea a fost dezvoltată special ca standard american. Când computerele au început să fie folosite în întreaga lume, a devenit necesară codificarea altor simboluri.

Pentru aceasta, s-a decis folosirea celui de-al optulea bit din fiecare octet. Astfel, au fost disponibile încă 128 de valori (de la 80 la FF), care puteau fi folosite pentru a codifica caractere. Primul dintre tabelele de opt biți este „ASCII extins” ( ASCII extins) - a inclus diverse variante de caractere latine utilizate în unele limbi ale Europei de Vest. Conținea și alte simboluri suplimentare, inclusiv pseudo-grafice.

Caracterele pseudo-grafice permit, prin afișarea doar a caracterelor text, să ofere o oarecare aparență de grafică. De exemplu, programul de gestionare a fișierelor FAR Manager funcționează cu ajutorul pseudo-grafice.

Nu existau litere rusești în tabelul ASCII extins. În Rusia (fostă URSS) și în alte state, au fost create propriile codificări, care au făcut posibilă reprezentarea unor caractere „naționale” specifice în fișiere text pe 8 biți - litere latine ale limbilor poloneză și cehă, chirilice (inclusiv litere rusești ) și alte alfabete.

În toate codificările care s-au răspândit, primele 127 de caractere (adică valorile octeților cu al optulea bit egal cu 0) coincid cu ASCII. Astfel, un fișier ASCII funcționează în oricare dintre aceste codificări; literele limbii engleze sunt reprezentate la fel.

Organizare ISO(International Standardization Organization) a adoptat un grup de standarde ISO 8859... Acesta definește codificări pe 8 biți pentru diferite grupuri de limbi. Deci, ISO 8859-1 este ASCII extins, un tabel pentru Statele Unite și Europa de Vest. Și ISO 8859-5 este un tabel pentru chirilic (inclusiv rus).

Cu toate acestea, din motive istorice, codarea ISO 8859-5 nu a prins. În realitate, următoarele codificări sunt folosite pentru limba rusă:

Pagina de cod 866 ( CP866), alias „DOS”, alias „codare GOST alternativă”. A fost folosit pe scară largă până la mijlocul anilor 90; este acum folosit într-o măsură limitată. Practic nu este folosit pentru distribuirea de texte pe Internet.
- KOI-8. Dezvoltat în anii 70 și 80. Este un standard general acceptat pentru transmiterea mesajelor poștale pe internetul rusesc. De asemenea, este utilizat pe scară largă în sistemele de operare din familia Unix, inclusiv Linux. Se numește versiunea KOI-8, concepută pentru limba rusă KOI-8R; există versiuni pentru alte limbi chirilice (de exemplu, KOI8-U este o opțiune pentru limba ucraineană).
- Pagina de cod 1251, CP1251, Windows-1251. Dezvoltat de Microsoft pentru a sprijini limba rusă în Windows.

Principalul avantaj al CP866 a fost păstrarea caracterelor pseudo-grafice în aceleași locuri ca în ASCII extins; prin urmare, programele cu text străin, de exemplu, celebrul Norton Commander, ar putea funcționa fără modificări. În prezent, CP866 este folosit pentru programele Windows care rulează în ferestre text sau în modul text pe ecran complet, inclusiv FAR Manager.

În ultimii ani, textele în CP866 sunt destul de rare (dar sunt folosite pentru a codifica numele fișierelor rusești în Windows). Prin urmare, ne vom opri mai detaliat asupra altor două codificări - KOI-8R și CP1251.



După cum puteți vedea, în tabelul de codificare CP1251, literele rusești sunt aranjate în ordine alfabetică (cu excepția, totuși, a literei E). Acest aranjament facilitează sortarea alfabetică a programelor de calculator.

Dar în KOI-8R, ordinea literelor rusești pare să fie aleatorie. Dar de fapt nu este.

Multe programe mai vechi au pierdut al 8-lea bit la procesarea sau transmiterea textului. (Acum, astfel de programe practic s-au „stins”, dar la sfârșitul anilor 80 - începutul anilor 90 erau răspândite). Pentru a obține o valoare de 7 biți dintr-o valoare de 8 biți, scădeți 8 din cifra cea mai semnificativă; de exemplu, E1 devine 61.

Acum comparați KOI-8R cu tabelul ASCII (Tabelul 1). Veți descoperi că literele rusești sunt clar aliniate cu cele latine. Dacă al optulea bit dispare, literele rusești mici se transformă în litere latine mari, iar literele rusești mari se transformă în litere latine mici. Deci, E1 în KOI-8 este rusă „A”, în timp ce 61 în ASCII este latină „a”.

Deci, KOI-8 vă permite să păstrați lizibilitatea textului rusesc în timp ce pierdeți al 8-lea bit. „Salut tuturor” devine „pRIWET WSEM”.

Recent, atât ordinea alfabetică a caracterelor din tabelul de codificare, cât și lizibilitatea cu pierderea celui de-al 8-lea bit și-au pierdut importanța decisivă. Al optulea bit în computerele moderne nu se pierde nici în timpul transmisiei, nici în timpul procesării. Sortarea în ordine alfabetică se bazează pe codificare și nu doar pe compararea codurilor. (Apropo, codurile CP1251 nu sunt complet alfabetice - litera E nu este la locul ei).

Datorită faptului că există două codificări comune, atunci când lucrați cu Internetul (e-mail, navigarea pe site-uri web), uneori puteți vedea un set de litere fără sens în loc de text rusesc. De exemplu, „Sunt SBUFEMHEL”. Acestea sunt doar cuvintele „cu respect”; dar au fost codificate în codificare CP1251, iar computerul a decodat textul conform tabelului KOI-8. Dacă aceleași cuvinte au fost, dimpotrivă, codificate în KOI-8, iar computerul a decodat textul conform tabelului CP1251, rezultatul va fi „У ХЧБЦЕОЙЕН”.

Uneori se întâmplă ca computerul să decripteze literele în limba rusă conform unui tabel care nu este destinat limbii ruse. Apoi, în loc de litere rusești, apare un set de simboluri fără sens (de exemplu, litere latine ale limbilor est-europene); sunt adesea numite „crocozyabras”.

În cele mai multe cazuri, programele moderne fac față singure cu determinarea codificărilor documentelor de pe Internet (e-mailuri și pagini web). Dar uneori „raușesc” și apoi puteți vedea secvențe ciudate de litere rusești sau „krokozyabra”. De regulă, pentru a afișa text real pe ecran, este suficient să selectați codarea manual în meniul programului.

Pentru articol s-au folosit informațiile de pe pagina http://open-office.edusite.ru/TextProcessor/p5aa1.html.

Material preluat de pe site:

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 corespunzător atunci când este afișată.

Unul dintre sistemele de corelare a codurilor binare cu caractere imprimabile și de control este

La nivelul actual de dezvoltare a tehnologiei informatice, utilizatorului nu i se cere să cunoască codul fiecărui simbol 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ă.

Creare ASCII

În forma sa originală, codificarea a fost dezvoltată în 1963 și apoi actualizată de două ori în 25 de ani.

În versiunea originală, tabelul de caractere ASCII includea 128 de caractere, ulterior a apărut o versiune extinsă, în care au fost salvate primele 128 de caractere, iar caracterele absente anterior au fost atribuite codurilor cu al optulea bit implicat.

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.

Reprezentare pe computer ASCII

Fiecare caracter ASCII are propriul cod de 8 caractere reprezentând zero sau unu. Numărul minim într-o astfel de 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 versiunea 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 salvată în primele 128 de coduri cu un al 8-lea bit zero. Semnele scrisului național au fost păstrate în jumătatea superioară a tabelului (pozițiile 128-255).

Utilizatorul nu trebuie să cunoască direct codurile de caractere ASCII. De obicei, este suficient ca un dezvoltator de software să cunoască numărul unui element dintr-un tabel pentru a-și calcula codul folosind un sistem 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ă-și creeze propria versiune. În curând, a fost dezvoltată o versiune a codificării pe 8 biți numită KOI8, care păstrează primele 128 de coduri de caractere ASCII și alocă 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 în Runet, când textele tastate cu caractere ASCII rusești erau afișate incorect.

Problema a fost că codurile diferitelor variante ASCII nu se potriveau între ele. Amintiți-vă că pozițiile 128-255 ar putea conține caractere diferite, 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 altă versiune a codificării.

Starea curenta

Odată cu apariția Unicode, popularitatea ASCII a scăzut brusc.

Motivul pentru aceasta constă în faptul că noua codificare a făcut posibilă găzduirea semnelor aproape tuturor limbilor 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ă în 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 este văzută ca nepromițătoare.

Top articole similare