Premessa. Per questo tutte le informazioni nel computer debbono essere (e sono) rappresentate in binario.



Documenti analoghi
Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

La codifica delle immagini

La codifica delle immagini

Come si misura la memoria di un calcolatore?

La codifica delle immagini

La codifica delle Immagini. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132Sesto San Giovanni

PDF created with pdffactory trial version

Codifica delle Informazioni

Numerazione binaria e rappresentazione delle informazioni

ELETTRONICA DIGITALE

Marta Capiluppi Dipartimento di Informatica Università di Verona

Informatica. Rappresentazione binaria Per esempio diventa /10/2007. Introduzione ai sistemi informatici 1

Codifica dell informazione

Rappresentazione delle immagini

Immagini digitali Appunti per la classe 3 R a cura del prof. ing. Mario Catalano

La rappresentazione dell informazione

La rappresentazione dell informazione. La codifica dei dati multimediali. Sommario

Codifica dell informazione

Sistemi di numerazione: binario, ottale ed esadecimale

La codifica delle informazioni

Le immagini digitali. Le immagini digitali. Caterina Balletti. Caterina Balletti. Immagini grafiche. Trattamento di immagini digitali.

Informatica per la Storia dell Arte

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16

La codifica delle immagini

Rappresentazione delle informazioni

Il sistema di numerazione posizionale decimale INFORMATICA DI BASE. Sistemi di numerazione: binario, ottale ed esadecimale

Capitolo V : Il colore nelle immagini digitali

Informatica per la comunicazione" - lezione 7 -

Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) Rappresentazione caratteri Rappresentazioni immagini Rappresentazione suoni

Informazione analogica e digitale

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Informatica Generale 02 - Rappresentazione numeri razionali

Immagini vettoriali Immagini bitmap (o raster) Le immagini vettoriali .cdr.swf .svg .ai.dfx .eps.pdf .psd

Lez. 3 L elaborazione (II parte) Prof. Pasquale De Michele Gruppo 2

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l Ambiente e il Territorio

Logica e codifica binaria dell informazione

INFORMATICA. Automa TRATTAMENTO AUTOMATICO DELLE INFORMAZIONI

Rappresentazione binaria

Rappresentazione dell informazione Codifica Binaria

Immagini vettoriali. Immagini raster

IMMAGINE BITMAP E VETTORIALI

IL CODICE BINARIO. Il codice binario. Codifica posizionale. Aritmetica binaria

Tutto digitale. Musica Giornali, Libri satellite (TV, GPS) Telefoni: ISDN, GSM rete telefonica, internet Video (DVD) oh, anche il PC

Corso di Informatica

Lezione 2: Codifica binaria dell informazione. Codifica binaria

Codifica delle immagini

Il campionamento. La digitalizzazione. Teoria e pratica. La rappresentazione digitale delle immagini. La rappresentazione digitale delle immagini

Nella prima lezione... Che cos è il Digitale. Prima parte: Che cos è il Digitale. Che cos è il Digitale. Che cos è il Digitale

LA RAPPRESENTAZIONE DELLE INFORMAZIONI

Elementi di Informatica e Programmazione

INFORMATICA E GRAFICA PER IL WEB

APPUNTI DI ELETTRONICA DIGITALE

Operazioni Aritmetiche e Codici in Binario Giuseppe Talarico 23/01/2013

Rappresentazione e Memorizzazione dei Dati

2. Codifica dell informazione

C M A P M IONAM A E M NT N O

Laboratorio di Informatica

Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Rappresentazione delle informazioni

FILE: ESTENSIONI o Formati. Augusto Grossi

Codifica binaria dei numeri

Introduzione all analisi dei segnali digitali.

Megabyte (MB) = 1024KB 1 milione di Byte (e.g. un immagine di 30MB) Gigabyte (GB) = 1024MB 1 miliardo di Byte (e.g. un hard disk da 80GB)

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Elementi di Informatica e Programmazione

La codifica del testo

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

4 3 4 = 4 x x x 10 0 aaa

CODIFICA BINARIA. ... sono rappresentati ricorrendo a simboli che sintezzano il concetto di numerosità.

Fondamenti di Informatica

Le immagini digitali. formati, caratteristiche e uso. Testo e foto di Mario Ceppi

la scienza della rappresentazione e della elaborazione dell informazione

Scheda di approfondimento gioco I pixel

Codifica binaria e algebra di Boole

La rappresentazione delle informazioni

Realizzazione siti web. Le immagini

Codici Numerici. Modifica dell'informazione. Rappresentazione dei numeri.

