Laboratorio di Informatica (Chimica)

Documenti analoghi
Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale

Rappresentazione delle informazioni LA RAPPRESENTAZIONE DELLE INFORMAZIONI. Grandezze digitali. Grandezze analogiche

Informatica. Rappresentazione delle informazioni

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli

Informatica. Informatica. Grandezze digitali. Grandezze analogiche

Segnale analogico. Analogico vs digitale. Segnale digitale. Trasformazione da analogico a digitale

Rappresentazione dell informazione. Laboratorio di Informatica AA 2008/2009

Codifica delle Informazioni. Lezione II bis

Rappresentazione di immagini a colori. Rappresentazione dei colori. Rappresentazione dei colori LA RAPPRESENTAZIONE DELL INFORMAZIONE - II

Informatica. Informatica. Grandezze digitali. Grandezze analogiche

Laboratorio di Informatica. Codifica binaria - numeri razionali. per la laurea triennale in Chimica

Rappresentazione dell informazione

Rappresentazione binaria. Laboratorio di Informatica. Calcolatori digitali. N: numeri naturali. La codifica binaria. I primi 16 numeri binari

Laboratorio di Informatica

Rappresentazione dell informazione

Laboratorio di Informatica

Codifica. Grandezze analogiche. Grandezze digitali RAPPRESENTAZIONE DELL INFORMAZIONE. Calcolatori digitali I NUMERI...

Numeri interi. Laboratorio di Calcolo Paola Gallo

La codifica binaria. Fondamenti di Informatica. Daniele Loiacono

1.2 Concetti base dell Informatica: Informazione

Codifica dell informazione

Rappresentazione dei numeri: il sistema di numerazione decimale

La codifica binaria. Fondamenti di Informatica. Daniele Loiacono

RAPPRESENTAZIONE DELLE INFORMAZIONI

LA CODIFICA DELL INFORMAZIONE

La codifica binaria. Informatica B. Daniele Loiacono

Tutti i dispositivi di un elaboratore sono realizzati con tecnologia digitale

Somma di numeri binari

Informatica. Ottali ed esadecimali. Numeri naturali binari nei calcolatori 02/03/2007. Introduzione ai sistemi informatici 1

LA CODIFICA DELL INFORMAZIONE. Prof. Enrico Terrone A. S: 2014/15

Aritmetica dei Calcolatori Elettronici

RAPPRESENTAZIONE DELLE INFORMAZIONI

La codifica. dell informazione

La codifica del testo

Introduzione. Elementi di Informatica. Sistemi di Numerazione Addizionali. Sistemi di Numerazione. Sistemi di Numerazione Romano

Rappresentazione binaria

Rappresentazione binaria

Sistemi di Elaborazione delle Informazioni

La codifica dell informazione

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

La codifica dell informazione. Rappresentazione binaria. Rappresentazione posizionale in base 10

CdL in Medicina Veterinaria - STPA AA

Programma del corso. Rappresentazione delle Informazioni. Introduzione agli algoritmi. Architettura del calcolatore

Laboratorio di Informatica

= = = Codifica dell informazione

La rappresentazione. Rappresentazione dell Informazione. Il bit. Codifica delle informazioni. Molti oggetti hanno comunemente più rappresentazioni

La codifica binaria. Informatica B. Daniele Loiacono

Paolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova

= = =

Informatica e Laboratorio di Programmazione Sistema Binario Alberto Ferrari. Alberto Ferrari Informatica e Laboratorio di Programmazione

Rappresentazione dell informazione

UD 1.2e: La codifica Digitale dei Numeri CODIFICA DIGITALE DEI NUMERI

Modulo 1: Le I.C.T. UD 1.2e: La codifica Digitale dei Numeri

OHLQIRUPD]LRQLQRQQXPHULFKH

Codifica dell informazione. 11/2/2014 Informatica applicata alla comunicazione multimediale Cristina Bosco

Rappresentazione dell'informazione

Rappresentazione dell Informazione

Dunque, nella memoria del computer vengono registrate sequenze di bit il processore elabora sequenze di bit.

Rappresentazione di dati: numerazione binaria. Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano

Rappresentazione dell informazione

Scopo della lezione è presentare le modalità di rappresentazione dei numeri utilizzate dalla macchina.

Programma del corso. Rappresentazione delle Informazioni. Introduzione agli algoritmi. Architettura del calcolatore

Numeri in virgola mobile

Informazione multimediale

Rappresentazione dei numeri. Rappresentazione di insiemi numerici mediante insiemi finiti di stringhe di bit Problemi:

Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte

La codifica delle informazioni numeriche ed alfanumeriche.

informazione costituiti da simboli che devono essere elaborati conoscenza più o meno esatta di fatti, situazioni, modi di

Fondamenti di Informatica. per la Sicurezza. a.a. 2003/04. Calcolo binario. Stefano Ferrari

senza togliersi le scarpe

Elementi di Informatica. ( Lezione III, parte I) Rappresentazione delle informazioni : La codifica dei numeri

modificato da andynaz Cambiamenti di base Tecniche Informatiche di Base

Laboratorio Informatico di Base. Concetti di base sull informatica

I.4 Rappresentazione dell informazione - Altre codifiche

Informazione binaria: suoni, immagini, sequenze video

Lezione 3. Termina la lezione precedente e completa l argomento rappresentazione delle informazioni. AA 2001/2002 Morpurgo, Ornaghi, Zanaboni

Tecnologie per il web e lo sviluppo multimediale. Rappresentazione delle informazioni

Programma del corso. Rappresentazione delle Informazioni. Introduzione agli algoritmi. Architettura del calcolatore

Modulo 2: RAPPRESENTAZIONE DEI DATI I sistemi di numerazione

La codifica. dell informazione. (continua) Codifica dei numeri. Codifica dei numeri. Sono stati pertanto studiati codici alternativi per

La codifica. dell informazione. Codifica dei numeri. (continua) Codifica dei numeri. Codifica dei numeri: il sistema decimale

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

Notazione posizionale. Codifica binaria. Rappresentazioni medianti basi diverse. Multipli del byte

Rappresentazione della informazione

Rappresentazione dell informazione

Rappresentazione dell informazione

Calcolatore e unità di misura

La codifica digitale

N= a i b i. Numeri e numerali. Sistemi di Numerazione Binaria. Sistemi posizionali. Numeri a precisione finita

Codifica dei caratteri

Codifica dell Informazione per il Calcolo Scientifico

1-Rappresentazione dell informazione

Transcript:

Laboratorio di Informatica (Chimica) Lezione 05: Codifica delle Informazioni. Walter Cazzola Dipartimento di Informatica e Comunicazione Università à degli Studi di Milano. e-mail: cazzola@dico.unimi.it Walter Cazzola Lez. 5: Codifica delle Informazioni 1

Codice La relazione che associa ad ogni successione ben formata di simboli di un alfabeto il dato corrispondente è detta codice. Un codice mette quindi in relazione le successioni di simboli con il significato loro attribuito. Walter Cazzola Lez. 5: Codifica delle Informazioni 2

Rappresentazione delle informazioni I calcolatori moderni sono detti calcolatori digitali: digit in inglese significa cifra Tutte le informazioni vengono rappresentate in forma numerica: numeri caratteri immagini statiche e in movimento suoni Walter Cazzola Lez. 5: Codifica delle Informazioni 3

Rappresentazione delle informazioni Noi rappresentiamo i numeri utilizzando un alfabeto di dieci simboli (0, 1,, 9): rappresentazione posizionale decimale (in base dieci). Per i calcolatori si usa un alfabeto binario. Alfabeto binario: costituito da due simboli convenzionalmente 0 e 1 bit (binary digit,, cifra binaria): elemento che assume un valore binario. il bit è anche l unità elementare di informazione. Walter Cazzola Lez. 5: Codifica delle Informazioni 4

Rappresentazione delle Informazioni Nella memoria del computer è possibile memorizzare esclusivamente sequenze di bit e il processore può processare soltanto dati espressi come sequenze di bit. 000 00001010 001 10010010 010 11100000 011 00111100 100 11111111 101 10000001 110 11110000 111 11100011 Logicamente sono organizzate in celle indirizzabili. Le celle contengono tutte lo stesso numero di bit, detto lunghezza. Esempio: celle di lunghezza 8. Gli indirizzi hanno una lunghezza fissata, che determina l espansione massima della memoria. Esempio: con indirizzi di 3 bit si hanno al massimo 8 celle. Walter Cazzola Lez. 5: Codifica delle Informazioni 5

Dimensioni Tipiche Celle di memoria 8 bit, 16 bit Indirizzi da 16 bit a 64 bit Ma quante sono le celle indirizzabili con n bit? Impariamo ora: a fare qualche conto a conoscere le unità di misura come si rappresentano i dati numerici Walter Cazzola Lez. 5: Codifica delle Informazioni 6

