Come configurare smartphone e PC. Portale informativo

Tabella ascii estesa. Codifica delle informazioni di testo

Excel per Office 365 Word per Office 365 Outlook per Office 365 PowerPoint per Office 365 Publisher per 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 PowerPoint 2007 Publisher 2007 Access 2007 Visio 2007 OneNote 2007 Office 2010 Visio Standard 2007 Visio Standard 2010 Meno

In questo articolo

Inserisci un carattere ASCII o Unicode in un documento

Se hai solo bisogno di inserire pochi caratteri speciali o simboli, puoi utilizzare entrambe le scorciatoie da tastiera. Per un elenco di caratteri ASCII, vedere le tabelle seguenti o l'articolo Inserire alfabeti nazionali utilizzando le scorciatoie da tastiera.

Appunti:

Inserisci caratteri ASCII

Per inserire un carattere ASCII, tieni premuto il tasto ALT mentre inserisci il codice del carattere. Ad esempio, per inserire un simbolo di grado (º), tenere premuto il tasto Alt, quindi immettere 0176 sul tastierino numerico.

Usa il tastierino numerico per inserire i numeri invece dei numeri sulla tastiera principale. Se è necessario immettere numeri sul tastierino numerico, assicurarsi che l'indicatore BLOC NUM sia acceso.

Inserimento di caratteri Unicode

Per inserire un carattere Unicode, immettere il codice carattere, quindi premere in sequenza ALT e X. Ad esempio, per inserire un simbolo del dollaro ($), immettere 0024 e premere in sequenza ALT e X. Per tutti i codici carattere Unicode, vedere.

Importante: Alcuni programmi di Microsoft Office, come PowerPoint e InfoPath, non supportano la conversione di codici Unicode in caratteri. Se è necessario inserire un carattere Unicode in uno di questi programmi, utilizzare.

Appunti:

    Se vedi il carattere Unicode sbagliato dopo aver premuto ALT + X, seleziona il codice corretto, quindi premi nuovamente ALT + X.

    Inoltre, prima del codice deve essere inserito "U +". Ad esempio, se inserisci "1U + B5" e premi Alt + X, viene visualizzato il testo "1µ", e se inserisci "1B5" e premi Alt + X, viene visualizzato il carattere "Ƶ".

Usando la tabella dei simboli

Symbol Map è un programma integrato in Microsoft Windows che consente di visualizzare i simboli disponibili per un carattere selezionato.

Utilizzando una tabella dei simboli, è possibile copiare singoli simboli o un gruppo di simboli negli appunti e incollarli in qualsiasi programma in grado di visualizzare tali simboli. Apertura della tabella dei simboli

    Su Windows 10 Inserisci la parola "simbolo" nella casella di ricerca sulla barra delle applicazioni e seleziona una tabella dei simboli dai risultati della ricerca.

    Su Windows 8 Inserisci la parola "carattere" nella schermata iniziale e seleziona una tabella dei caratteri dai risultati della ricerca.

    Su Windows 7 premi il bottone Inizio, seleziona in sequenza Tutti i programmi, Standard, Servizio e clicca tabella dei simboli.

I caratteri sono raggruppati per font. Fare clic sull'elenco dei caratteri per selezionare il set di caratteri appropriato. Per selezionare un simbolo, fai clic su di esso, quindi fai clic su Selezionare... Per inserire un simbolo, fare clic con il pulsante destro del mouse sulla posizione desiderata nel documento e selezionare Inserire.

Codici simboli usati di frequente

Per un elenco completo dei caratteri, vedere il computer, la tabella dei codici dei caratteri ASCII o le tabelle dei set di caratteri Unicode.

Glifo

Glifo

Unità monetarie

Simboli legali

Simboli matematici

frazioni

Simboli di punteggiatura e dialetto

Simboli di forma

Codici diacritici comunemente usati

Per un elenco completo dei glifi e dei relativi codici, vedere.

Glifo

Glifo

Caratteri di controllo ASCII non stampabili

I caratteri utilizzati per controllare alcuni dispositivi periferici, come le stampanti, sono numerati da 0 a 31 nella tabella ASCII. Ad esempio, un carattere di alimentazione/nuova pagina è il numero 12. Questo carattere indica alla stampante di andare all'inizio della pagina successiva.

Tabella dei caratteri di controllo ASCII non stampabile

Decimale

Cartello

Decimale

Cartello

Liberare il canale dati

Inizio dell'intestazione

Primo codice di controllo del dispositivo

Inizio del testo

Secondo codice di controllo del dispositivo

Fine del testo

Codice di controllo del terzo dispositivo

Fine della trasmissione

Quarto codice di controllo del dispositivo

a cinque punte

Conferma negativa

Conferma

Modalità di trasmissione sincrona

Segnale sonoro

Fine del blocco dei dati trasmessi

Scheda orizzontale

Fine dei media

Avanzamento riga / nuova riga

Carattere sostitutivo

Scheda verticale

superare

Traduzione della pagina / nuova pagina

Dodicesimo

Separatore di file

Ritorno a capo

Separatore di gruppo

Cambia senza salvare le cifre

Separatore di record

Shift con conservazione delle cifre

quindici

Separatore di dati

Viene chiamato l'insieme di caratteri con cui viene scritto il testo alfabeto.

Il numero di caratteri dell'alfabeto è suo potenza.

Formula per determinare la quantità di informazioni: N = 2 b,

dove N è la cardinalità dell'alfabeto (numero di caratteri),

b - numero di bit (peso informativo del carattere).

L'alfabeto con una capacità di 256 caratteri può contenere quasi tutti i caratteri necessari. Questo alfabeto si chiama sufficiente.

Perché 256 = 2 8, quindi il peso di 1 carattere è 8 bit.

L'unità a 8 bit è stata nominata 1 byte:

1 byte = 8 bit.

Il codice binario di ogni carattere nel testo del computer occupa 1 byte di memoria.

Come vengono rappresentate le informazioni di testo nella memoria del computer?

La comodità della codifica dei caratteri in byte è ovvia, poiché un byte è la più piccola parte indirizzabile della memoria e, quindi, il processore può accedere a ciascun carattere separatamente, eseguendo l'elaborazione del testo. D'altra parte, 256 caratteri è un numero abbastanza sufficiente per rappresentare un'ampia varietà di informazioni sui caratteri.

Ora sorge la domanda, che tipo di codice binario a otto bit associare a ciascun carattere.

È chiaro che questa è una questione condizionale, puoi trovare molti metodi di codifica.

Tutti i caratteri dell'alfabeto del computer sono numerati da 0 a 255. Ogni numero corrisponde a un codice binario di otto bit da 00000000 a 11111111. Questo codice è semplicemente il numero ordinale del carattere nel sistema numerico binario.

La tabella in cui tutti i caratteri dell'alfabeto del computer sono assegnati ai numeri di serie è chiamata tabella di codifica.

Diverse tabelle di codifica vengono utilizzate per diversi tipi di computer.

Lo standard internazionale per il PC è diventato il tavolo ASCII(leggi asci) (Codice standard americano per lo scambio di informazioni).

La tabella ASCII è divisa in due parti.

Lo standard internazionale è solo la prima metà della tabella, ad es. simboli con numeri da 0 (00000000), fino a 127 (01111111).

Struttura della tabella di codifica ASCII

Numero di serie

Il codice

Simbolo

0 - 31

00000000 - 00011111

I simboli con numeri da 0 a 31 sono generalmente chiamati caratteri di controllo.
La loro funzione è controllare il processo di visualizzazione del testo sullo schermo o la stampa, dare un segnale sonoro, contrassegnare il testo, ecc.

32 - 127

00100000 - 01111111

Parte standard della tabella (inglese). Ciò include lettere minuscole e maiuscole dell'alfabeto latino, cifre decimali, segni di punteggiatura, tutti i tipi di parentesi, simboli commerciali e di altro tipo.
Il carattere 32 è uno spazio, ad es. posizione vuota nel testo.
Tutti gli altri si riflettono in certi segni.

128 - 255

10000000 - 11111111

Parte alternativa del tavolo (russo).
La seconda metà della tabella dei codici ASCII, chiamata code page (128 codici, che iniziano da 10000000 e terminano con 11111111), può avere diverse varianti, ogni variante ha il proprio numero.
La tabella codici viene utilizzata principalmente per ospitare alfabeti nazionali diversi dal latino. Nelle codifiche nazionali russe, questa parte della tabella contiene i simboli dell'alfabeto russo.

La prima metà della tabella ASCII


Attiro la tua attenzione sul fatto che nella tabella di codifica, le lettere (maiuscole e minuscole) sono disposte in ordine alfabetico e i numeri sono ordinati in ordine crescente di valori. Questa osservanza dell'ordine lessicografico nella disposizione dei caratteri è chiamata il principio della codifica sequenziale dell'alfabeto.

Per le lettere dell'alfabeto russo si osserva anche il principio della codifica sequenziale.

La seconda metà della tabella ASCII


