La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

La rappresentazione delle informazioni Dr. Francesco Fabozzi Corso di Informatica.

Presentazioni simili


Presentazione sul tema: "La rappresentazione delle informazioni Dr. Francesco Fabozzi Corso di Informatica."— Transcript della presentazione:

1 La rappresentazione delle informazioni Dr. Francesco Fabozzi Corso di Informatica

2 2 La matematica degli elaboratori In un elaboratore linformazione (numero, testo, immagine, filmato, audio, ecc.) viene rappresentata con dei numeri (cioè con sequenze di cifre) Pertanto lelaborazione dellinformazione si riduce in ultima analisi a compiere delle operazioni su dei dati numerici Quante cifre ho a disposizione in un elaboratore? –Solo due cifre! –Il motivo risiede nellelettronica dellelaboratore

3 3 La matematica degli elaboratori Lelaboratore è un dispositivo elettronico –I circuiti elementari che lo compongono hanno solo due possibili stati fisici Stato On / Stato Off –A ogni stato fisico è associata una cifra On = 1; Off = 0 Quindi la matematica di un elaboratore utilizza solo 2 cifre (matematica binaria) –I numeri saranno sequenze di 0 e 1 –Una cifra binaria si chiama bit (binary digit)

4 4 Bit Il bit (b) può considerarsi lunità elementare di informazione Quante informazioni posso rappresentare con un bit? –Poiché un bit può assumere solo due valori posso rappresentare solo due informazioni Acceso / Spento (1 / 0) Presente / Assente (1 / 0) Vero / Falso (1 / 0) Alto / Basso (1 / 0)

5 5 Sequenze di bit Per rappresentare più informazioni devo usare sequenze di bit Esempio: sequenza di due bit –Con due bit posso scrivere 4 (= 2 2 ) sequenze distinte 00, 01, 10, 11 –Quindi posso rappresentare al massimo 4 informazioni –Esempio: i colori di un semaforo Verde (00), Giallo (01), Rosso (10)

6 6 Sequenze di bit Con 3 bit posso scrivere 8 ( = 2 3 ) sequenze distinte –000, 001, 010, 011, 100, 101, 110, 111 –Quindi con tre bit posso rappresentare al massimo 8 informazioni Regola generale: con n bit posso codificare al massimo 2 n informazioni Codificare un informazione = associare uninformazione a una sequenza di bit

7 7 Byte e Word Un sequenza di 8 bit viene detta Byte (B) –Con un Byte posso codificare 256 informazioni –Esempio: tutti i caratteri alfanumerici (numeri, lettere, segni di interpunzione) sono codificati in un elaboratore utilizzando un Byte Si chiama Word una sequenza di bit (tipicamente un multiplo del Byte) su cui un certo elaboratore esegue operazioni elementari –Possiamo avere Word a 8, 16, 32 o 64 bit

8 8 Byte e Word bit Byte bit- Word bit- Word

9 9 kB, MB, GB, TB La memoria occupata dalle informazioni si misura nel numero di Byte necessari per rappresentarle. Ad esempio: –Un file di testo occupa circa un migliaio di Byte –Un file di immagine occupa circa un milione di Byte Dagli esempi risulta che è più comodo usare multipli del Byte –I simboli sono simili a quelli del sistema metrico decimale (k, M, G, T) ma il significato è leggermente diverso

10 10 kB, MB, GB, TB Dalla tabella –1kB = 1 KiloByte = 1024 Byte ~ 10 3 Byte –1MB = 1 MegaByte = 1024 kB ~ 10 6 Byte –1GB = 1 GigaByte = 1024 MB ~ 10 9 Byte –1TB = 1 TeraByte = 1024 GB ~ Byte MultiploSiglaValoreValore approssimato Kilok2 10 = 1024~10 3 MegaM2 20 = 1024k~10 6 GigaG2 30 = 1024 M~10 9 TeraT2 40 = 1024 G~10 12