La Codifica Binaria Avendo a disposizione un solo bit si possono rappresentare due elementi diversi: si assegna al primo la codifica 0 al secondo la codifica 1 Con 2 bit si possono rappresentare 4 = 2 2 elementi diversi, assegnando a ciascuno una codifica diversa: Paperino codifica 00 Qui codifica 01 Quo codifica 10 Qua codifica 11 con n bit si possono rappresentare 2 n elementi diversi. Walter Cazzola Lez. 5: Codifica delle Informazioni 7

Unità di Misura: il Byte Una sequenza di 8 bit è detta byte,, ed è l unità di misura della occupazione di memoria. La scelta del byte ha ragioni storiche: per codificare le lettere dell alfabeto, cifre da 0 a 9, lo spazio, la virgola,, per un numero totale compreso tra 90 e 120, sono necessari almeno 7 bit (2 7 =128); se ne utilizzano 8: i 7 bit indispensabili + 1 bit detto di parità; 8 è una lunghezza tipica delle celle di memoria. Walter Cazzola Lez. 5: Codifica delle Informazioni 8

Rappresentazione dei Caratteri La codifica binaria dei caratteri più usata è la codifica ASCII, che associa ad ogni carattere una sequenza di 7 bit (ASCII standard). 128 caratteri (cifre, lettere minuscole e maiuscole, punteggiatura, caratteri speciali); La codifica rispetta l ordine alfabetico. Un byte contiene 8 bit - ASCII esteso, non standard 256 caratteri (ASCII standard + lettere accentate, ecc.) Un codice a 8 bit non è però sufficiente se si vuole rappresentare re un insieme di caratteri di cardinalità maggiore di 256, come per esempio quello dei caratteri cinesi. Per questo motivo è stato introdotto un codice a 32 bit per la rappresentazione dei caratteri, chiamato Unicode,, che permette di rappresentare fino a 2 32 elementi distinti. Walter Cazzola Lez. 5: Codifica delle Informazioni 9

Tabella ASCII Standard Walter Cazzola Lez. 5: Codifica delle Informazioni 10

Rappresentazione dei Numeri I numeri sono entità matematiche astratte; vanno distinti dalla loro rappresentazione. Sistema di Numerazione Romano: codifica basata sui multipli di 5 alfabeto: : I V X L C D M i numeri sono combinazioni dei simboli dell alfabeto.. Es. 5=V, 6=VI, 7=VII, ma 9=IX; manca un simbolo per lo zero. Sistema di Numerazione Arabico: in base dieci: : utilizza le dieci cifre 0, 1,, 9 notazione posizionale: : il valore di ogni cifra dipende dalla sua posizione nella successione di simboli che rappresenta il numero. Es. 1234 = 1x10 3 + 2x10 2 + 3x10 1 + 4x10 0 Walter Cazzola Lez. 5: Codifica delle Informazioni 11

Codifica: Numeri Naturali In generale, per un numero composto di n cifre si ha che: c n 1 c n 2...c 1 c 0 = c n 1 10 n 1 + c n 2 10 n 2 + + c n 2...c 1 10 1 + c 0 10 0 Si chiamano cifre più significative quelle associate ai pesi maggiori. La cifra c n 1 è la più significativa e c 0 è la cifra meno significativa. Walter Cazzola Lez. 5: Codifica delle Informazioni 12

Codifica: Numeri Naturali Sistemi di numerazione in base B Se la base della numerazione è B,, si hanno a disposizione B cifre, comprese tra 0 e B 1. c n c n 1...c 1 c 0 = c n. B n + c n 2. B n 1 + + c 1. B 1 + c 0. B 0 = Σ i:0..n c i. B i Esempio: 101100 due = (1x2 5 + 0x2 4 + 1x2 3 + 1x2 2 + 0x2 1 + 0x2 0 ) dieci = (32 + 8 + 4) dieci = 44 dieci. Tramite m cifre in base B è possibile rappresentare B m numeri naturali, da 0 a B m -1. Walter Cazzola Lez. 5: Codifica delle Informazioni 13

Aritmetica Finita A livello HDW i calcoli numerici vengono eseguiti dalla ALU: Unità Logico Aritmetica; Che si trova nella CPU e lavora con i registri della CPU. Siccome i registri hanno lunghezza prefissata L, numeri la cui rappresentazione binaria richiede più di L cifre non sono rappresentabili. Walter Cazzola Lez. 5: Codifica delle Informazioni 14