Sfortunatamente, ci sono attualmente cinque diverse codifiche cirilliche (KOI8-R, Windows. MS-DOS, Macintosh e ISO). Per questo motivo, spesso sorgono problemi con il trasferimento di testo russo da un computer a un altro, da un sistema software a un altro.

Cronologicamente, uno dei primi standard per la codifica delle lettere russe sui computer era KOI8 ("Codice di scambio di informazioni, 8 bit"). Questa codifica è stata utilizzata negli anni '70 sui computer della serie di computer ES e dalla metà degli anni '80 ha iniziato a essere utilizzata nelle prime versioni russificate del sistema operativo UNIX.

Dall'inizio degli anni '90, epoca del predominio del sistema operativo MS DOS, rimane la codifica CP866 ("CP" sta per "Code Page").

I computer Apple che eseguono Mac OS utilizzano la propria codifica Mac.

Inoltre, l'Organizzazione internazionale per la standardizzazione (International Standards Organization, ISO) ha approvato un'altra codifica chiamata ISO 8859-5 come standard per la lingua russa.

Attualmente, la codifica più comune è Microsoft Windows, abbreviata in CP1251.

Dalla fine degli anni '90, il problema della standardizzazione della codifica dei caratteri è stato risolto con l'introduzione di un nuovo standard internazionale chiamato Unicode... Questa è una codifica a 16 bit, ad es. alloca 2 byte di memoria per ogni carattere. Ovviamente, questo raddoppia la quantità di memoria utilizzata. Ma d'altra parte, una tale tabella di codici consente l'inclusione di un massimo di 65536 caratteri. La specifica completa dello standard Unicode include tutti gli alfabeti esistenti, estinti e creati artificialmente del mondo, nonché molti simboli matematici, musicali, chimici e di altro tipo.

Proviamo a usare una tabella ASCII per immaginare come appariranno le parole nella memoria del computer.

Rappresentazione interna delle parole nella memoria del computer

A volte capita che un testo composto da lettere dell'alfabeto russo, ricevuto da un altro computer, non possa essere letto - una sorta di "senza senso" è visibile sullo schermo del monitor. Ciò è dovuto al fatto che i computer utilizzano una codifica diversa dei caratteri della lingua russa.

Ricordiamo alcuni fatti che conosciamo:

L'insieme di simboli con cui viene scritto il testo è chiamato alfabeto.

Il numero di caratteri nell'alfabeto è la sua cardinalità.

La formula per determinare la quantità di informazioni: N = 2 b,

dove N è la cardinalità dell'alfabeto (numero di caratteri),

b - numero di bit (peso informativo del carattere).

L'alfabeto con una capacità di 256 caratteri può contenere quasi tutti i caratteri necessari. Tale alfabeto è chiamato sufficiente.

Perché 256 = 2 8 , quindi il peso di 1 carattere è 8 bit.

L'unità a 8 bit è stata denominata 1 byte:

1 byte = 8 bit.

Il codice binario di ogni carattere nel testo del computer occupa 1 byte di memoria.

Come vengono rappresentate le informazioni di testo nella memoria del computer?

La codifica significa che a ciascun carattere viene assegnato un codice decimale univoco da 0 a 255 o il codice binario corrispondente da 00000000 a 11111111. Pertanto, una persona distingue i caratteri per il loro stile e un computer per il loro codice.

La comodità della codifica dei caratteri in byte è ovvia, poiché un byte è la più piccola parte indirizzabile della memoria e, quindi, il processore può accedere a ciascun carattere separatamente, eseguendo l'elaborazione del testo. D'altra parte, 256 caratteri è un numero abbastanza sufficiente per rappresentare un'ampia varietà di informazioni sui caratteri.

Ora sorge la domanda, che tipo di codice binario a otto bit associare a ciascun carattere.

È chiaro che questa è una questione condizionale, puoi trovare molti metodi di codifica.

La tabella ASCII è diventata lo standard internazionale per PC (leggi asci) (Codice standard americano per lo scambio di informazioni).

Lo standard internazionale è solo la prima metà della tabella, ad es. caratteri con numeri da 0 (00000000) a 127 (01111111).

Numero di serie

Simbolo

00000000 - 00011111


La loro funzione è controllare il processo di visualizzazione del testo sullo schermo o la stampa, dare un segnale sonoro, contrassegnare il testo, ecc.

32 - 127

00100000 - 01111111


128 - 255

10000000 - 11111111


La seconda metà della tabella dei codici ASCII, chiamata code page (128 codici, che iniziano da 10000000 e terminano con 11111111), può avere diverse varianti, ogni variante ha il proprio numero.


Attiro la tua attenzione sul fatto che nella tabella di codifica, le lettere (maiuscole e minuscole) sono disposte in ordine alfabetico e i numeri sono ordinati in ordine crescente di valori. Questa osservanza dell'ordine lessicografico nella disposizione dei caratteri è chiamata il principio della codifica sequenziale dell'alfabeto.


Attualmente, la codifica più comune è Microsoft Windows, abbreviata in CP1251.

Dalla fine degli anni '90, il problema della standardizzazione della codifica dei caratteri è stato risolto con l'introduzione di un nuovo standard internazionale chiamato Unicode. ... Questa è una codifica a 16 bit, ad es. alloca 2 byte di memoria per ogni carattere. Ovviamente, questo raddoppia la quantità di memoria utilizzata. Ma d'altra parte, una tale tabella di codici consente l'inclusione di un massimo di 65536 caratteri. La specifica completa dello standard Unicode include tutti gli alfabeti esistenti, estinti e creati artificialmente del mondo, nonché molti simboli matematici, musicali, chimici e di altro tipo.

Proviamo a usare una tabella ASCII per immaginare come appariranno le parole nella memoria del computer.

Le parole

Memoria

01100110

01101001

01101100

01100101

01100100

01101001

01110011

01101011

Quando le informazioni di testo vengono immesse in un computer, i caratteri (lettere, numeri, segni) vengono codificati utilizzando vari sistemi di codifica, che consistono in una serie di tabelle di codici situate nelle pagine corrispondenti degli standard per la codifica delle informazioni di testo. In tali tabelle, a ciascun carattere viene assegnato un codice numerico specifico in notazione esadecimale o decimale, ovvero le tabelle di codici riflettono la corrispondenza tra le immagini dei caratteri e i codici numerici e sono progettate per codificare e decodificare informazioni di testo. Quando si immettono informazioni di testo utilizzando la tastiera di un computer, ogni carattere di input viene codificato, ovvero viene convertito in un codice numerico; quando le informazioni di testo vengono emesse su un dispositivo di output del computer (display, stampante o plotter), la sua immagine viene creata utilizzando il codice numerico del carattere. L'assegnazione di uno specifico codice numerico ad un simbolo è frutto di un accordo tra le rispettive organizzazioni nei diversi paesi. Attualmente non esiste un'unica tabella di codici universale che soddisfi le lettere degli alfabeti nazionali dei diversi paesi.

Le moderne tabelle di codici includono parti internazionali e nazionali, ovvero contengono lettere degli alfabeti latini e nazionali, numeri, segni di operazioni aritmetiche e punteggiatura, caratteri matematici e di controllo, simboli pseudografici. Parte internazionale della tabella dei codici basata sullo standard ASCII (codice standard americano per lo scambio di informazioni), codifica la prima metà dei caratteri della tabella dei codici con codici numerici da 0 a 7 F16, oppure in notazione decimale da 0 a 127. Ai tasti funzione (F1, F2, F3, ecc.) della tastiera del PC vengono assegnati codici da 0 a 20 16 (0? 32 10). Nella fig. 3.1 mostra la parte internazionale delle tabelle di codici basate sullo standard ASCII. Le celle della tabella sono numerate rispettivamente in notazione decimale ed esadecimale.

Figura 3.1. Parte internazionale della tabella dei codici (standard ASCII) con numeri di cella presentati in sistema numerico decimale (a) ed esadecimale (b)


La parte nazionale delle tabelle dei codici contiene i codici degli alfabeti nazionali, chiamata anche tabella dei set di caratteri (carattere).

Attualmente, per supportare le lettere dell'alfabeto russo (cirillico), esistono diverse tabelle di codici (codifiche) utilizzate da vari sistemi operativi, il che rappresenta un inconveniente significativo e in alcuni casi porta a problemi associati alle operazioni di decodifica del numero valori dei caratteri. Tavolo 3.1 elenca i nomi delle code page (standard) su cui si trovano le tabelle dei codici (codifiche) dell'alfabeto cirillico.

Tabella 3.1

Uno dei primi standard per la codifica dell'alfabeto cirillico sui computer è stato lo standard KOI8-R. La parte nazionale della tabella dei codici per questo standard è mostrata in Fig. 3.2.

Riso. 3.2. Parte nazionale della tabella dei codici dello standard KOI8-R


Attualmente viene utilizzata anche la tabella dei codici che si trova nella pagina CP866 dello standard per la codifica delle informazioni di testo utilizzate nel sistema operativo. MS DOS o sessione MS DOS codificare l'alfabeto cirillico (Fig. 3.3, un).