11 11 Oltre il sistema decimale La matematica che usiamo correntemente è decimale –Basata su 10 simboli (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) –Ciò nasce dal fatto che la nostra civiltà usa per contare le 10 dita delle mani Ma posso avere anche altri sistemi di numerazione che si differenziano per il numero di simboli usati –Sistema binario, ottale, esadecimale, … Le regole di calcolo apprese per il sistema decimale si applicano anche agli altri sistemi

12 12 Sistemi numerici In un sistema di numerazione il numero di cifre utilizzato si chiama base del sistema –Sistema binario = sistema in base 2 –Sistema ottale = sistema in base 8 –Sistema esadecimale = sistema in base 16 La numerazione in un sistema non decimale è uguale a quella nel sistema decimale –I primi numeri sono rappresentati nellordine dai simboli disponibili –Esauriti i simboli disponibili, si aggiunge una seconda cifra alla sinistra, mentre la prima cifra ritorna su tutti i possibili valori, e così via

13 13 Numerazione Decimale BinarioOttaleEsadecimale A B C D E F

14 14 Sistemi posizionali I sistemi numerici visti sono posizionali –Il valore assunto da una cifra dipende dalla posizione in cui si trova nel numero –Infatti questo valore è uguale alla cifra moltiplicata per un fattore (peso) che dipende dalla posizione della cifra stessa nel numero –peso = ( base ) posizione dove posizione = 0, 1, 2, …

15 15 Sistemi posizionali La posizione si indica con un numero intero che parte da 0 –0 corrisponde alla posizione della cifra più a destra Quindi: –La cifra più a destra è quella con il peso più basso (=1) Cifra meno significativa (LSB = Least Significant Bit) –La cifra più a sinistra è quella con il peso più alto Cifra più significativa (MSB = Most Significant Bit) Il valore totale di un numero è uguale alla somma dei valori associati ad ogni cifra

16 16 Sistemi posizionali Esempio: numero 524 in base 8 e 10 In base 10: 524 = 5 centinaia + 2 decine + 4 unità Pesi in base Pesi in base 8 In base 8: = = 340

17 17 Conversione da base 10 a base n Metodo delle divisioni successive Esempio: convertiamo il numero a base 2 DivisioneQuozienteResto 34:2170 LSB 17:281 8:240 4:220 2:210 1:201 MSB =

18 18 Conversione da base 2 a base 8 Si raggruppano le cifre a 3 a 3 a partire da destra e si convertono nel simbolo ottale –Infatti con tre cifre binarie conto fino a 7 –Se necessario si aggiungono zeri a sinistra Esempio: convertiamo il numero in ottale 1 | 100 | 101 | | 100 | 101 | =

19 19 Conversione da base 2 a base 16 Si raggruppano le cifre a 4 a 4 a partire da destra e si convertono nel simbolo esadecimale –Infatti con 4 cifre binarie conto fino a 15 –Se necessario si aggiungono zeri a sinistra Esempio: convertiamo il numero in esadecimale 11 | 0010 | | 0010 | F = 32F 16

20 20 Conversione da base 8 (16) a base 2 Si invertono le regole precedenti –Si converte ogni cifra ottale in 3 cifre binarie –Si converte ogni cifra esadecimale in 4 cifre binarie Esempio: convertiamo il numero A73F 16 in binario A | 7 | 3 | F A73F 16 =

21 21 Aritmetica binaria Stesse regole del calcolo in decimale Vediamo la somma binaria SommaRisultatoRiporto Somma di due bit = Esempio: sommiamo in binario 10 e 11 ( = 21):

22 22 Numeri binari relativi Per rappresentare interi con un segno si possono usare diverse tecniche –Metodo più semplice:aggiungere un bit a sinistra per rappresentare il segno 0 = numero positivo, 1 = numero negativo Quindi se ho a disposizione 8 bit, 7 bit rappresentano il modulo e un bit rappresenta il segno Problemi: esiste un doppio 0 e la somma di due numeri relativi non dà sempre risultato corretto Nota: Solo 7 bit usati per il modulo con 8 bit rappresento da -127 a +127

