Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione Rappresentazione dell’Informazione parte 2 Aritmetica binaria • Somma tra numeri binari + 0 1 0 0 1 1 1 10 Somma tra numeri binari 1 1 + 1 = 0 1 1 1 1 1 1 0 1 1 1 0 1 0 0 + 1 = 1 0 1 0 1 + 1 = 0 Codifica dei numeri interi negativi • Prima soluzione: 1 bit per il segno, gli altri per il valore assoluto del numero • con quattro bit: 0000 +0 0001 +1 0010 +2 ... 0111 +7 1000 -0 1001 -1 1010 -2 ... 1111 -7 Codifica dei numeri interi negativi • due controindicazioni: – 2 rappresentazioni dello 0 – non si possono applicare le regole tradizionali per le operazioni aritmetiche: 0 1 1 0 0 1 1 1 0 0 + +2 1 = -3 1 -5 Codifica dei numeri interi negativi • Rappresentazione in complemento a 2 – bit più significativo (più a sx) per rappresentare il segno (0 per il +, 1 per il -) – comune rappresentazione binaria per i numeri positivi – inversione dei restanti bit per i numeri negativi (01 e 10) e poi si somma 1 Es. rappresentazione in complemento a 2 • - 5 con quattro bit – il bit di segno è 1 • Conversione: 510 = 01012 • Inversione: 0101 1010 • Somma di 1: 1010 + 1 = 1011 • Verifica: + 5 0101 – 5 1011 = 0 = (1)0000 Conversione da binario in decimale con segno • se prima cifra 0 numero positivo conversione solita (es. 0100 +4) • se prima cifra 1 numero negativo – inversione dei bit (tranne il primo) – conversione da binario a decimale – somma di 1 Es. Conversione da binario in decimale con segno • 1101 – tolgo il bit di segno 101 – Inversione 010 – Conversione in decimale 0102 = 210 – Somma 2 + 1 = 3 – Segno -3 Rappresentazione in complemento a 2 • Con quattro bit: 0000 0001 0010 0011 0100 0101 0110 0111 0 +1 +2 +3 +4 +5 +6 +7 1000 1001 1010 1011 1100 1101 1110 1111 -8 -7 -6 -5 -4 -3 -2 -1 Codifica floating point (con virgola mobile) • Rappresentazione per – numeri razionali – numeri con valore assoluto molto grande • Vengono ricondotti a numeri interi rappresentabili tramite potenze di 10 – N = x * 10y <x,y> <mantissa, esponente> – Es. 12,5 = 125 * 10-1 <125, -1> – 1,25 = 125 * 10-2 <125, -2> – 3125432 = 3125 * 103 <3125, 3> (rappresentabile anche se in modo approssimato) Codifica floating point MANTISSA ESPONENTE RAPPR. NUMERI + + Positivi grandi + - Positivi con virgola - + Negativi grandi - - Negativi con virgola Codifica floating point. Quanti bit? • Con 16 (32) bit – 2 bit per il segno di mantissa e esponente – 9 (20) bit per la mantissa – 5 (10) bit per l’esponente • Non è usata la rappresentazione con complemento a 2 e quindi servono tecniche particolari per eseguire le operazioni tra i numeri floating point – Co-processore matematico (Floating Point Unit) Esempio • Con 4 bit: 9999 + 1 = 10000 (overflow) <10,3> – anzichè generare un errore di overflow consente la rappresentazione del risultato • Con 4 bit: 9999 + 10 = 10009 <10, 3> – consente la rappresentazione del risultato anche se a scapito della precisione Rappresentazione digitale di immagini b/n • B/n senza ombreggiature 2 valori possibili per ogni pixel (es. 0 = bianco, 1 = nero) 1 bit 21 22 23 24 17 18 19 20 13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4 000001100 1 0 0 0 1 0 0 0 1 0 0… 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 … Rappresentazione digitale di immagini • Colori – 4 bit 24=16 diversi livelli di grigio o colori – 8 bit 28=256 diversi colori • Aumento della precisione – Aumentando il numero dei pixel (quindi, diminuendo la loro dimensione) – RISOLUZIONE = precisione della suddivisione – Pixel = unità di misura della risoluzione – Es. 6 X 4 pixel – nei video dei PC risoluzioni standard sono 640 X 480 o 1024 X 768 Filmati • Rappresentazione come sequenze di fotogrammi • Frequenza= Num. Fotogrammi nell’unità di tempo – Es. Immagini TV 25/30 fotogrammi al sec Tecniche di compressione • Le immagini possono richiedere molto spazio per la loro memorizzazione • Esempi di tecniche di compressione – 000000000011 10 volte 0, 2 volte 1 – Memorizzazione non di tutti i bit o fotogrammi (riduzione di fedeltà rispetto all’originale ma spesso non è percepibile dall’occhio umano) – Es. MPEG: un fotogramma ogni 12 Elaborazione delle immagini • Dopo la digitalizzazione un’immagine può essere modificata modificando la sequenza di bit che la rappresenta • Ad esempio – Modifica dei colori – Eliminazione oggetti rappresentati o loro sostituzione – Trasmissione criptata delle payTV Codifica dei suoni Rappr. Analogica – analoga alla quantità fisica in esame Rappr. Digitale – Campionatura dell’onda sonora Codifica dei suoni • Rappresentazione tanto più precisa tanto più – Frequente è la campionatura – Maggiore il numero di bit per codificare l’info – Es. Schede audio PC 10.000/40.000 campioni al secondo e 16 bit per campione Elaborazione dei suoni • Dopo la digitalizzazione ... come per le immagini è possibile – eliminare parte del suono (es. rumori di fondo) – modificare il suono (es. voci distorte) – ...