Riso. 3.3. La parte nazionale della tabella dei codici, situata nella pagina CP866 (a) e nella pagina CP1251 (b) dello standard di codifica delle informazioni testuali


Attualmente, la tabella dei codici più utilizzata per la codifica dell'alfabeto cirillico si trova nella pagina CP1251 dello standard corrispondente, utilizzato nei sistemi operativi della famiglia finestre aziende Microsoft(fig. 3.2, B). In tutte le tabelle codici presentate, ad eccezione della tabella standard Unicode, 8 cifre binarie (8 bit) sono allocate per codificare un carattere.

Alla fine del secolo scorso è apparso un nuovo standard internazionale Unicode, in cui un carattere è rappresentato da un codice binario a due byte. L'applicazione di questo standard è una continuazione dello sviluppo di uno standard internazionale universale che consente di risolvere il problema della compatibilità delle codifiche dei caratteri nazionali. Con questo standard si possono codificare 2 16 = 65536 caratteri diversi. Nella fig. 3.4 è la tabella dei codici 0400 (alfabeto russo) dello standard Unicode.

Riso. 3.4. Tabella codici 0400 dello standard Unicode


Chiariamo con un esempio quanto detto in merito alla codifica delle informazioni testuali.

Esempio 3.1

Codificare la parola "Computer" come una sequenza di numeri decimali ed esadecimali utilizzando la codifica CP1251. Quali caratteri verranno visualizzati nelle tabelle dei codici CP866 e KOI8-R quando si utilizza il codice ricevuto.

Sequenze di codici esadecimali e binari della parola "Computer" basate sulla tabella di codifica CP1251 (vedi Fig. 3.3, B) sarà simile a questo:

Questa sequenza di codice nelle codifiche CP866 e KOI8-R risulterà nella visualizzazione dei seguenti caratteri:

Per convertire documenti di testo in lingua russa da uno standard di codifica del testo a un altro, vengono utilizzati programmi speciali: convertitori. I convertitori sono generalmente integrati in altri programmi. Un esempio potrebbe essere un programma browser - Internet Explorer (IE), che ha un convertitore integrato. Il programma browser è un programma speciale per la visualizzazione dei contenuti pagine web nella rete informatica globale Internet. Utilizziamo questo programma per confermare il risultato della visualizzazione dei simboli ottenuti nell'esempio 3.1. Per fare ciò, eseguiremo le seguenti azioni.

1. Avvia il programma Blocco note (Bloc notes). Programma Blocco note nel sistema operativo Windows XP viene lanciato con il comando: [Button Inizio- Programmi - Standard - Blocco note]. Nella finestra del Blocco note aperta, digita la parola "Computer" utilizzando la sintassi del linguaggio di markup dei documenti ipertestuali - HTML (Hyper Text Markup Language). Questa lingua viene utilizzata per creare documenti su Internet. Il testo dovrebbe assomigliare a questo:

Compywater

, dove

e

tag (costrutti speciali) della lingua HTML per contrassegnare le intestazioni. Nella fig. 3.5 mostra il risultato di queste azioni.

Riso. 3.5. Visualizzazione del testo in una finestra del Blocco note


Salviamo questo testo eseguendo il comando: [File - Salva con nome...] nella cartella corrispondente del computer, quando salviamo il testo, assegneremo un nome al file - Approx, con l'estensione del file. html.

2. Esegui il programma Internet Explorer, eseguendo il comando: [Pulsante Inizio- Programmi - Internet Explorer]. All'avvio del programma, la finestra mostrata in Fig. 3.6

Riso. 3.6. Finestra di accesso offline


Seleziona e attiva il pulsante disconnesso in questo caso, il computer non sarà connesso a Internet globale. Apparirà la finestra principale del programma Microsoft Internet Explorer, mostrato in Fig. 3.7.

Riso. 3.7. Finestra principale di Microsoft Internet Explorer


Eseguire il seguente comando: [File - Apri], apparirà una finestra (Fig. 3.8), nella quale si dovrà specificare il nome del file e cliccare ok o premere il pulsante Panoramica... e trova il file App.html.

Riso. 3.8. Finestra aperta


La finestra principale di Internet Explorer assumerà la forma mostrata in Fig. 3.9. La finestra visualizza la parola "Computer". Inoltre, utilizzando il menu in alto del programma Internet Explorer, eseguire il seguente comando: [Visualizza - Codifica - Cirillico (DOS)]. Dopo aver eseguito questo comando nella finestra del programma Internet plorer i simboli riportati in fig. 3.10. Quando si esegue il comando: [Visualizza - Codifica - Cirillico (KOI8-R)] nella finestra del programma Internet Explorer i simboli riportati in fig. 3.11.

Riso. 3.9. Caratteri visualizzati durante la codifica CP1251


Riso. 3.10. Caratteri visualizzati quando la codifica CP866 è abilitata per la sequenza di codice rappresentata nella codifica CP1251


Riso. 3.11. Caratteri visualizzati quando la codifica KOI8-R è attivata per la sequenza di codice rappresentata nella codifica CP1251


Quindi, ottenuto con il programma Internet Explorer le sequenze di caratteri coincidono con le sequenze di caratteri ottenute utilizzando le tabelle di codici CP866 e KOI8-R nell'esempio 3.1.

3.2. Codifica delle informazioni grafiche

Le informazioni grafiche presentate sotto forma di disegni, fotografie, diapositive, immagini in movimento (animazione, video), diagrammi, disegni, possono essere create e modificate utilizzando un computer, mentre è opportunamente codificato. Attualmente esiste un numero abbastanza elevato di applicazioni per l'elaborazione di informazioni grafiche, ma tutte implementano tre tipi di grafica computerizzata: raster, vettoriale e frattale.

Se dai un'occhiata più da vicino all'immagine grafica sullo schermo del monitor del computer, puoi vedere un gran numero di punti multicolori (pixel - dall'inglese. pixel, istruito da elemento immagine - elemento immagine), che, una volta messi insieme, formano una data immagine grafica. Da ciò possiamo concludere: un'immagine grafica in un computer è codificata in un certo modo e deve essere presentata sotto forma di file grafico. Il file è l'unità strutturale principale dell'organizzazione e della memorizzazione dei dati in un computer e in questo caso dovrebbe contenere informazioni su come rappresentare questo insieme di punti sullo schermo del monitor.

I file creati sulla base della grafica vettoriale contengono informazioni sotto forma di dipendenze matematiche (funzioni matematiche che descrivono relazioni lineari) e i dati corrispondenti su come costruire un'immagine di un oggetto utilizzando segmenti di linea (vettori) quando viene visualizzato sul monitor di un computer .

I file creati sulla base della grafica raster presuppongono la memorizzazione dei dati su ogni singolo punto dell'immagine. Per visualizzare la grafica raster, non sono necessari complessi calcoli matematici, è sufficiente ottenere i dati su ciascun punto dell'immagine (le sue coordinate e il colore) e visualizzarli sullo schermo del computer.

Nel processo di codifica di un'immagine, viene eseguito il suo campionamento spaziale, ovvero l'immagine viene divisa in punti separati e a ciascun punto viene assegnato un codice colore (giallo, rosso, blu, ecc.). Per codificare ogni punto di un'immagine grafica a colori, viene applicato il principio di scomposizione di un colore arbitrario nelle sue componenti principali, che sono tre colori primari: rosso (la parola inglese Rosso, denotare con la lettera A), verde (Verde, denotare con la lettera G), blu (Blu, denotare con faggio V). Qualsiasi punto di colore percepito dall'occhio umano può essere ottenuto per addizione (proporzionale) additiva (miscelazione) dei tre colori primari: rosso, verde e blu. Questo sistema di codifica è chiamato sistema di colori. RGB. File grafici che utilizzano il sistema di colori RGB, rappresentare ogni punto dell'immagine come una tripletta di colori - tre valori numerici R, G e V, corrispondenti alle intensità dei colori rosso, verde e blu. Il processo di codifica di un'immagine grafica viene eseguito utilizzando vari mezzi tecnici (scanner, fotocamera digitale, videocamera digitale, ecc.); il risultato è una bitmap. Quando si riproduce la grafica a colori su un monitor di computer a colori, il colore di ciascun punto (pixel) di tale immagine si ottiene mescolando tre colori primari R, G e B.

La qualità di un'immagine raster è determinata da due parametri principali: la risoluzione (il numero di punti orizzontalmente e verticalmente) e la tavolozza dei colori utilizzata (il numero di colori specificati per ciascun punto nell'immagine). La risoluzione viene impostata specificando il numero di punti in orizzontale e in verticale, ad esempio 800 per 600 punti.

Esiste una relazione tra il numero di colori specificato per un punto in un'immagine raster e la quantità di informazioni che devono essere selezionate per memorizzare il colore di un punto, che è determinata dalla relazione (formula di R. Hartley):

dove io- la quantità di informazioni; N - il numero di colori dato al punto.

La quantità di informazioni necessarie per memorizzare il colore di un punto è anche chiamata profondità del colore o qualità del colore.