23 23 Numeri binari relativi Altre tecniche –Complemento alla base Un numero negativo di modulo N è rappresentato con n cifre dal numero 2 n -N Esempio: numero -5 con 4 cifre 16-5 = Non esiste doppio 0 –Con 8 bit rappresento da -128 a +127 Sommo correttamente due numeri relativi –Eccesso M Fissato M, il numero relativo N viene rappresentato dal numero N+M Esempio: eccesso 8: ; – 5 = 0000 (corretto, perché mi limito a 4 cifre)

24 24 Numeri frazionari Quando si ha a che fare con numeri frazionari sorge il problema di rappresentare numeri molto grandi o molto piccoli senza eccedere col numero di bit Si usa la notazione in virgola mobile (floating point) –Il numero viene scritto come prodotto di un numero (mantissa) per la base elevata a una certa potenza Esempio1: = Esempio2: =

25 25 Numeri frazionari Utilizzando la notazione floating point, poiché la base è fissata ( = 2) devo solo rappresentare segno, mantissa ed esponente –Lesponente è rappresentato in eccesso M –In base 2 la mantissa è sempre del tipo 1.F Quindi basta rappresentare solo F Esempio: se lelaboratore rappresenta i dati con 32 bit –1 bit per il segno del numero –8 bit per lesponente –23 bit per la mantissa

26 26 Precisione della rappresentazione La precisione della rappresentazione di un numero è data dal numero di bit usati per rappresentarlo CampoSingola precisione Doppia precisione Quadrupla precisione Bit totali S111 E81115 F E max N = (-1) S ·1.F ·2 E+M

27 27 Esempio Rappresentazione di un numero N in singola precisione N = N = ·2 7 1) Esprimiamo il numero in notazione scientifica 2) Bit di segno S = 1 3) Rappresentazione dellesponente E in eccesso M = 128 E = = 135 = ) Rappresentazione della mantissa F F =

28 28 Variabili booleane Una variabile booleana è una variabile che può assumere solo due valori –vero / falso (detti valori di verità della variabile) Una variabile booleana è rappresentabile con un bit Ad esempio: 1= vero; 0 = falso

29 29 Funzioni booleane Posso anche avere funzioni di variabili booleane –I valori di verità che una funzione assume in dipendenza dei possibili valori di verità delle variabili sono espressi mediante tabelle di verità

30 30 Funzioni NOT, OR, AND Semplici funzioni booleane caratterizzate dalle seguenti tabelle di verità: ABA+B Funzione OR ( + ) ABA·BA·B Funzione AND ( · ) AĀ Funzione NOT ( ¯ )

31 31 Codice ASCII Esiste uno standard internazionale per la codifica binaria dei caratteri alfanumerici che compaiono in un testo: codice ASCII –Standard determinato dallANSI (organismo di standardizzazione internazionale) Un carattere è codificato con 7 bit –Posso rappresentare fino a 128 caratteri (ASCII standard) –Con un bit aggiuntivo codifico altri 128 caratteri Codici ASCII estesi (non standard)

32 32 Stringhe Una stringa è una successione ordinata di caratteri alfanumerici –Parole, frasi, testi sono delle stringhe Esempio: Oggi è una bella giornata è una stringa di 26 caratteri NOTA: nel calcolo dei caratteri abbiamo considerato anche gli spazi bianchi e un carattere di fine stringa oggièunabellagiornata\0 \0 = carattere di fine stringa

33 33 Codifica di stringhe Una stringa è codificata come una sequenza di byte –Un byte per ogni carattere alfanumerico codificato in ASCII Ma occorrono anche dei byte aggiuntivi –Indicano la lunghezza della stringa o il carattere di fine stringa –Vi possono essere dei byte aggiuntivi per codificare le informazioni di formattazione (font dei caratteri, grandezza dei caratteri, ecc.)

34 34 Codifica di vettori Si dice vettore (array) una sequenza ordinata di oggetti di uno stesso tipo –E la generalizzazione del concetto di stringa –Esempio: i risultati del compito scritto di Fisica (9 studenti partecipanti) possono essere organizzati in un vettore di 9 numeri: # studente voto Si può avere anche un vettore di vettori (vettori multidimensionali)