Aritmetica Finita Si usa dunque un aritmetica finita, cioè con un numero massimo di cifre binarie disponibili; Nell aritmetica finita dei calcolatori: i numeri relativi sono rappresentati in complemento; i numeri reali sono rappresentati in virgola mobile. Siccome il numero di cifre massimo è limitato, la precisione raggiungibile nella rappresentazione dei numeri reali è limitata; abbiamo le seguenti precisioni: Semplice 32 bit; Doppia 64 bit; ed Estesa 128 bit Walter Cazzola Lez. 5: Codifica delle Informazioni 15

Codifica dei Numeri Naturali Con una successione di n bit si rappresentano i 2 n numeri naturali, da 0 a 2 n 1. Per i numeri naturali si usano di solito 32 bit 2 32 11 = 4.294.967.295 4x10 9 Raddoppiando la lunghezza, il massimo numero rappresentabile aumenta esponenzialmente. Se si utilizzano 64 bit: 2 64 1 1,6x10 10 19 Walter Cazzola Lez. 5: Codifica delle Informazioni 16

Sistemi di Numerazione Base 2: : quella in cui lavora il calcolatore cifre 0,1 Base 10: : quella dell utente umano cifre 0,1,2,3,4,5,6,7,8,9 Base 8: : per abbreviare i numeri binari cifre 0,1,2,3,4,5,6,7 Base 16: : per abbreviare i numeri binari cifre 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F Walter Cazzola Lez. 5: Codifica delle Informazioni 17

Fare i Conti: Proprietà Notevoli (pn1) 1 seguito da n 0 rappresenta B n ; ad es. base 2: 100000 = 2 5 base 10: 100000 = 10 5 base 8: 100000 = 8 5 base 16: 100000 = 16 5 (pn2) n cifre massime rappresentano B n -1;; ad es: base 2: 11111 = 2 5-1 base 10: 99999 = 10 5-1 base 8: 77777 = 8 5-1 base 16: FFFFF = 16 5-1 Walter Cazzola Lez. 5: Codifica delle Informazioni 18

Dalla Rappresentazione al Numero Si applica la definizione c n c n 1...c 1 c 0 = c. n B n + c. n 2 B n 1 + + c. 1 B 1 + c. 0 B 0 Esempi base 2: 1011 = 1. 2 3 + 0. 2 2 + 1. 2 1 + 1 = 10 base 8: 2705 = 2. 8 3 + 7. 8 2 + 0. 8 1 + 5 = 1477 base 16: 3F01 = 3. 16 3 + 15. 16 2 + 0. 16 1 + 1 = 16129 Walter Cazzola Lez. 5: Codifica delle Informazioni 19