Quindi, se il numero di colori specificato per il punto immagine è N = 256, allora la quantità di informazioni necessarie per memorizzarlo (profondità di colore) secondo la formula (3.1) sarà pari a io= 8 bit.

I computer utilizzano varie modalità di visualizzazione grafica per visualizzare informazioni grafiche. Va notato qui che oltre alla modalità grafica del monitor, esiste anche una modalità testo, in cui lo schermo del monitor è convenzionalmente suddiviso in 25 righe di 80 caratteri per riga. Queste modalità grafiche sono caratterizzate dalla risoluzione dello schermo del monitor e dalla qualità del colore (profondità del colore). Per impostare la modalità grafica dello schermo del monitor nel sistema operativo MS Windows XP devi eseguire il comando: [Button Inizio- Impostazioni - Pannello di controllo - Schermo]. Nella finestra di dialogo "Proprietà: Visualizzazione" che appare (Fig. 3.12), selezionare la scheda "Parametri" e utilizzare il dispositivo di scorrimento "Risoluzione schermo" per selezionare la risoluzione dello schermo appropriata (800 x 600 pixel, 1024 x 768 pixel, ecc. ). Utilizzando l'elenco a discesa "Qualità del colore", è possibile selezionare la profondità del colore - "Massimo (32 bit)", "Medio (16 bit)", ecc., mentre il numero di colori assegnati a ciascun punto dell'immagine sarà essere rispettivamente pari a 2 32 (4294967296), 2 16 (65536), ecc.

Riso. 3.12. Finestra di dialogo Proprietà di visualizzazione


Per implementare ciascuna delle modalità grafiche dello schermo del monitor, è necessario un certo volume di informazioni della memoria video del computer. Volume di informazioni richiesto della memoria video (V)è determinato dalla relazione

dove A - numero di punti immagine sullo schermo del monitor (K = A · B); UN - il numero di punti orizzontali sullo schermo del monitor; V- il numero di punti verticali sullo schermo del monitor; io- la quantità di informazioni (profondità del colore).

Quindi, se lo schermo del monitor ha una risoluzione di 1024 per 768 pixel e una tavolozza di 65 536 colori, la profondità del colore secondo la formula (3.1) sarà I = log 2 65 538 = 16 bit, il numero di punti immagine sarà: K = 1024 x 768 = 786432 e il volume di informazioni richiesto della memoria video in conformità con (3.2) sarà uguale a

V = 786432 16 bit = 12582912 bit = 1572864 byte = 1536 KB = 1,5 MB.

In conclusione, va notato che oltre alle caratteristiche elencate, le caratteristiche più importanti del monitor sono le dimensioni geometriche del suo schermo e dei punti dell'immagine. Le dimensioni geometriche dello schermo sono impostate dalla diagonale del monitor. La dimensione della diagonale dei monitor è impostata in pollici (1 pollice = 1"= 25,4 mm) e può assumere valori pari a: 14", 15", 17", 21"ecc. Le moderne tecnologie di produzione dei monitor possono fornire un dimensione dei pixel pari a 0,22 mm.

Pertanto, per ogni monitor esiste una risoluzione dello schermo fisicamente massima possibile, che è determinata dalla dimensione della sua diagonale e dalla dimensione del punto dell'immagine.

Esercizi per l'autorealizzazione

1.Uso del programma MS Excel convertire le tabelle di codici ASCII, CP866, CP1251, KOI8-R in tabelle del modulo: scrivere lettere maiuscole e poi minuscole latine e cirilliche in ordine alfabetico nelle celle della prima colonna delle tabelle; la terza colonna - le lettere corrispondenti ai codici nel sistema numerico esadecimale. I valori del codice devono essere selezionati dalle tabelle dei codici corrispondenti.

2. Codifica e annota le seguenti parole come una sequenza di numeri in notazione decimale ed esadecimale:

un) Internet Explorer, B) Microsoft Office; v) Corel Draw.

Eseguire la codifica utilizzando la tabella di codifica ASCII aggiornata ottenuta nell'esercizio precedente.

3. Decodifica le sequenze di numeri scritte nel sistema numerico esadecimale utilizzando la tabella di codifica aggiornata 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. Come apparirà la parola "Cybernetics" scritta nella codifica CP1251 quando si utilizzano le codifiche CP866 e KOI8-R? Verifica i risultati ottenuti utilizzando il programma Internet Explorer.

5. Utilizzando la tabella codici mostrata in fig. 3.1 un, decodificare le seguenti sequenze di codici scritte in notazione binaria:

a) 01010111 01101111 01110010 01100100;

b) 01000101 01111000 01100011 01100101 01101100;

c) 01000001 01100011 01100011 01100101 01110011 01110011.

6. Determinare il volume informativo della parola "Economy" codificata utilizzando le tabelle di codici CP866, CP1251, Unicode e KOI8-R.

7. Determinare il volume di informazioni del file ottenuto come risultato della scansione di un'immagine a colori di 12 x 12 cm La risoluzione dello scanner utilizzato per scansionare questa immagine è di 600 dpi. Lo scanner imposta la profondità del colore in pixel dell'immagine a 16 bit.

Risoluzione scanner 600 dpi (punto di pollice - punti per pollice) determina la capacità di uno scanner con tale risoluzione di distinguere 600 punti su un segmento di 1 pollice.

8. Determinare il volume di informazioni del file ottenuto come risultato della scansione di un'immagine a colori di formato A4. La risoluzione dello scanner utilizzato per scansionare questa immagine è 1200 dpi. Lo scanner imposta la profondità del colore in pixel dell'immagine a 24 bit.

9. Determinare il numero di colori nella tavolozza a profondità di colore di 8, 16, 24 e 32 bit.

10. Determinare la quantità di memoria video richiesta per le modalità di visualizzazione grafica del monitor 640 per 480, 800 per 600, 1024 per 768 e 1280 per 1024 pixel alla profondità di colore del punto immagine di 8, 16, 24 e 32 bit. I risultati sono tabulati. Sviluppa in MS Excel un programma per l'automazione dei calcoli.

11. Determinare il numero massimo di colori che possono essere utilizzati per memorizzare un'immagine da 32 per 32 pixel se il computer dispone di 2 KB di memoria allocata per l'immagine.

12. Determinare la massima risoluzione possibile di uno schermo monitor con una lunghezza diagonale di 15 "e una dimensione in pixel di 0,28 mm.

13. Quali modalità grafiche di funzionamento del monitor può fornire una memoria video da 64 MB?

Incenerimento

I. Storia della codificazione delle informazioni ……………………………… ..3

II. Codifica delle informazioni ………………………………………… 4

III. Codifica delle informazioni di testo …………………………… .4

IV. Tipi di tabelle di codifica ………………………………………… ... 6

V. Calcolo della quantità di informazioni di testo ……………………… 14

Elenco della letteratura utilizzata ………………………………… ..16

io . Cronologia della codifica delle informazioni

L'umanità ha utilizzato la crittografia (codifica) del testo dal momento stesso in cui è apparsa la prima informazione segreta. Prima di te ci sono diversi metodi di codifica del testo che sono stati inventati in varie fasi dello sviluppo del pensiero umano:

La crittografia è una scrittura segreta, un sistema per alterare una lettera con lo scopo di rendere il testo incomprensibile ai non iniziati;

Codice Morse o codice telegrafico irregolare, in cui ogni lettera o carattere è rappresentato dalla propria combinazione di tessere di breve corrente elettrica (punti) e tessere di durata tripla (trattini);

la lingua dei segni è una lingua dei segni utilizzata da persone con problemi di udito.

Uno dei primi metodi di crittografia conosciuti prende il nome dall'imperatore romano Giulio Cesare (I secolo aC). Questo metodo si basa sulla sostituzione di ogni lettera del testo crittografato con un'altra, spostando l'alfabeto dalla lettera originale di un numero fisso di caratteri e l'alfabeto viene letto in un cerchio, cioè dopo la lettera i, a è considerato. Quindi la parola "byte" quando viene spostata di due caratteri a destra è codificata con la parola "gvlf". Il processo inverso di decodifica di una determinata parola: è necessario sostituire ogni lettera crittografata con la seconda a sinistra di essa.

II. Codifica delle informazioni

Un codice è un insieme di convenzioni (o segnali) per registrare (o trasmettere) alcuni concetti predefiniti.

La codifica delle informazioni è il processo di formazione di una rappresentazione specifica delle informazioni. In un senso più stretto, il termine "codifica" è spesso inteso come una transizione da una forma di presentazione delle informazioni a un'altra, più conveniente per l'archiviazione, la trasmissione o l'elaborazione.

Di solito, ogni immagine quando è codificata (a volte si dice - crittografata) è rappresentata da un segno separato.

Un segno è un elemento di un insieme finito di elementi distinti.

In un senso più stretto, il termine "codifica" è spesso inteso come una transizione da una forma di presentazione delle informazioni a un'altra, più conveniente per l'archiviazione, la trasmissione o l'elaborazione.

Il computer può elaborare informazioni di testo. Quando viene immessa in un computer, ogni lettera viene codificata con un certo numero e, quando viene inviata a dispositivi esterni (schermo o stampa), le immagini delle lettere vengono costruite per la percezione umana utilizzando questi numeri. La corrispondenza tra un insieme di lettere e numeri è chiamata codifica dei caratteri.