35 35 Analogico e digitale Una quantità analogica è una quantità che può assumere tutti gli infiniti valori contenuti in un certo intervallo Una quantità digitale è una quantità che può assumere solo un numero discreto di valori –Esempi di quantità digitali: Un numero intero, un carattere codificato in ASCII, il tempo segnato da un cronometro digitale

36 36 Analogico e digitale Esempio di quantità analogica: la temperatura di una stanza nellarco di una giornata varia con continuità in un certo intervallo di temperatura

37 37 Analogico e digitale Esempio di quantità analogica: unonda sonora Segnale elettrico (registrato con un microfono) che rappresenta la voce umana

38 38 Digitalizzazione dellinformazione Linformazione in un computer viene immagazzinata in formato digitale Problema: come faccio a fare in modo che un computer possa operare su una quantità analogica (ad esempio il suono)? –Necessità di digitalizzare linformazione analogica (conversione analogico-digitale)

39 39 Digitalizzazione dellinformazione Riprendiamo lesempio della temperatura nella stanza Segnale analogico Segnale digitale Procedura di campionamento: ogni ora misuro la temperatura della stanza campionamento Le temperature ad ogni ora formano un insieme discreto di 24 valori che possono essere codificati con numeri binari e immagazzinati nella memoria del computer

40 40 Codifica audio Campionamento del suono –Operazione simile allesempio della temperatura: prelevo un campione di segnale analogico ad intervalli di tempo regolari Ovviamente loperazione va fatta a una frequenza maggiore di quella del segnale da campionare Loperazione di campionamento produce una serie di valori numerici in uscita –Questi valori sono memorizzati in file audio (ad esempio file.mp3) Per poter ascoltare il suono a partire dal file occorre un dispositivo che fa loperazione inversa (convertitore digitale-analogico)

41 41 Codifica di immagini Per digitalizzare unimmagine si divide limmagine stessa in una griglia di punti detti pixel (picture element) –Ad ogni pixel viene associata una sequenza di byte che codificano la posizione del punto nellimmagine e il suo colore Se aumenta il numero di pixel o la gamma dei colori che voglio riprodurre deve aumentare il numero di bit necessari per rappresentare queste informazioni

42 42 Codifica di immagini Con 1 bit posso riprodurre solo immagini in bianco e nero (senza sfumature di grigio) –Quanti colori posso riprodurre con 24 bit? Risposta: 2 24 colori = 16.8 milioni di colori Il numero di pixel determina la risoluzione dellimmagine (cioè il livello di dettaglio) –Maggiore è la risoluzione e più è possibile ingrandire limmagine senza perdere in qualità –Esempi di risoluzioni tipiche: 800x600, 1024x768

43 43 Codifica di immagini Aumento della risoluzione

44 44 Codifica di immagini Domanda: quanta memoria occupa unimmagine con risoluzione 1024x768 e che utilizza una profondità di colore di 8 bit? –Risposta: 1024 x 768 x 1 Byte = 768 KB –Questo tipo di immagine si chiama Bit Mapped (mappa di bit) ed il relativo file ha estensione.bmp I file.bmp occupano molta memoria per cui sono stati introdotti dei formati compressi –Formato GIF (file con estensione.gif) –Formato JPEG (file con estensione.jpg)

45 45 Controllo dellerrore Nella trasmissione o memorizzazione di dati sono necessarie tecniche per il controllo di eventuali errori Una semplice tecnica è quella del bit di parità –Ad ogni Byte viene aggiunto un bit tale da rendere pari il numero complessivo di 1 nel Byte –Se in ricezione o lettura trovo un numero dispari di 1 vuol dire che ce stato un errore –Il metodo funziona solo per errori singoli Per individuare lerrore (e correggerlo) è necessario un ulteriore Byte di parità

46 46 Bit di parità Byte di parità Individuazione dellerrore


Scaricare ppt "La rappresentazione delle informazioni Dr. Francesco Fabozzi Corso di Informatica."

Presentazioni simili


Annunci Google