Dal Numero alla Rappresentazione Si usano la divisione intera (div( div) ) e il resto (mod( mod), e si applica la proprietà notevole delle rappresentazioni in base B: n mod B è rappresentato dalla cifra c 0 meno significativa della rappresentazione di n in base B n div B è rappresentato dalle cifre precedenti Ad es., nella base 10: 1537 mod 10 = 7 è rappresentato da 7 1537 div 10 = 153 è rappresentato da 153 La rappresentazione emerge attraverso divisioni intere successive, raccogliendo i resti, che corrispondono alle cifre, partendo da quella meno significativa Walter Cazzola Lez. 5: Codifica delle Informazioni 20

Dal Numero alla Rappresentazione Ad esempio, se la base è 2: e si raccolgono i quozienti interi ed i resti come cifre numero div base quoziente resto 6 div 2 = 3 0 -significativa 3 div 2 = 1 1 1 div 2 = 0 1 +significativa si ripete la divisione intera per 2 finché il quoziente non è zero. 6 = 110 Le cifre ottenute corrispondono alla rappresentazione binaria Walter Cazzola Lez. 5: Codifica delle Informazioni 21

Conversioni da Basi 2 a Base 8 o 16 La conversione dalla base 2 alla base 8 può essere fatta per parti, considerando volta per volta una tripla di cifre binarie. Es. 001.010.110.111 = 1267 otto La conversione dalla base 2 alla base 16 può essere fatta per parti, considerando volta per volta una quadrupla di cifre binarie. Es. 0010.1011.0111 = 2B7 sedici Le basi 8 e 16 sono usate perché hanno delle conversioni dalla base 2 molto semplici. Walter Cazzola Lez. 5: Codifica delle Informazioni 22

Lunghezze Base 10 - Base 2 La situazione non è così semplice per la base 10, perché 10 non è potenza di 2. La prima potenza di 10 vicina ad una potenza di 2 è: 10 3 ~ 2 10 = 1024 Per questo 1 K = 1024 1 K = 2 10 1 K ~ 10 3 Walter Cazzola Lez. 5: Codifica delle Informazioni 23

Codifica Binaria: Interi Relativi Codifica con modulo e segno: : consiste nell indicare il segno seguito dal valore assoluto, come succede normalmente nella codifica decimale. Il primo bit indica il segno 0 per positivo 1 per negativo Gli altri n 1 1 bit rappresentano il valore assoluto. Walter Cazzola Lez. 5: Codifica delle Informazioni 24

Codifica Binaria: Interi Relativi Codifica con modulo e segno Esempi 0011 = 3 0000 = 0 1000 = 0 1011 = 3 Ha il difetto di duplicare la rappresentazione del numero 0, cosa che può complicare l esecuzione ed il controllo delle operazioni aritmetiche. Walter Cazzola Lez. 5: Codifica delle Informazioni 25

Codifica Binaria: Interi Relativi Rappresentazione in Complemento a 60. Si i ha l aritmetica dell orologio senza la lancetta delle ore (segna sempre l ora zero ) 0 0 45 15 Interi assoluti -15 15 negativi: quanto manca all ora? 30-30 da 0 a 59 da 0 a 29 non negativi da -30 a -11 negativi Walter Cazzola Lez. 5: Codifica delle Informazioni 26

Codifica Binaria: Interi Relativi Rappresentazione in complemento a due: dati n bit, un numero negativo x si rappresenta con il valore binario corrispondente a 2 n +x. Ad esempio, con successioni di 4 bit 0000 0 1101 3 = 10000-11 0001 1 1110 2 = 10000-10 0010 2 1111 1 = 10000 1 Walter Cazzola Lez. 5: Codifica delle Informazioni 27

Codifica Binaria: Interi Relativi Complemento a 2 con 3 bit Se usiamo una cella di 3 bit abbiamo 000 +1 001 +1 010 +1 011 +1 100 +1 101 +1 110 +1 111 +1 1000; ma, siccome abbiamo solo 3 bit: 111 +1 000 cioè si torna a 0, come nell orologio dopo il minuto 59 Dunque una cella di 3 bit è come un orologio con ore di 8 = 2 3 minuti Walter Cazzola Lez. 5: Codifica delle Informazioni 28

Codifica Binaria: Interi Relativi Complemento a 2 con 3 bit Cioè, complemento a 2 con 3 bit significa in complemento a 8 = 2 3 0 7 1 0-1 6 2-2 1 2 5 4 3-3 -4 3 Valori assoluti Valori in complemento; per gli arancione: quanto manca a 8? Walter Cazzola Lez. 5: Codifica delle Informazioni 29

Codifica Binaria: Interi Relativi Complemento a 2 con 3 bit (bit( di segno) numero assoluto numero in compl. a 2 000 0 0 100 4-4 001 1 1 101 5-3 010 2 2 110 6-2 011 3 3 111 7-1 1 bit 0: + 1 bit detto bit di segno 1 bit 1: - Walter Cazzola Lez. 5: Codifica delle Informazioni 30

Codifica Binaria: Interi Relativi Rappresentazione in complemento a due Con n bit possono essere rappresentati gli interi compresi tra 2 n-1 e +(2 n-1 1). Operativamente, si complementano i bit della rappresentazione binaria del modulo x del numero e si somma 1 al risultato Ad esempio, con successioni di 4 bit (2 4 =16) 5 dieci = 0101 5 dieci = 1010 + 1 = 1011 Walter Cazzola Lez. 5: Codifica delle Informazioni 31

Errori di Overflow L intervallo dei numeri interi (assoluto o relativi) rappresentabili con un fissato numero di bit è limitato. Eseguendo un operazione su numeri rappresentabili, può accadere che il risultato esca dall intervallo rappresentabile; in tal caso si dice che: si ha un errore di overflow ESEMPIO con 8 bit Caso di valori assoluti: massimo rappresentabile = 255 Overflow 150 + 150 = 300 perché > 255 Caso complemento a 2: intervallo rappr.: -128. 128..127.127 Overflow -100-100 = -200 perché < -128 Walter Cazzola Lez. 5: Codifica delle Informazioni 32

Numeri Frazionari Rappresentazione con la virgola: c n... c 0,c -1... c -k = c n B n +... + c 0 B 0 + c -1 B -1 +... + c -k B -k Per passare dalla rappresentazione in base B al numero si applica la definizione. Esempio col numero binario 101,01 tralasciando il contributo nullo delle cifre 0: 101,01 = 1. 2 2 + 1. 2 0 + 1. 2-2 = 4 + 1 + 1/4 = 5,25 Walter Cazzola Lez. 5: Codifica delle Informazioni 33

Numeri Frazionari: dal Numero alla Rappresentazione Si trattano separatamente parte intera e frazionaria; per la intera, si procede come per i numeri interi; per la frazionaria, si applica la proprietà: sia sia 0,c -1 c -2... c -k = n ; allora c -1,c -2... c -k = B. n Esempio Esempio in decimale: 0,231. 10 = 2,31 moltiplicando per la base 10 emerge la cifra 2 Cioè, per far emergere c -1 basta moltiplicare per B; moltiplicando ancora per B emergerà c -2 e così via Walter Cazzola Lez. 5: Codifica delle Informazioni 34

Numeri Frazionari: dal Numero alla Rappresentazione Si riporta la parte frazionaria della riga precedente Si riporta la parte intera come cifra parte frazionaria base prodotto parte intera Contiene le cifre binarie, nell ordine 0,25 2 = 0,5 2 = 1,0 0 2 = 0,5 0 1 Ci si arresta quando la parte frazionaria si azzera 0,25 = 0,01 Nota: : un numero può essere non periodico in una base e periodico in un altra: es. 0,4 due 0,0110011001100. 0,4 dieci = due Walter Cazzola Lez. 5: Codifica delle Informazioni 35

Codifica: Numeri Razionali Notazione scientifica: : un numero viene rappresentato come: ±m x 10 p Es. 123.000.000 = 1,23x10 8 Se, in generale, la base è B,, la rappresentazione è: ± m x B p. Il coefficiente m è detto mantissa (la convenzione è di inserire implicitamente la virgola decimale subito dopo la prima cifra). P, detto caratteristica, è l esponente a cui elevare la base B. Es. 1,23x10 8 base 10, segno +, mantissa 123, caratteristica 8 Walter Cazzola Lez. 5: Codifica delle Informazioni 36

Codifica Binaria: Numeri Razionali La rappresentazione binaria dei numeri razionali che usa la notazione scientifica è detta rappresentazione in virgola mobile (floating point). 101010000 due = 1,0101x10 1000 due Cambiando il numero di cifre dedicato alla rappresentazione di mantissa ed esponente cambia la precisione dei risultati che si ottengono. L interesse a uniformare la precisione di calcolo ha condotto alla definizione di uno standard internazionale proposto dall Institute of Electrical and Electronic Engineers (IEEE). Walter Cazzola Lez. 5: Codifica delle Informazioni 37

Codifica Binaria: Numeri Razionali Virgola Mobile (floating( point) Virgola mobile: m E e con mantissa m per numeri diversi da 0: 1 m < B e esponente significato m E e = m. B e Esempio decimale: 344,013 in virgola mobile si scrive: 3,44013 3,44013 E 3 = 3,44013. 10 3 Esempio binario: 10,1001 in virgola mobile si scrive: 1,01001 E 10 = (1+2-2 +2-5 ). 2 2 Walter Cazzola Lez. 5: Codifica delle Informazioni 38

Rappresentazione Floating Point: Singola Precisione, 32 bit Utilizzando 32 bit per rappresentare un floating point, si ha: 1 bit di segno (0 rappresenta il +); 8 bit per l esponente (E=e-127); e 23 bit per la mantissa (mantissa 1,F). s e F Nota: l esponente 127, cioè 00000000 è usato per rappresentare lo zero. Quindi il numero più piccolo positivo sarà: 0 00000001 00000000000000000000000. Walter Cazzola Lez. 5: Codifica delle Informazioni 39

Codifica Binaria: Numeri Reali La rappresentazione esatta di un numero irrazionale richiederebbe un numero infinito di cifre Es. 1/3 = 0,3333333 π = 3,14159.. Un problema analogo sorge per numeri con valore assoluto molto grande o molto piccolo, in cui il numero di cifre richiesto non sarebbe infinito, ma molto elevato. In questi casi possiamo considerare solo le cifre piú significative. Walter Cazzola Lez. 5: Codifica delle Informazioni 40

Codifica Binaria: Errori di Arrotondamento Qualunque sia la codifica scelta, la rappresentazione dei numeri nel calcolatore è soggetta ad approssimazioni. Il limitato numero di cifre disponibili nella mantissa porta ad errori di arrotondamento quando si debbano rappresentare numeri con una mantissa più lunga. Tali approssimazioni si propagano nel corso della esecuzione delle operazioni causando errori numerici anche importanti. Il calcolo numerico è la disciplina che studia le proprietà dell esecuzione delle operazioni tramite calcolatore e valuta l entità degli errori introdotti durante l esecuzione. Walter Cazzola Lez. 5: Codifica delle Informazioni 41

Rappresentazione delle Informazioni non Numeriche Nella memoria del computer è possibile memorizzare esclusivamente sequenze di bit e il processore può processare soltanto dati espressi come sequenze di bit. Come memorizzo filmati, immagini e suoni? Walter Cazzola Lez. 5: Codifica delle Informazioni 42

Grandezze Digitali e Analogiche Si chiama digitale una grandezza che può assumere un insieme numerabile di valori. Ad esempio: il numero di granelli di sabbia di una spiaggia caraibica,, il numero di stelle e pianeti nell universo. Se la grandezza può assumere valori all interno di un insieme finito, allora è detta finita. Si chiama analogica una grandezza che può assumere un insieme non numerabile (cioè continuo) di valori. Per esempio l intensità di corrente che passa attraverso un filo. Walter Cazzola Lez. 5: Codifica delle Informazioni 43

Analogico vs Digitale Il computer può lavorare soltanto con grandezze di tipo digitale e finite. Non tutte le grandezze che vorremmo rappresentare sono digitali (es( es: : il colore, il suono, le forme). Dobbiamo Discretizzare le informazioni Dobbiamo trasformare le informazioni da analogico a digitale, e codificarele come sequenze di bit prima di poterle trasmettere al computer. Walter Cazzola Lez. 5: Codifica delle Informazioni 44

Da Analogico a Digitale La trasformazione del segnale da analogico a digitale consiste di due passi: Campionamento: : il segnale viene misurato a intervalli discreti la frequenza di campionamento è il numero di campioni rilevati in un intervallo (di spazio o di tempo); se la frequenza di campionamento è troppo bassa si perde una parte del segnale; Walter Cazzola Lez. 5: Codifica delle Informazioni 45

Da Analogico a Digitale (Segue) Quantizzazione: : i valori possibili che ciascun elemento del campione può assumere sono fissati i livelli di quantizzazione sono generalmente fissati a intervalli regolari; Se il livelli di quantizzazione sono troppo pochi non si riescono a rappresentare passaggi di valore graduali; Walter Cazzola Lez. 5: Codifica delle Informazioni 46

Da Analogico a Digitale (Segue) Esempi di campionamento e quantizzazione: 9 livelli di quantizzazione Campionamento a 20 hertz 2 livelli di quantizzazione Campionamento (risoluzione): 25 punti al cm 2 Walter Cazzola Lez. 5: Codifica delle Informazioni 47

Rappresentazione delle Forme Le forme sono elementi di tipo analogico, perché costituite da un tratto continuo. Per rappresentare in modo digitale una forma la si inscrive in una griglia. Walter Cazzola Lez. 5: Codifica delle Informazioni 48

Rappresentazione delle Forme (Segue) Ogni elemento della griglia può essere pieno oppure vuoto. Il contenuto delle celle della griglia è l immagine digitalizzata Walter Cazzola Lez. 5: Codifica delle Informazioni 49

Rappresentazione delle Forme (Segue) La densità di celle nella griglia è detta risoluzione. Più fitta è la griglia, più la digitalizzazione è fedele all originale. Se si dedicano n celle alla rappresentazione di una immagine (in bianco e nero), sono necessari n bit. Una qualità di rappresentazione maggiore (griglia più fitta) richiede una occupazione di memoria maggiore. Walter Cazzola Lez. 5: Codifica delle Informazioni 50

Rappresentazione dei Colori Se si vuole aggiungere informazione riguardo ai colori, si può aggiungere, per ogni cella, una tavolozza nella quale è stato selezionato il colore dell immagine in quel punto. Se la tavolozza contiene m colori, sono necessari m bit (verrà messo a 1 il bit corrispondente al colore che interessa, a 0 tutti gli altri). In totale: n*m bit per rappresentare una immagine su una griglia di n elementi. Walter Cazzola Lez. 5: Codifica delle Informazioni 51

Rappresentazione delle Immagini Se si vogliono rappresentare immagini complesse, come ad esempio un paesaggio o un ritratto, garantendo una buona risoluzione dell immagine e una fedeltà cromatica, allora le esigenze in termini di occupazione di memoria crescono molto velocemente. Infatti: la tavolozza deve rappresentare la digitalizzazione dello spettro cromatico (grandezza analogica) per poter mantenere le sfumature; la griglia deve essere abbastanza fitta da non perdere i particolari dell immagine. Se si usano 8 bit si possono rappresentare 256 colori diversi. Questa quantizzazione non è sufficiente per mantenere le sfumature presenti nell originale. Walter Cazzola Lez. 5: Codifica delle Informazioni 52

Rappresentazione delle Immagini Il metodo RGB (Red( Red,, Green and Blue) prevede di: associare 3 byte ad ogni cella, uno per il rosso, uno per il verde e uno per il blu Rappresentare le sfumature per ciascun colore primario con un insieme di 8 bit. In totale sono rappresentabili: 2 8 =256 sfumature per ciascun colore primario. Ad ogni cella sono quindi associati 3*8= 24 bit, e si possono rappresentare 2 24 = circa 16 milioni di colori diversi. Walter Cazzola Lez. 5: Codifica delle Informazioni 53

Rappresentazione delle Immagini: Formati BITMAP: : è il formato della rappresentazione più semplice: la sequenza dei bit della griglia ad ognuno dei quali sono associati 24 bit per il colore. E ingombrante. I file di tipo bitmap hanno estensione.bmp. Per evitare una eccessiva occupazione di memoria si sono introdotti metodi per la codifica che prevedono anche una compressione delle immagini. Tali sistemi sono basati su vari criteri orientati alla eliminazione delle parti superflue nella rappresentazione (per esempio una sequenza di celle dello stesso colore). Walter Cazzola Lez. 5: Codifica delle Informazioni 54

Rappresentazione delle Immagini: Formati I sistemi di codifica con compressione più diffusi sono: GIF (Graphic Interchange Format): Compressione; 8 bit per il colore; Adatto alla rappresentazione di immagini semplici I file che contengono immagini codificate secondo questo sistema hanno estensione.gif. PNG (portable Network Graphics): Compressione migliore rispetto a GIF 24 bit per il colore I file che contengono immagini codificate secondo questo sistema hanno estensione.png. Walter Cazzola Lez. 5: Codifica delle Informazioni 55

Rappresentazione delle Immagini: Formati JPEG (Joint Picture Experts Group): Codifica più efficiente rispetto al GIF; Colori codificati con 24 bit; Adatto a rappresentare immagini ricche di sfumature di colore. I file che contengono immagini codificate secondo questo sistema hanno estensione.jpg. TIFF (Tagged Image File Format): Compressione che mantiene una fedeltà maggiore all immagine originale; Colori rappresentati con 24 bit; Rispetto agli altri che compattano l immagine richiede una occupazione di memoria maggiore. I file che contengono immagini codificate secondo questo sistema hanno estensione.tif Walter Cazzola Lez. 5: Codifica delle Informazioni 56

Rappresentazione del Suono La digitalizzazione avviene nel dominio delle frequenze. La frequenza di campionamento è espressa in Khz (migliaia di hertz al secondo). I livelli di quantizzazione costituiscono i suoni base diversi che si possono distinguere: 8 bit (256 suoni) per un segnale tipo telefonico; 16 bit (circa 65.000 suoni) per una qualità CD; Anche nel caso del suono i sistemi di codifica includono la compressione delle informazioni, per ridurre la dimensione dei file. Walter Cazzola Lez. 5: Codifica delle Informazioni 57

Rappresentazione del Suono: Formati Formati di file audio più diffusi: AIFF (Audio Interchange File Format) Estensione:.aif WAVE Comparabile al.aif Estensione.wav MP3 (MPEG Audio Layer 3) Formato compresso a perdita di informazione Estensione.mp3 Walter Cazzola Lez. 5: Codifica delle Informazioni 58

Rappresentazione di Informazioni Multimediali A questo punto è chiaro che la rappresentazione digitale di informazioni multimediali,, che consistono di testo, immagini, filmati (che sono sequenze di migliaia di fotogrammi) e suoni, richiede una occupazione di memoria imponente. Formati più diffusi per la rappresentazione multimediale: MPEG (Moving Picture Expert Group), estensione.mpg QuickTime (nato su Macintosh), estensione.mov. AVI (Audio Video Interleaved), estensione.avi (usato per i divx) Walter Cazzola Lez. 5: Codifica delle Informazioni 59

Riassumendo La frequenza di campionamento: nelle immagini è data dal numero di celle per unità di superficie, in genere misurata in punti per pollice(dpi: dot per inch) nel suono è misurata in Khz. I livelli di quantizzazione: Nelle immagini: 16 milioni di colori - 24 bit 256 colori 8 bit 64 colori 6 bit 2 colori 1 bit Nel suono 256 8 bit (codifica usata per la trasmissione sulla rete) 65536 valori 16 bit (codifica usata nei CD) Walter Cazzola Lez. 5: Codifica delle Informazioni 60