Di norma, tutti i numeri in un computer sono rappresentati utilizzando zero e uno (e non dieci cifre, come è consuetudine per le persone). In altre parole, i computer di solito funzionano in un sistema di numeri binari, poiché i dispositivi per la loro elaborazione sono molto più semplici. L'immissione di numeri in un computer e la loro emissione per la lettura umana può essere eseguita nella consueta forma decimale e tutte le trasformazioni necessarie vengono eseguite dai programmi in esecuzione sul computer.

III. Codifica delle informazioni di testo

Le stesse informazioni possono essere presentate (codificate) in diverse forme. Con l'avvento dei computer, è diventato necessario codificare tutti i tipi di informazioni con cui si occupano sia una singola persona che l'intera umanità. Ma l'umanità ha iniziato a risolvere il problema della codifica delle informazioni molto prima dell'avvento dei computer. Le straordinarie conquiste dell'umanità - la scrittura e l'aritmetica - non sono altro che un sistema per codificare la parola e l'informazione numerica. L'informazione non appare mai nella sua forma pura, è sempre in qualche modo presentata, in qualche modo codificata.

La codifica binaria è uno dei modi comuni di rappresentare le informazioni. Nei computer, nei robot e nelle macchine utensili a controllo numerico, di norma, tutte le informazioni di cui si occupa il dispositivo sono codificate sotto forma di parole in un alfabeto binario.

Dalla fine degli anni '60, i computer sono stati sempre più utilizzati per elaborare informazioni testuali e attualmente la maggior parte dei personal computer nel mondo (e la maggior parte del tempo) è impegnata nell'elaborazione di informazioni testuali. Tutti questi tipi di informazioni in un computer sono rappresentati in codice binario, ovvero viene utilizzato un alfabeto con una potenza di due (solo due caratteri 0 e 1). Ciò è dovuto al fatto che è conveniente rappresentare l'informazione sotto forma di una sequenza di impulsi elettrici: non c'è impulso (0), c'è impulso (1).

Tale codifica è solitamente chiamata binaria e le sequenze logiche di zero e uno sono chiamate linguaggio macchina.

Dal punto di vista di un computer, il testo è costituito da singoli caratteri. I simboli includono non solo lettere (maiuscole o minuscole, latine o russe), ma anche numeri, segni di punteggiatura, caratteri speciali come "=", "(", "&", ecc. e persino (prestare particolare attenzione!) spazi tra parole.

I testi vengono inseriti nella memoria del computer utilizzando la tastiera. Le lettere, i numeri, i segni di punteggiatura e altri simboli sono scritti sui tasti. Entrano nella RAM in codice binario. Ciò significa che ogni carattere è rappresentato da un codice binario a 8 bit.

Tradizionalmente, per codificare un carattere, viene utilizzata una quantità di informazioni pari a 1 byte, ovvero I = 1 byte = 8 bit. Utilizzando una formula che collega il numero di eventi possibili K e la quantità di informazioni I, puoi calcolare quanti simboli diversi possono essere codificati (assumendo che i simboli siano eventi possibili): K = 2 I = 2 8 = 256, cioè , per La rappresentazione di informazioni testuali può utilizzare un alfabeto con una capacità di 256 caratteri.

Questo numero di caratteri è abbastanza per rappresentare le informazioni testuali, comprese le lettere maiuscole e minuscole degli alfabeti russi e latini, numeri, segni, simboli grafici, ecc.

La codifica significa che a ciascun carattere viene assegnato un codice decimale univoco da 0 a 255 o il codice binario corrispondente da 00000000 a 11111111. Pertanto, una persona distingue i caratteri per il loro stile e un computer per il loro codice.

La comodità della codifica dei caratteri in byte è ovvia, poiché un byte è la più piccola parte indirizzabile della memoria e, quindi, il processore può accedere a ciascun carattere separatamente, eseguendo l'elaborazione del testo. D'altra parte, 256 caratteri è un numero abbastanza sufficiente per rappresentare un'ampia varietà di informazioni sui caratteri.

Nel processo di visualizzazione di un carattere sullo schermo del computer, viene eseguito il processo inverso: la decodifica, ovvero la conversione del codice del carattere nella sua immagine. È importante che l'assegnazione di un codice specifico a un simbolo sia una convenzione, fissata nella tabella dei codici.

Ora sorge la domanda, che tipo di codice binario a otto bit associare a ciascun carattere. È chiaro che questa è una questione condizionale, puoi trovare molti metodi di codifica.

Tutti i caratteri dell'alfabeto del computer sono numerati da 0 a 255. Ogni numero corrisponde a un codice binario di otto bit da 00000000 a 11111111. Questo codice è semplicemente il numero ordinale del carattere nel sistema numerico binario.

IV ... Tipi di tabelle di codifica

La tabella in cui tutti i caratteri dell'alfabeto del computer sono assegnati ai numeri di serie è chiamata tabella di codifica.

Diverse tabelle di codifica vengono utilizzate per diversi tipi di computer.

Viene adottata come standard internazionale la tabella dei codici ASCII (American Standard Code for Information Interchange), che codifica la prima metà dei caratteri con codici numerici da 0 a 127 (i codici da 0 a 32 sono assegnati non ai caratteri, ma ai tasti funzione) .

La tabella ASCII è divisa in due parti.

Lo standard internazionale è solo la prima metà della tabella, ad es. caratteri con numeri da 0 (00000000) a 127 (01111111).

Struttura della tabella di codifica ASCII

Numero di serie Il codice Simbolo
0 - 31 00000000 - 00011111

I simboli con numeri da 0 a 31 sono generalmente chiamati caratteri di controllo.

La loro funzione è controllare il processo di visualizzazione del testo sullo schermo o la stampa, dare un segnale sonoro, contrassegnare il testo, ecc.

32 - 127 0100000 - 01111111

Parte standard della tabella (inglese). Ciò include lettere minuscole e maiuscole dell'alfabeto latino, cifre decimali, segni di punteggiatura, tutti i tipi di parentesi, simboli commerciali e di altro tipo.

Il carattere 32 è uno spazio, ad es. posizione vuota nel testo.

Tutti gli altri si riflettono in certi segni.

128 - 255 10000000 - 11111111

Parte alternativa del tavolo (russo).

La seconda metà della tabella dei codici ASCII, chiamata code page (128 codici, che iniziano da 10000000 e terminano con 11111111), può avere diverse varianti, ogni variante ha il proprio numero.

La tabella codici viene utilizzata principalmente per ospitare alfabeti nazionali diversi dal latino. Nelle codifiche nazionali russe, questa parte della tabella contiene i simboli dell'alfabeto russo.

La prima metà della tabella ASCII

Si richiama l'attenzione sul fatto che nella tabella di codifica le lettere (maiuscole e minuscole) sono disposte in ordine alfabetico e i numeri sono ordinati in ordine crescente di valori. Questa osservanza dell'ordine lessicografico nella disposizione dei caratteri è chiamata il principio della codifica sequenziale dell'alfabeto.

Per le lettere dell'alfabeto russo si osserva anche il principio della codifica sequenziale.

La seconda metà della tabella ASCII

Sfortunatamente, ci sono attualmente cinque diverse codifiche cirilliche (KOI8-R, Windows. MS-DOS, Macintosh e ISO). Per questo motivo, spesso sorgono problemi con il trasferimento di testo russo da un computer a un altro, da un sistema software a un altro.

Cronologicamente, uno dei primi standard per la codifica delle lettere russe sui computer era KOI8 ("Codice di scambio di informazioni, 8 bit"). Questa codifica è stata utilizzata negli anni '70 sui computer della serie di computer ES e dalla metà degli anni '80 ha iniziato a essere utilizzata nelle prime versioni russificate del sistema operativo UNIX.

Dall'inizio degli anni '90, epoca del predominio del sistema operativo MS DOS, rimane la codifica CP866 ("CP" sta per "Code Page").

I computer Apple che eseguono Mac OS utilizzano la propria codifica Mac.

Inoltre, l'Organizzazione internazionale per la standardizzazione (International Standards Organization, ISO) ha approvato un'altra codifica chiamata ISO 8859-5 come standard per la lingua russa.

Attualmente, la codifica più comune è Microsoft Windows, abbreviata in CP1251. Introdotto da Microsoft; tenendo conto dell'ampia distribuzione di sistemi operativi (OS) e altri prodotti software di questa azienda nella Federazione Russa, ha trovato un'ampia distribuzione.

Dalla fine degli anni '90, il problema della standardizzazione della codifica dei caratteri è stato risolto con l'introduzione di un nuovo standard internazionale chiamato Unicode.

Questa è una codifica a 16 bit, ad es. alloca 2 byte di memoria per ogni carattere. Ovviamente, questo raddoppia la quantità di memoria utilizzata. Ma d'altra parte, una tale tabella di codici consente l'inclusione di un massimo di 65536 caratteri. La specifica completa dello standard Unicode include tutti gli alfabeti esistenti, estinti e creati artificialmente del mondo, nonché molti simboli matematici, musicali, chimici e di altro tipo.