Unione Europea Repubblica Italiana Regione Calabria Cooperativa sociale

wave a 44,1 khz, 16 bit, PCM, stereo (standard cd audio) L utilizzo di una risoluzione dipende anche dal supporto che la dovrà ospitare.

la scienza della rappresentazione e della elaborazione dell informazione

1.3a: La Codifica Digitale delle Immagini

(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, = 1, 431 0, = 0, 862 0, = 1, 792 0, = 1, 448 0, = 0, 896

Rappresentazione di informazioni con un alfabeto finito

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico

Sistemi di Elaborazione delle Informazioni. Corso di Laurea per "Tecnico Ortopedico" 03

Lezione 8: La rappresentazione dell informazione Multimediale Suoni e Video Venerdi 6 Novembre 2009

Informatica. Rappresentazione dei numeri Numerazione binaria

Immagini Digitali Immagini digitali

LA CODIFICA DELLE IMMAGINI

Architettura degli Elaboratori I Esercitazione 1 - Rappresentazione dei numeri

Codifica binaria dei numeri relativi

CORSI I principali programmi Adobe Photoshop/InDesign/Illustrator Nozioni di base

Rappresentazione binaria dei numeri negativi

Lezione 2: Immagini digitali (1)

Dal foglio di carta alla multimedialità

Corso di Informatica

La codifica dell informazione

Informatica grafica e Multimedialità. 4 Immagini grafiche

Strutturazione logica dei dati: i file

La codifica delle immagini

Transcript:

Rappresentazione delle Informazioni in un Sistema di Elaborazione Prof. Claudio Maccherani Premessa Il computer, come è noto, è basato sulla logica binaria: tutto al suo interno viene rappresentato in forma binaria, con due sole cifre, 0 e 1, i BIT (Binary digit). Questo avviene per motivi strutturali inerenti la natura elettronica delle sue componenti. Per rappresentare un bit basta un circuito dove passa corrente - nel qual caso il circuito rappresenterà la cifra binaria 1 - o no - nel qual caso esso rappresenterà la cifra binaria 0. Un circuito di questo tipo è economico, affidabile e veloce. Se volessimo rappresentare con un circuito le dieci cifre del sistema decimale (da 0 a 9) si dovrebbe associare ad ogni diversa cifra un diverso intervallo elettrico. Un circuito di questo tipo sarebbe inaffidabile (alta possibilità di errore nel rilevare valori elettrici a cavallo di due successivi intervalli), lento (per rilevare il livello di elettricità del circuito occorre attendere che esso si stabilizzi, ed l tempo di stabilizzazione è sempre quello massimo, quello che il circuito impiega per passare dal livello massimo - cifra 9 - a quello minimo - cifra 0 -, e viceversa), molto ingombrante e molto costoso. Per questo tutte le informazioni nel computer debbono essere (e sono) rappresentate in binario. I principali tipi di dati che debbono essere rappresentati (memorizzati, gestiti ed elaborati) utilizzando il computer possono essere così schematizzati: numerici interi "reali" dati alfanumerici immagini multimediali filmati suoni Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 1

Numeri Interi La rappresentazione dei numeri naturali non presenta alcun problema in quanto il sistema di numerazione binario è equivalente al sistema decimale, basta stabilire quanti byte vogliamo riservare ad ogni numero. Il problema è la rappresentazione del segno - per i numeri negativi. Modulo e Segno Un sistema, una convenzione, che risolve tale problema è il Modulo e Segno. Supponendo di riservare due byte per la rappresentazione del numero, il primo bit, a sinistra, viene utilizzato per rappresentare il segno (se 0 segno +, se 1 segno ) ed i restanti 15 bit (modulo) per rappresentare il numero. 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 S modulo Il numero dell esempio è: (2 4 + 2 1 ) = 18 Con questo sistema si possono rappresentare numeri da 32.767 a + 32.767. Lo 0 ha due rappresentazioni: 1000000000000000 (+0) e 0000000000000000 (-0). Complemento a 2 La precedente convenzione - Modulo e Segno -, per quanto semplice ed intuitiva, non è usata. Viene invece utilizzato il Complemento a 2. Supponendo di riservare sempre due byte per la rappresentazione del numero, il primo bit, a sinistra, fornisce sempre il segno del numero (se 0 il numero risulterà positivo, se 1 il numero risulterà negativo), ma viene sempre calcolato con il segno - cioè come bit x 2 15, mentre i restanti bit vengono normalmente calcolati con il segno + - -1x2 15 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 Il numero dell esempio è: 2 15 + 2 4 + 2 1 = 16.384 + 18 = 16.366 Con questo sistema si possono rappresentare numeri da 32.768 a + 32.767. Viene utilizzato il complemento a 2, a discapito del modulo e segno, perché la sottrazione viene eseguita allo stesso modo dell addizione. Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 2

Numeri Reali La rappresentazione dei numeri "reali" - cioè dei numeri con la virgola - presenta il problema della rappresentazione della virgola,. Virgola fissa (fixed point) Supponendo di riservare quattro byte per la rappresentazione del numero, la virgola viene fissata, ad esempio, tra il primo ed il secondo byte (a partire da destra). In questo modo si avranno tre byte per rappresentare la parte intera del numero ed un byte per la parte decimale. Il il primo bit, a sinistra, viene utilizzato per rappresentare il segno. S parte intera, parte decimale Questa rappresentazione è piuttosto rigida: se si debbono rappresentare numeri molto piccoli, vicini allo 0, si sprecano i 3 byte della parte intera (ed il solo byte della parte decimale non permette di rappresentare numeri molto piccoli), mentre se si debbono rappresentare numeri molto grandi si spreca il byte riservato alla parte decimale. Virgola mobile (floating point) La notazione scientifica (o esponenziale) dei numeri viene utilizzata, come dice il nome, in ambito scientifico (chimica, fisica, astronomia, etc.) ed è del tipo mantissa x base esponente Ad esempio 35,88 può essere rappresentato come 3,588 x 10 1 cioè 3.588E+1. La caratteristica di questa rappresentazione è l immediata percezione dell ordine di grandezza del numero data dall esponente. Un numero ha infinite rappresentazioni esponenziali, tante quanti sono gli esponenti. Tra tutte queste si utilizza quella normalizzata dove la parte intera della mantissa è 0 e la sua prima cifra decimale è diversa da 0. La notazione normalizzata dell esempio precedente è 0,3588 x 10 2. Supponendo di riservare quattro byte per la rappresentazione del numero, tre byte vengono riservati alla parte decimale della mantissa ed un byte all esponente, entrambi con il relativo segno, in complemento a 2. Nell esempio precedente nei tre byte della mantissa si rappresenta +3588 e nel byte dell esponente +2. S mantissa S esponente Questa rappresentazione è indicativa in quanto le codifiche utilizzate variano in funzione dell hardware e dell azienda costruttrice del calcolatore. BCD (Binary Coded Decimal) La rappresentazione in virgola mobile produce arrotondamenti e troncamenti dei numeri che in taluni ambiti (si pensi a quello bancario) possono essere non accettabili. La notazione BCD elimina tali problemi di arrotondamento e troncamento rappresentando ogni cifra del numero (in base 10) con 4 bit. È evidente che aumenta notevolmente la quantità di memoria necessaria alla rappresentazione dei numeri. Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 3

Dati Alfanumerici I dati alfanumerici (o di tipo carattere, o stringa) sono i dati di tipo testo quali parole e frasi. La loro rappresentazione è basata sulla codifica binaria di ciascun diverso carattere rappresentabile. ASCII La codifica ASCII (American Standard Code for Information Interchange) inizialmente era a 7 bit (l ottavo bit poteva essere utilizzato per il controllo di parità). Con 7 bit si hanno codici da 0 a 127 e si possono rappresentare 128 diversi oggetti. Successivamente tale codifica è diventata a 8 bit (divenendo codice ASCII esteso), con codici da 0 a 255 con la quale si possono rappresentare 256 oggetti. Ogni codice - carattere - occupa un byte. I codici da 0 a 31 sono utilizzati per caratteri speciali utilizzati nelle stampe o per la trasmissione delle informazioni (0-NUL, 13-CR, 10 LF, 12-FF, 27-ESC,..). Da 32-spazio a 127 ci sono i codici standard (33 47 simboli, 48 57 cifre decimali, 58 64 simboli, 65 90 caratteri maiuscoli, 91 96 simboli, 97 122 caratteri minuscoli, 123 127 simboli). I codici da 128 a 255 (codici Ascii estesi) servono per rappresentare altri caratteri e simboli aggiuntivi. EBCDIC La codifica EBCDIC (Extended Binary Code Decimal Interchange Code) è una codifica a 8 bit usata in sostituzione alla codifica ASCII da taluni costruttori - IBM soprattutto nei grandi elaboratori (main frame). Immagini Ci sono numerose tecniche per memorizzare ed elaborare immagini. BITMAP Si sovrappone una griglia di quadratini ciascuno dei quali prende il nome di pixel (picture element). Digitalizzare l immagine significa codificare con 0 i pixel corrispondenti a quadratini bianchi (o con predominanza di bianco) e con 1 i pixel corrispondenti a quadratini neri (o con predominanza di nero). 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 1 1 1 Se assumiamo che i pixel sono ordinati dal basso all alto e da sinistra a destra, la digitalizzazione dell immagine produrrà la seguente rappresentazione binaria: 111110111001110001000010000000 Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 4

Tanto minore sarà la dimensione dei pixel (cioè tanto più fitta sarà la griglia), tanto maggiore sarà la risoluzione e tanto maggiore sarà la qualità finale dell immagine (e la sua occupazione di memoria). Nell esempio precedente abbiamo usato 1 solo bit per codificare ciascun pixel, ma così facendo non codifichiamo le diverse tonalità di grigio, ma solo il bianco-nero. Con 4 bit per ciascun pixel si possono codificare 2 4 = 16 diverse tonalità di grigio. Con 8 bit per ciascun pixel si possono codificare 2 8 = 256 diversi colori, e così via. Qualsiasi colore può essere rappresentato dalla combinazione del rosso, del verde e del blu, cioè con la codifica RGB (Red, Green, Blu) Allora il colore di ogni pixel può essere rappresentato con una combinazione dei tre colori base, ciascuno dei quali con una sua diversa gradazione. Rappresentando 256 diverse gradazioni di ciascun colore primario si hanno 16.777.216 diversi colori (256 x 256 x 256). In tal caso bisogna utilizzare 3 byte per ciascun pixel. Tale rappresentazione delle immagini mediante la codifica dei pixel è la codifica BITMAP (mappa di bit, file di tipo.bmp) o RASTER. In tale codifica la risoluzione è il numero di pixel (numero pixel orizzontali x numero pixel verticali) e la profondità e il numero di bit utilizzati per rappresentare ciascun pixel. L occupazione di memoria dell immagine bitmap in bit è data da risoluzione x profondità. Non tutti i 16.777.216 diversi colori sono utilizzati contemporaneamente, tutte queste sfumature non sono neppure percepibili. Si può allora scegliere ed utilizzare una tavolozza (palette) di 256 diversi colori (scelti tra i 16.777.216) portando la profondità dell immagine da 3 byte ad 1 byte. Una immagine 640 x 480 pixel con 16.777.216 colori l occupazione è di 921.600 byte, ma se si utilizza una palette tale occupazione risulta di 307.200 byte per l immagine più 768 byte per la palette (che deve essere memorizzata insieme all immagine), per un totale di 307.968 byte. Esistono tecniche di compressione per ridurre lo spazio occupato dalle immagini. Le più diffuse sono la GIF (CompuServe Graphic Interface, file di tipo.gif) e la JPEG (Joint Photographic Experts Group, file.jpeg e.jpg). Entrambi i sistemi tendono ad eliminare i pixel ripetitivi, usano tecniche di compressione / decompressione dell immagine (tecnica codec: compressione prima della memorizzazione, decompressione prima della visualizzazione) e comportano perdita di informazione non recuperabile. Grafica Vettoriale Un altro sistema per rappresentare le immagini è quello della GRAFICA VETTORIALE che consiste non nel rappresentare i singoli pixel, ma nel descrivere gli elementi geometrici che compongono l immagine memorizzando le loro coordinate. Il programma che gestisce immagini vettoriali deve elaborare le coordinate dei vari componenti geometrici e riprodurli (disegnarli) pixel per pixel. (10,5) Per le coordinate di ogni elemento si farà riferimento a un punto, l origine degli assi cartesiani, posto ad esempio in (20,5) alto a sinistra. Nell esempio è riportato un triangolo che può essere "disegnato" con un comando dl tipo: (0,0) (20,20) Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 5

triangle (10,5; 20,5; 20,20) Oltre alle coordinate dei vari componenti geometrici occorre memorizzare anche spessore e colore dei pixel, colori di riempimento delle figure, etc. Un linguaggio di grafica vettoriale bidimensionale è l SVG (Scalable Vector Graphics). I file contenenti immagini vettoriali hanno estensioni.cgm,.dwg,.dxf Codifiche ibride Esistono codifiche ibride (bitmap e grafica vettoriale) standard quali PostScript (linguaggio di descrizione pagina) e PDF (Portable Document Format, file di tipo.pdf), entrambi di Adobe. Suoni Anche i suoni (linguaggio parlato, musica, rumori) possono essere espressi in formato digitale. Il suono è un alterazione della pressione dell aria la cui intensità, durata e frequenza determina suoni diversi. Il suono viene rappresentato come un onda sonora che descrive la variazione della pressione dell aria nel tempo. La sua intensità è data dall ampiezza dell onda ed è misurata in decibel (db), La gravità/acutezza del suono dipende dalla frequenza (bassa frequenza, suono grave; frequenza alta, suono acuto) ed è misurata in Hertz (Hz). Per digitalizzare un suono, cioè per rappresentarlo sotto forma di numeri, occorre effettuare il campionamento, la quantizzazione di un campione e la codifica del suono. Campionamento: si misurano e registrano i valori dell ampiezza dell onda in istanti successivi (realizzando così una descrizione discreta dell onda sonora). Tanto minore è l intervallo di tempo tra due successivi campionamenti, tanto più sarà accurata la descrizione del suono. Il tasso di campionamento deve essere almeno il doppio della frequenza massima del suono da campionare. L onda sonora ha una gamma di ampiezze possibili. Tale gamma viene suddivisa in intervalli o regioni. L ampiezza di un campione rientrerà in una delle possibili regioni. Tale ampiezza viene rilevata dalla tensione in uscita da un microfono (che se, per esempio, varia da -8 a +8 Volt, da una gamma delle ampiezze di 16 Volt; se ogni regione è di 0,5 Volt si hanno 32 regioni). Per codificare la voce umana, che ha frequenza massima di 4.000 Hz, occorre una frequenza di campionamento di 8.000 campioni al secondo e per ogni campione si usano 8 bit. Quindi per un secondo di registrazione vocale occorrono 8.000x8=64.000 bit (8.000 byte). Per codificare la musica con qualità CD occorre usare due distinte registrazioni associate a due distinti microfoni, una frequenza di campionamento di 44.100 campioni al secondo e per ogni campione si usano 16 bit. Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 6

Quindi per un secondo di registrazione musicale occorrono 2x44.100x16=1.411.200 bit (176.400 btye). Esistono varie codifiche standard dei suoni: WAV (MS-Windows, file di tipo.wav) AU (per SUN) e AIFF (per Apple) RA (Real Networks) MIDI (file di tipo.mid), codifica note e strumenti, solo musica e non parole o voce, necessita di un sintetizzatore MP3 (file di tipo.mp3), tecnica di compressione, molto diffusa, è una variante per suoni della tecnica MPEG Filmati Un filmato è una sequenza di immagini statiche, dette fotogrammi o frame, che vengono visualizzate in un intervallo di tempo producendo l effetto del "movimento". Debbono essere visualizzati almeno 16 frame al secondo perché non si percepiscano i singoli fotogrammi. La Codifica Non Differenziale di registrazione dei filmati codifica completamente tutti i frame. Ad esempio 3 minuti di filmato, frame 200x100 pixel, 16 bit/pixel e 24 frame/sec danno un occupazione di memoria di (24x180)x(200x100x16) 172MB La Codifica Differenziale di registrazione dei filmati, invece, si basa sui presupposto che non è efficiente codificare completamente ciascun frame, in quanto frame adiacenti possono differire anche per nulla o solo in minima parte, quindi alcuni frame sono codificati interamente, altri solo nelle parti nelle quali differiscono dal frame precedente. Per ridurre l occupazione dei video si utilizzano software CODEC (compressore / decompressore) o meglio CODDEC (codificatore / decodificatore). Tali software comprimono le immagini, spesso con perdita di informazioni, per consentire una minore occupazione ed una riproduzione corretta del clip. Esistono vari formati standard dei video: MPEG (Moving Picture Experts Groups, file di tip.mpg), standard complesso ma molto efficiente Quick Time (file di tipo.mov), standard Apple meno complesso ma meno efficiente Indeo (file di tipo.avi), standard di Intel usato da Microsoft, poco efficiente Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 7

Rappresentazione delle Informazioni Indice Premessa...1 Numeri Interi...2 Modulo e Segno...2 Complemento a 2...2 Numeri Reali...3 Virgola fissa (fixed point)...3 Virgola mobile (floating point)...3 BCD (Binary Coded Decimal)...3 Dati Alfanumerici...4 ASCII...4 EBCDIC...4 Immagini...4 BITMAP...4 Grafica Vettoriale...5 Codifiche ibride...6 Suoni...6 Filmati...7 Rappresentazione delle Informazioni Prof. Claudio Maccherani Perugia - 2007 pag. 8