Rappresentazione interna delle parole nella memoria del computer

usando la tabella ASCII

A volte capita che un testo composto da lettere dell'alfabeto russo, ricevuto da un altro computer, non possa essere letto - una sorta di "senza senso" è visibile sullo schermo del monitor. Ciò è dovuto al fatto che i computer utilizzano una codifica diversa dei caratteri della lingua russa.

Pertanto, ogni codifica è specificata dalla propria tabella di codici. Come puoi vedere dalla tabella, allo stesso codice binario vengono assegnati simboli diversi in codifiche diverse.

Ad esempio, una sequenza di codici numerici 221, 194, 204 nella codifica CP1251 forma la parola "computer", mentre in altre codifiche sarà un insieme di caratteri senza significato.

Fortunatamente, nella maggior parte dei casi, l'utente non deve preoccuparsi di convertire documenti di testo, poiché ciò viene fatto da speciali programmi di conversione integrati nelle applicazioni.

V ... Calcolo della quantità di informazioni di testo

Obiettivo 1: Codificare la parola “Roma” utilizzando le tabelle di codifica KOI8-R e CP1251.

Soluzione:

Obiettivo 2: Supponendo che ogni carattere sia codificato in un byte, stimare il volume di informazioni della seguente frase:

“Mio zio ha le regole più oneste,

Quando è gravemente malato,

Si è fatto rispettare

E non avrei potuto immaginarlo meglio".

Soluzione: Questa frase ha 108 caratteri, inclusi segni di punteggiatura, virgolette e spazi. Moltiplichiamo questo numero per 8 bit. Otteniamo 108 * 8 = 864 bit.

Obiettivo 3: I due testi contengono lo stesso numero di caratteri. Il primo testo è scritto in russo e il secondo nella lingua della tribù Naguri, il cui alfabeto è composto da 16 caratteri. Il cui testo contiene più informazioni?

Soluzione:

1) I = K * a (il volume delle informazioni del testo è uguale al prodotto del numero di caratteri per il peso delle informazioni di un carattere).

2) Perché entrambi i testi hanno lo stesso numero di caratteri (K), la differenza dipende dall'informatività di un carattere dell'alfabeto (a).

3) 2 a1 = 32, cioè a 1 = 5 bit, 2 a2 = 16, cioè a 2 = 4 bit.

4) I 1 = K * 5 bit, I 2 = K * 4 bit.

5) Ciò significa che il testo scritto in russo è 5/4 volte più informativo.

Compito 4: La dimensione del messaggio, contenente 2048 caratteri, era di 1/512 di MB. Determinare la cardinalità dell'alfabeto.

Soluzione:

1) I = 1/512 * 1024 * 1024 * 8 = 16384 bit - il volume di informazioni del messaggio è stato convertito in bit.

2) a = I / K = 16384/1024 = 16 bit - cade su un carattere dell'alfabeto.

3) 2 * 16 * 2048 = 65536 caratteri - la potenza dell'alfabeto utilizzato.

Compito 5: La stampante laser Canon LBP stampa a una media di 6,3 Kbps. Quanto tempo occorre per stampare un documento di 8 pagine se si sa che in media ci sono 45 righe su una pagina, 70 caratteri per riga (1 carattere - 1 byte)?

Soluzione:

1) Trova la quantità di informazioni contenute in 1 pagina: 45 * 70 * 8 bit = 25200 bit

2) Trova la quantità di informazioni su 8 pagine: 25200 * 8 = 201600 bit

3) Portiamo a unità di misura uniformi. Per fare ciò, traduci Mbit in bit: 6,3 * 1024 = 6451,2 bit / s.

4) Trovare il tempo di stampa: 201600: 6451.2 = 31 secondi.

Bibliografia

1. Ageev V.M. Teoria dell'informazione e della codifica: discretizzazione e codifica delle informazioni di misura. - M.: MAI, 1977.

2. Kuzmin IV, Kedrus V.A. Fondamenti di teoria dell'informazione e codifica. - Kiev, scuola Vishcha, 1986.

3. I metodi più semplici di crittografia del testo / D.М. Zlatopolsky. - M.: Chistye Prudy, 2007 - 32 p.

4. Ugrinovich N.D. Informatica e tecnologia dell'informazione. Libro di testo per i gradi 10-11 / N.D. Ugrinovich. - M.: BINOM. Laboratorio della conoscenza, 2003 .-- 512 p.

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

Materiale di studio autonomo relativo alle Lezioni 2

codifica ASCII

Tabella dei codici ASCII (ASCII - Codice standard americano per lo scambio di informazioni - Codice standard americano per lo scambio di informazioni).

In totale, è possibile codificare 256 caratteri diversi utilizzando la tabella di codifica ASCII (Figura 1). Questa tabella è divisa in due parti: quella principale (con codici da OOh a 7Fh) e aggiuntiva (da 80h a FFh, dove la lettera h indica che il codice appartiene al sistema numerico esadecimale).

Immagine 1

Per codificare un carattere dalla tabella, vengono allocati 8 bit (1 byte). Durante l'elaborazione delle informazioni di testo, un byte può contenere il codice di un determinato simbolo: lettere, numeri, segni di punteggiatura, segni di azione, ecc. Ogni carattere ha il suo codice sotto forma di intero. In questo caso tutti i codici vengono raccolti in apposite tabelle chiamate tabelle di codifica. Con il loro aiuto, il codice del carattere viene convertito nella sua rappresentazione visibile sullo schermo del monitor. Di conseguenza, qualsiasi testo nella memoria del computer viene rappresentato come una sequenza di byte con codici carattere.

Ad esempio, la parola ciao! sarà codificato come segue (tabella 1).

Tabella 1

Codice binario

Codice decimale

La Figura 1 mostra i caratteri inclusi nella codifica ASCII standard (inglese) ed estesa (russa).

La prima metà della tabella ASCII è standardizzata. Contiene codici di controllo (dalle 00h alle 20h e 77h). Questi codici sono stati rimossi dalla tabella, poiché non si applicano agli elementi di testo. Anche la punteggiatura e i segni matematici si trovano qui: 2lh -!, 26h - &, 28h - (, 2Bh - +, ..., lettere latine grandi e piccole: 41h - A, 61h - а.

La seconda metà della tabella contiene caratteri nazionali, simboli pseudografici da cui è possibile costruire tabelle e segni matematici speciali. La parte inferiore della tabella di codifica può essere sostituita utilizzando i driver appropriati - programmi ausiliari di controllo. Questa tecnica consente di utilizzare più caratteri e i relativi caratteri tipografici.

Il display per ogni codice carattere deve visualizzare un'immagine del personaggio sullo schermo - non solo un codice digitale, ma un'immagine corrispondente ad esso, poiché ogni carattere ha la sua forma. La descrizione della forma di ciascun simbolo è memorizzata in una speciale memoria del display: un generatore di caratteri. L'evidenziazione di un simbolo sullo schermo di visualizzazione del PC IBM, ad esempio, viene eseguita utilizzando punti che formano una matrice simbolica. Ogni pixel in tale matrice è un elemento dell'immagine e può essere luminoso o scuro. Il punto scuro è codificato dal numero 0, la luce (luminosa) - 1. Se rappresenti i pixel scuri nel campo matrice del segno con un punto e i pixel chiari con un asterisco, puoi rappresentare graficamente la forma del simbolo .

Persone in diversi paesi usano simboli per scrivere parole nelle loro lingue native. La maggior parte delle applicazioni odierne, inclusi i sistemi di posta elettronica e i browser Web, sono a 8 bit puri, il che significa che possono visualizzare e interpretare solo caratteri a 8 bit secondo lo standard ISO-8859-1.

Ci sono più di 256 caratteri nel mondo (se prendiamo in considerazione le lingue cirillico, arabo, cinese, giapponese, coreano e tailandese) e compaiono sempre più caratteri. E questo crea le seguenti lacune per molti utenti:

Non è possibile utilizzare nello stesso documento caratteri di diversi set di codifica. Poiché ogni documento di testo utilizza il proprio set di codifiche, ci sono grandi difficoltà con il riconoscimento automatico del testo.

Appaiono nuovi simboli (ad esempio: Euro), a seguito dei quali l'ISO sta sviluppando un nuovo standard ISO-8859-15, che è molto simile allo standard ISO-8859-1. La differenza è la seguente: dalla tabella di codifica della vecchia norma ISO-8859-1 sono stati rimossi i simboli per la designazione di vecchie valute non attualmente utilizzate per fare spazio a simboli appena comparsi (come l'Euro ). Di conseguenza, gli utenti possono avere gli stessi documenti sui propri dischi, ma con codifiche diverse. La soluzione a questi problemi è l'adozione di un unico insieme internazionale di codifiche chiamato codifica universale o Unicode.

codifica Unicode

Lo standard è stato proposto nel 1991 dall'Unicode Consortium, Unicode Inc., un'organizzazione senza scopo di lucro. L'uso di questo standard consente di codificare un numero molto elevato di caratteri provenienti da diversi script: nei documenti Unicode possono coesistere caratteri cinesi, caratteri matematici, lettere dell'alfabeto greco, latino e cirillico, quindi non è necessario cambiare codepage.

Lo standard è costituito da due sezioni principali: il set di caratteri universali (UCS) e il formato di trasformazione Unicode (UTF). Il set di caratteri universale definisce una corrispondenza uno a uno dei caratteri con i codici - elementi dello spazio del codice che rappresentano numeri interi non negativi. La famiglia delle codifiche definisce la rappresentazione macchina di una sequenza di codici UCS.

Lo standard Unicode è stato sviluppato con l'obiettivo di creare una codifica dei caratteri uniforme per tutte le lingue scritte moderne e molte antiche. Ogni carattere in questo standard è codificato a 16 bit, il che gli consente di coprire un numero di caratteri incomparabilmente maggiore rispetto alle codifiche a 8 bit precedentemente accettate. Un'altra importante differenza tra Unicode e altri sistemi di codifica è che non solo assegna un codice univoco a ciascun carattere, ma definisce anche varie caratteristiche di questo carattere, ad esempio:

    tipo di carattere (lettera maiuscola, lettera minuscola, numero, segno di punteggiatura, ecc.);

    attributi del carattere (visualizzazione da sinistra a destra o da destra a sinistra, spazio, interruzione di riga, ecc.);

    la corrispondente lettera maiuscola o minuscola (rispettivamente per le lettere minuscole e maiuscole);

    il valore numerico corrispondente (per i caratteri numerici).

L'intera gamma di codici da 0 a FFFF è divisa in diversi sottoinsiemi standard, ciascuno dei quali corrisponde all'alfabeto di una determinata lingua o a un gruppo di caratteri speciali simili nelle loro funzioni. Il diagramma seguente fornisce un elenco generale dei sottoinsiemi Unicode 3.0 (Figura 2).

Immagine 2

Lo standard Unicode è la base per l'archiviazione e il testo in molti moderni sistemi informatici. Tuttavia, non è compatibile con la maggior parte dei protocolli Internet, poiché i suoi codici possono contenere qualsiasi valore di byte e i protocolli di solito utilizzano i byte 00 - 1F e FE - FF come overhead. Per ottenere l'interoperabilità, sono stati sviluppati diversi formati di trasformazione Unicode (UTF, formati di trasformazione Unicode), di cui UTF-8 è oggi il più comune. Questo formato definisce le seguenti regole per convertire ogni codice Unicode in un insieme di byte (da uno a tre) adatti al trasporto tramite protocolli Internet.

Qui x, y, z denotano i bit del codice sorgente che dovrebbero essere estratti, a partire da quello meno significativo, e inseriti nei byte del risultato da destra a sinistra fino a riempire tutte le posizioni specificate.

L'ulteriore sviluppo dello standard Unicode è associato all'aggiunta di nuovi piani linguistici, ad es. caratteri negli intervalli 10000 - 1FFFF, 20000 - 2FFFF, ecc., dove dovrebbe includere la codifica per gli script delle lingue morte che non sono inclusi nella tabella sopra. È stato sviluppato un nuovo formato UTF-16 per codificare questi caratteri aggiuntivi.

Pertanto, ci sono 4 modi principali per codificare i byte Unicode:

UTF-8: 128 caratteri sono codificati in un byte (formato ASCII), 1920 caratteri sono codificati in 2 byte ((caratteri romani, greci, cirillici, copti, armeni, ebraici, arabi), 63488 caratteri sono codificati in 3 byte (caratteri cinesi , giapponese e altri) I restanti 2.147.418.112 caratteri (non ancora utilizzati) possono essere codificati con 4, 5 o 6 byte.

UCS-2: ogni carattere è rappresentato da 2 byte. Questa codifica include solo i primi 65.535 caratteri del formato Unicode.

UTF-16: questa è un'estensione di UCS-2 e include 1 114 112 caratteri Unicode. I primi 65.535 caratteri sono rappresentati da 2 byte, il resto da 4 byte.

USC-4: ogni carattere è codificato in 4 byte.

[Codifiche a 8 bit: ASCII, KOI-8R e CP1251] Le prime tabelle di set di caratteri create negli Stati Uniti non utilizzavano l'ottavo bit in un byte. Il testo è stato presentato come una sequenza di byte, ma l'ottavo bit non è stato preso in considerazione (è stato utilizzato per scopi di servizio).

Lo standard generalmente accettato è diventato il tavolo ASCII(Codice Standard Americano per Interscambio di Informazioni). I primi 32 caratteri ASCII (da 00 a 1F) sono stati utilizzati per caratteri non stampabili. Sono stati progettati per controllare un dispositivo di stampa e simili. Il resto - da 20 a 7F - sono caratteri normali (stampabili).

Tabella 1 - Codifica ASCII

dicembreEsadecimaleottobreCharDescrizione
0 0 000 nullo
1 1 001 inizio della rubrica
2 2 002 inizio del testo
3 3 003 fine del testo
4 4 004 fine della trasmissione
5 5 005 inchiesta
6 6 006 riconoscere
7 7 007 campana
8 8 010 backspace
9 9 011 tab orizzontale
10 UN 012 nuova linea
11 B 013 tab verticale
12 C 014 nuova pagina
13 D 015 ritorno a capo
14 E 016 spostare fuori
15 F 017 spostamento in
16 10 020 fuga collegamento dati
17 11 021 controllo del dispositivo 1
18 12 022 controllo del dispositivo 2
19 13 023 controllo del dispositivo 3
20 14 024 controllo del dispositivo 4
21 15 025 riconoscimento negativo
22 16 026 inattivo sincrono
23 17 027 fine trad. bloccare
24 18 030 Annulla
25 19 031 fine del mezzo
26 1A 032 sostituire
27 1B 033 fuga
28 1C 034 separatore di file
29 1D 035 separatore di gruppo
30 1E 036 separatore di record
31 1F 037 separatore di unità
32 20 040 spazio
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 ?
dicembreEsadecimaleottobreChar
64 40 100 @
65 41 101 UN
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 io
74 4A 112 J
75 4B 113 K
76 4C 114 l
77 4D 115 m
78 4E 116 n
79 4F 117 oh
80 50 120 P
81 51 121 Q
82 52 122 R
83 53 123 S
84 54 124 T
85 55 125 tu
86 56 126 V
87 57 127 W
88 58 130 X
89 59 131
90 5A 132 Z
91 5B 133 [
92 5C 134 \
93 5 D 135 ]
94 5E 136 ^
95 5F 137 _
96 60 140 `
97 61 141 un
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 io
106 6A 152 J
107 6B 153 K
108 6C 154 io
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 tu
118 76 166 v
119 77 167 w
120 78 170 X
121 79 171
122 7A 172 z
123 7B 173 {
124 7C 174 |
125 7D 175 }
126 7E 176 ~
127 7F 177 DEL

Come puoi facilmente vedere, questa codifica contiene solo lettere latine e quelle utilizzate in inglese. Ci sono anche aritmetici e altri simboli di servizio. Ma non ci sono lettere russe, né lettere latine speciali per il tedesco o il francese. Questo è facile da spiegare: la codifica è stata sviluppata appositamente come standard americano. Quando i computer iniziarono ad essere usati in tutto il mondo, divenne necessario codificare altri simboli.

Per questo si è deciso di utilizzare l'ottavo bit in ogni byte. Pertanto, erano disponibili altri 128 valori (da 80 a FF), che potevano essere utilizzati per codificare i caratteri. La prima delle tabelle a otto bit è "ASCII esteso" ( ASCII esteso) - includeva varie varianti di caratteri latini usati in alcune lingue dell'Europa occidentale. Conteneva anche altri simboli aggiuntivi, inclusi pseudo grafici.

I caratteri pseudografici consentono, visualizzando solo caratteri di testo, di fornire una parvenza di grafica. Ad esempio, il programma per la gestione dei file FAR Manager funziona con l'aiuto di pseudo-grafica.

Non c'erano lettere russe nella tabella ASCII estesa. In Russia (ex URSS) e in altri stati sono state create le proprie codifiche, che hanno permesso di rappresentare caratteri "nazionali" specifici in file di testo a 8 bit: lettere latine delle lingue polacca e ceca, cirillico (comprese le lettere russe ) e altri alfabeti.

In tutte le codifiche che si sono diffuse, i primi 127 caratteri (cioè i valori dei byte con l'ottavo bit uguale a 0) coincidono con ASCII. Pertanto, un file ASCII funziona in una qualsiasi di queste codifiche; le lettere della lingua inglese sono rappresentate allo stesso modo.

Organizzazione ISO(International Standardization Organization) ha adottato un gruppo di standard ISO 8859... Definisce codifiche a 8 bit per diversi gruppi di lingue. Quindi, ISO 8859-1 è Extended ASCII, una tabella per gli Stati Uniti e l'Europa occidentale. E ISO 8859-5 è una tabella per il cirillico (incluso il russo).

Tuttavia, per ragioni storiche, la codifica ISO 8859-5 non ha preso piede. In realtà, per la lingua russa vengono utilizzate le seguenti codifiche:

Codice Pagina 866 ( CP866), alias "DOS", alias "codifica GOST alternativa". È stato ampiamente utilizzato fino alla metà degli anni '90; è ora utilizzato in misura limitata. Praticamente non utilizzato per la distribuzione di testi su Internet.
- KOI-8. Sviluppato negli anni '70 e '80. È uno standard generalmente accettato per la trasmissione di messaggi di posta su Internet russo. È anche ampiamente utilizzato nei sistemi operativi della famiglia Unix, incluso Linux. La versione KOI-8, progettata per la lingua russa, si chiama KOI-8R; esistono versioni per altre lingue cirilliche (ad esempio, KOI8-U è un'opzione per la lingua ucraina).
- Codice Pagina 1251, CP1251, Windows-1251. Sviluppato da Microsoft per supportare la lingua russa in Windows.

Il vantaggio principale del CP866 era la conservazione dei caratteri pseudografici negli stessi posti dell'ASCII esteso; quindi, programmi di testo stranieri, ad esempio il famoso Norton Commander, potrebbero funzionare senza modifiche. Al giorno d'oggi CP866 viene utilizzato per i programmi Windows in esecuzione in finestre di testo o in modalità testo a schermo intero, incluso FAR Manager.

Negli ultimi anni, i testi in CP866 sono piuttosto rari (ma è usato per codificare nomi di file russi in Windows). Pertanto, ci soffermeremo più in dettaglio su altre due codifiche: KOI-8R e CP1251.



Come puoi vedere, nella tabella di codifica CP1251, le lettere russe sono disposte in ordine alfabetico (tranne, tuttavia, la lettera E). Questa disposizione facilita l'ordinamento alfabetico dei programmi per computer.

Ma in KOI-8R, l'ordine delle lettere russe sembra essere casuale. Ma in realtà non lo è.

Molti programmi più vecchi hanno perso l'ottavo bit durante l'elaborazione o la trasmissione del testo. (Ora tali programmi sono praticamente "scomparsi", ma alla fine degli anni '80 - primi anni '90 erano molto diffusi). Per ottenere un valore a 7 bit da un valore a 8 bit, sottrarre 8 dalla cifra più significativa; per esempio E1 diventa 61.

Ora confronta il KOI-8R con la tabella ASCII (Tabella 1). Scoprirai che le lettere russe sono chiaramente allineate con quelle latine. Se l'ottavo bit scompare, le lettere russe minuscole si trasformano in lettere latine maiuscole e le lettere russe maiuscole in lettere latine minuscole. Quindi, E1 in KOI-8 è il russo "A", mentre 61 in ASCII è il latino "a".

Quindi, KOI-8 ti consente di preservare la leggibilità del testo russo perdendo l'ottavo bit. “Ciao a tutti” diventa “pRIWET WSEM”.

Recentemente, sia l'ordine alfabetico dei caratteri nella tabella di codifica, sia la leggibilità con la perdita dell'8° bit hanno perso la loro importanza decisiva. L'ottavo bit nei computer moderni non viene perso né durante la trasmissione né durante l'elaborazione. L'ordinamento in ordine alfabetico si basa sulla codifica e non sul semplice confronto dei codici. (A proposito, i codici CP1251 non sono completamente alfabetici - la lettera E non è al suo posto).

A causa del fatto che ci sono due codifiche comuni, quando si lavora con Internet (posta, navigazione di siti Web), a volte è possibile vedere un insieme di lettere senza significato invece del testo russo. Ad esempio, "Sono SBUFEMHEL". Queste sono solo le parole "con rispetto"; ma sono stati codificati nella codifica CP1251, e il computer ha decodificato il testo secondo la tabella KOI-8. Se le stesse parole fossero, al contrario, codificate in KOI-8, e il computer avesse decodificato il testo secondo la tabella CP1251, il risultato sarà “У ХЧБЦЕОЙЕН”.

A volte capita che il computer decritti le lettere in lingua russa secondo una tabella che non è destinata alla lingua russa. Quindi, al posto delle lettere russe, appare un insieme di simboli senza significato (ad esempio, lettere latine delle lingue dell'Europa orientale); sono spesso chiamati "crocozyabras".

Nella maggior parte dei casi, i programmi moderni riescono da soli a determinare le codifiche dei documenti Internet (e-mail e pagine Web). Ma a volte si "accendono male", e quindi puoi vedere strane sequenze di lettere russe o "krokozyabra". Di norma, per visualizzare il testo reale sullo schermo, è sufficiente selezionare manualmente la codifica nel menu del programma.

Per l'articolo sono state utilizzate le informazioni dalla pagina http://open-office.edusite.ru/TextProcessor/p5aa1.html.

Materiale tratto dal sito:

Come sai, un computer memorizza le informazioni in forma binaria, rappresentandole come una sequenza di uno e zero. Per tradurre le informazioni in una forma conveniente per la percezione umana, ogni sequenza univoca di numeri viene sostituita con il simbolo corrispondente quando viene visualizzata.

Uno dei sistemi per correlare codici binari con caratteri stampabili e di controllo è

All'attuale livello di sviluppo della tecnologia informatica, l'utente non è tenuto a conoscere il codice di ogni simbolo specifico. Tuttavia, una comprensione generale di come viene eseguita la codifica è estremamente utile e per alcune categorie di specialisti persino necessaria.

Creazione ASCII

Nella sua forma originale, la codifica è stata sviluppata nel 1963 e poi aggiornata due volte entro 25 anni.

Nella versione originale, la tabella dei caratteri ASCII includeva 128 caratteri, successivamente è apparsa una versione estesa, in cui sono stati salvati i primi 128 caratteri e i caratteri precedentemente assenti sono stati assegnati a codici con l'ottavo bit coinvolto.

Per molti anni, questa codifica è stata la più popolare al mondo. Nel 2006, Latin 1252 ha preso la posizione di leader e, dalla fine del 2007 ad oggi, Unicode ha mantenuto saldamente la posizione di leader.

Rappresentazione computerizzata ASCII

Ogni carattere ASCII ha il proprio codice di 8 caratteri che rappresentano zero o uno. Il numero minimo in tale rappresentazione è zero (otto zeri nel sistema binario), che è il codice del primo elemento della tabella.

Due codici nella tabella sono stati riservati per il passaggio dallo standard US-ASCII alla sua versione nazionale.

Dopo che l'ASCII ha iniziato a includere non 128, ma 256 caratteri, si è diffusa una variante della codifica, in cui la versione originale della tabella è stata salvata nei primi 128 codici con un ottavo bit zero. I segni della scrittura nazionale sono stati mantenuti nella metà superiore della tabella (posizioni 128-255).

L'utente non ha bisogno di conoscere direttamente i codici dei caratteri ASCII. Di solito è sufficiente che uno sviluppatore di software conosca il numero di un elemento in una tabella per calcolarne il codice utilizzando un sistema binario, se necessario.

lingua russa

Dopo lo sviluppo delle codifiche per le lingue scandinave, cinese, coreana, greca, ecc. nei primi anni '70, anche l'Unione Sovietica iniziò a creare la propria versione. Presto fu sviluppata una versione della codifica a 8 bit chiamata KOI8, che conserva i primi 128 codici di caratteri ASCII e assegna lo stesso numero di posizioni per le lettere dell'alfabeto nazionale e caratteri aggiuntivi.

Prima dell'introduzione di Unicode, KOI8 dominava il segmento russo di Internet. C'erano opzioni di codifica per entrambi gli alfabeti russo e ucraino.

Problemi ASCII

Poiché il numero di elementi anche nella tabella estesa non superava i 256, non c'era la possibilità di ospitare diversi script diversi in un'unica codifica. Negli anni '90, il problema "crocozyabr" è apparso in Runet, quando i testi digitati in caratteri ASCII russi venivano visualizzati in modo errato.

Il problema era che i codici delle diverse varianti ASCII non corrispondevano tra loro. Ricorda che le posizioni 128-255 potrebbero contenere caratteri diversi e quando si cambia una codifica cirillica in un'altra, tutte le lettere del testo sono state sostituite con altre aventi un numero identico in una versione diversa della codifica.

Stato attuale

Con l'avvento di Unicode, la popolarità di ASCII è diminuita drasticamente.

La ragione di ciò risiede nel fatto che la nuova codifica ha permesso di accogliere i segni di quasi tutte le lingue scritte. In questo caso, i primi 128 caratteri ASCII corrispondono agli stessi caratteri in Unicode.

Nel 2000, ASCII era la codifica più popolare su Internet ed era utilizzata nel 60% delle pagine web indicizzate da Google. Nel 2012, la quota di tali pagine era scesa al 17% e Unicode (UTF-8) ha preso il posto della codifica più popolare.

Pertanto, l'ASCII è una parte importante della storia della tecnologia dell'informazione, ma il suo utilizzo in futuro è visto come poco promettente.

Principali articoli correlati