Seconda parte corso Alfabetizzazione informatica.

53
Seconda parte corso Alfabetizzazione informatica

Transcript of Seconda parte corso Alfabetizzazione informatica.

Page 1: Seconda parte corso Alfabetizzazione informatica.

Seconda parte corso

Alfabetizzazione informatica

Page 2: Seconda parte corso Alfabetizzazione informatica.

Argomenti

Rappresentazione dell’informazione (+ esercizi)

Architettura funzionale di un elaboratore

Page 3: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione dell’informazione

Page 4: Seconda parte corso Alfabetizzazione informatica.

indice

Rappresentazione e codifica dell’informazione

Rappresentazioni binaria (digitale) bit e sequenze di bit

Codifica binaria dell’informazione Unità di misura Quanti bit...

La codifica dei caratteri ASCII ed ASCII esteso

Page 5: Seconda parte corso Alfabetizzazione informatica.

indice

La codifica dei numeri Notazione posizionale Conversioni da decimale a binario e viceversa Aritmetica binaria Codifica di numeri interi negativi

La codifica di immagini b/n e colori Filmati compressione

La codifica dei suoni (cenni)

Page 6: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione dell’informazione

Varie rappresentazioni sono possibili per la medesima informazione

Es. Testo scritto su carta o registrato su nastro

Rappresentazioni R1 e R2 sono equivalenti se data R1 è possibile ricavare R2 e viceversa

Es. Trascrizione del testo data la sua registrazione e viceversa

Scelta della rappresentazione Spesso convenzionale ... ... ma spesso legata a vincoli Es. Rappresentazione binaria negli elaboratori

Page 7: Seconda parte corso Alfabetizzazione informatica.

Analogico vs digitale

Informazione esplicita nel supporto: per analogia

Informazione implicita nella rappresentazione: serve codifica/decodifica

Pos 0

Pos 1

Pos 3

Pos 4

Pos 5

Pos 6Il numero 6 si codificherebbe come

1011111Pos 2

acceso spento

Page 8: Seconda parte corso Alfabetizzazione informatica.

Dalla rappresentazione alla codifica dell’informazione

Alfabeto: insieme di simboli Es. le 10 cifre (da 0 a 9)

Stringhe: concatenazioni di simboli dell’alfabeto Es. la stringa 123 Esiste un insieme di configurazioni possibili (di solito finito)

Processo di codifica: da informazione a una stringa che la rappresenta

Convenzionale: deve essere condiviso da chi usa Processo di decodifica: da una stringa ad informazione

rappresentazione

Page 9: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione binaria (o digitale)

Informazione rappresentata da stringhe costruite con i simboli 0 e 1

Motivazioni di carattere tecnologico due stati di carica elettrica di una sostanza due stati di polarizzazione di una sostanza magnetizzabile passaggio/non passaggio di corrente in un conduttore passaggio/non passaggio di luce in un cavo ottico

Bit cifra binaria – binary digit Rappresentazione di un’informazione elementare che

convenzionalmente è indicata dai simboli 0 e 1

Page 10: Seconda parte corso Alfabetizzazione informatica.

bit e sequenze di bit

Un bit: si possono rappresentare 2 informazioni 1 e 0 (rappresentazione convenzionale del valore dei bit) vero e falso bianco e nero

Sequenze di bit: si possono rappresentare più info 2 bit: 4 configurazioni possibili (00, 01, 10, 11) 3 bit: 8 configurazioni (000, 001, 010, 011, 100, 101, 110, 111) ...

8 bit (1 Byte): 28 (256) configurazioni ...

N bit: 2N configurazioni

Page 11: Seconda parte corso Alfabetizzazione informatica.

KByte, MByte e GByte

1 KB (KiloByte) = 1000 byte? No! 1 KB = 210 Byte = 1024 Byte

[20 = 1, 21 = 2, 22 = 4, 23 = 8, 24 = 16, 25 = 32,

26 = 64, 27 = 128, 28 = 256, 29 = 512, 210 = 1024]

1 MB (MegaByte) solitamente approssimato a 1 milione di Byte precisamente =1024 KB = 1024 X 1024 Byte =

= 210 X 210 Byte = 220 Byte = 1.048.576 Byte

1 GB (GigaByte) = circa 1 miliardo di Byte

precisamente =1024 MB = 1024 X 1024 KB = 1024 X 1024 X 1024 Byte =

= 210 X 210 X 210 Byte = 230 Byte = 1073741824 Byte

non Kb

non kb

Page 12: Seconda parte corso Alfabetizzazione informatica.

Codifica binaria dell’informazione

Processo di associazione di informazioni a configurazioni di bit

È una convenzione ma deve necessariamente essere condivisa tra chi deve usare l’informazione

Page 13: Seconda parte corso Alfabetizzazione informatica.

Quanti bit per M configurazioni possibili?

Determinare x (numero di bit) tale che 2x M Es. x = 6 per M = 50 Infatti 25 = 32 (insufficiente) Mentre 26 = 64

Per l’alfabeto anglosassone 26 lettere M = 26 x tale che 2x26 x = 5 Es. 00000 = a, 00001= b, 00010 = c, … ma in realtà ...

Page 14: Seconda parte corso Alfabetizzazione informatica.

La codifica dei caratteri

Codifica: processo di associazione di informazioni (caratteri) a configurazioni di bit

Standard ASCII (American Standard Code for Information Interchange)

Non è l’unico standard anche se il più diffuso es. EBCDIC, UNICODE

Page 15: Seconda parte corso Alfabetizzazione informatica.

ASCII

Con sequenze di 7 bit (128 configurazioni) sono codificati i 52 simboli dell’alfabeto anglosassone

(26 maiuscole e 26 minuscole) le 10 cifre i segni di punteggiatura gli operatori aritmetici alcuni caratteri speciali (es. @, %, $, [, ], ...)

Page 16: Seconda parte corso Alfabetizzazione informatica.

ASCII esteso

8 bit = 256 configurazioni Prime 128 configurazioni (tutte precedute da 0) corrispondono alle

128 configurazioni dell’ASCII standard Seguono altre codifiche di caratteri speciali (es. lettere accentate dei

vari alfabeti: à, è, é, ü, ï, ç, ê ...)

Standard non universalmente riconosciuto da tutte le applicazioni e sistemi operativi

Ad es. a volte nello scambio di mail, ci si trova con strani caratteri (sono magari le lettere accentate non riconosciute dal programma di gestione delle mail)

Page 17: Seconda parte corso Alfabetizzazione informatica.

Dall’italiano all’ASCII...

Per scrivere in ASCII una parola (della lingua italiana), si mettono in sequenza le codifiche ASCII dei caratteri che compongono la parola a n i m a

1100001 1101110 1101001 1101101 1100001

Page 18: Seconda parte corso Alfabetizzazione informatica.

…e viceversa

viceversa, per capire che cosa significa una sequenza di caratteri ASCII: si spezza la sequenza in sequenze di 7 bit si fa corrispondere a ogni sequenza il carattere

opportuno 1100001 1101110 1101001 1101101 1100001

a n i m a

Page 19: Seconda parte corso Alfabetizzazione informatica.

La codifica dei numeri

Rappresentazione ASCII delle cifre può funzionare per numeri all’interno di testi non è conveniente per elaborazioni numeriche

spreco di spazio (primi 3 bit sempre uguali) problema per la gestione (e.g. operazioni aritmetiche) efficiente

Es. 0 0110000 1 0110001

2 0110010 3 0110011

4 0110100 5 0110101 Rappresentazione basata sul sistema di numerazione binario

Page 20: Seconda parte corso Alfabetizzazione informatica.

Sistemi di numerazione Numero: entità astratta Numerale: stringa di caratteri (che sono finiti e caratteristici dei sistemi di

numerazione) che rappresenta un numero in un dato sistema di numerazione

Sistema di numerazione: definito da: Un insieme di simboli base (CIFRE) Un insieme di regole per rappresentare un numero mediante una stringa di

cifre Un insieme di operazioni

Base del sistema di numerazione: numero di simboli utilizzati (es. Base 2: 0 e 1)

NOTA: lo stesso numero è rappresentato da numerali diversi in diversi sistemi 156 nel sistema decimale CLVI in cifre romane

Page 21: Seconda parte corso Alfabetizzazione informatica.

Sistemi di numerazione posizionali Il valore del numero rappresentato da un numerale dipende dalle

cifre usate e dalla loro posizione nella stringa

Esempio: Il sistema decimale (base 10) Alle cifre (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) vengono associati nell’ordine i primi 10

numeri naturali Indicata con i la posizione occupata dalla cifra c in una stringa (0 è la prima

posizione a partire da destra), il numero rappresentato da tale cifra è pari a c * 10i

Es: la stringa 4125 (in base 10) rappresenta il numero:

4*103 + 1*102 + 2*101 + 5*100 = 4000 + 100 + 20 + 5 = 4125

Page 22: Seconda parte corso Alfabetizzazione informatica.

Notazione posizionale (decimale)

Dato il numerale 354, ossia 3 centinaia, 5 decine, 4 unità

Il numero è: 3 * 102 + 5 * 101 + 4 * 100

in base 10 con 3 cifre posso rappresentare i numeri da 0 a 999: 1000 numeri, pari a 103 (la base 10 elevata a potenza, con esponente uguale al numero di cifre che uso)

Page 23: Seconda parte corso Alfabetizzazione informatica.

Notazione posizionale (decimale)

Dato un numerale espresso come: cncn-1… c1c0

dove i coefficienti ci possono essere le cifre da 0 a 9

Il numero corrispondente è: cn*10n + cn-1*10n-1 +… + c1*101 + c0*100

In base 10 con N cifre posso rappresentare i 10N numeri da 0 a 10N-1

Page 24: Seconda parte corso Alfabetizzazione informatica.

Notazione posizionale (generale)

Data una base B considerato il numerale cncn-1… c1c0

dove i coefficienti ci possono essere le cifre da 0 a B-1

Il numero corrispondente è: cn*Bn + cn-1*Bn-1 +… + c1*B1 + c0*B0

con N cifre posso rappresentare i BN numeri da 0 a BN-1

Page 25: Seconda parte corso Alfabetizzazione informatica.

Notazione posizionale (binaria)

Considerando B=2 Dato il numerale:

cncn-1… c1c0

dove i coefficienti ci possono essere 0 o 1

Il numero è: cn*2n + ... + c2*22 + c1*21 + c0*20

con N cifre riesco a rappresentare i 2N numeri da 0 a 2N-1

Page 26: Seconda parte corso Alfabetizzazione informatica.

Conversione da notazione binaria a decimale

Es. la sequenza binaria 1011 rappresenta il numero:

1*23 + 0*22 + 1*21 + 1*20

= 1*8 + 0*4 + 1*2 + 1*1

= 11

Generalmente si indica: 10112 = 1110

Page 27: Seconda parte corso Alfabetizzazione informatica.

Conversione da decimale a binario

divido il numero per 2: il resto è la cifra c0

divido il risultato per 2: il resto è la cifra c1

divido il risultato per 2: il resto è la cifra c2

mi fermo quando il risultato è 0 (con resto 1)

Page 28: Seconda parte corso Alfabetizzazione informatica.

Conversione da decimale a binario

Conversione di 2910

29/2 = 14 R = 1 (c0)

14/2 = 7 R = 0 (c1)

7/2 = 3 R = 1 (c2)

3/2 = 1 R = 1 (c3)

1/2 = 0 R = 1 (c4)

111012

Page 29: Seconda parte corso Alfabetizzazione informatica.

Conversione da decimale a binario

Infatti...

111012 = 1*24 + 1*23 + 1*22 + 0*21 + 1*20 =16 + 8 + 4 + 1 = 2910

Page 30: Seconda parte corso Alfabetizzazione informatica.

Aritmetica binaria

Somma tra numeri binari

+ 0 10 0 11 1 10

Page 31: Seconda parte corso Alfabetizzazione informatica.

Somma tra numeri binari: alcuni esempi

1 +1 =

1 0

1 0 1 +1 1 =

1 0 0 0

1 1 0 1 0 +1 0 1 =

1 1 1 1 1

Page 32: Seconda parte corso Alfabetizzazione informatica.

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 1000 -00001 +1 1001 -10010 +2 1010 -2... ...0111 +7 1111 -7

Page 33: Seconda parte corso Alfabetizzazione informatica.

Codifica dei numeri interi negativi

due controindicazioni: 2 rappresentazioni dello 0 non si possono applicare le regole tradizionali per le

operazioni aritmetiche:

0 0 1 0 + +21 0 1 1 = -31 1 0 1 -5

Page 34: Seconda parte corso Alfabetizzazione informatica.

Codifica dei numeri interi negativi: complemento a 2

Rappresentazione in complemento a 2 (complemento a 1 + 1)

bit più significativo (più a sx) per rappresentare il segno (0 per il +, 1 per il -)

comune rappresentazione binaria per i numeri positivi

per i numeri negativi: inversione dei restanti bit (01 e 10) e poi si somma 1in alternativa:

dati N bit, codifico in binario il numero risultato da 2N – num (es. Con 4 bit per codificare in complemento a 2 -7 calcolo 16-7 = 9 e codifico 9 in binario: 1001)

Page 35: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione in complemento a 2: esempio

-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

Page 36: Seconda parte corso Alfabetizzazione informatica.

Conversione da complemento a 2 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

Page 37: Seconda parte corso Alfabetizzazione informatica.

Conversione da complemento a 2 in decimale con segno: esempio

1101 tolgo il bit di segno 101 Inversione 010 Conversione in decimale 0102 = 210

Somma 2 + 1 = 3 Segno -3

Page 38: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione in complemento a 2

Con quattro bit:

0000 0 1000 -80001 +1 1001 -70010 +2 1010 -60011 +3 1011 -50100 +4 1100 -40101 +5 1101 -30110 +6 1110 -20111 +7 1111 -1

Page 39: Seconda parte corso Alfabetizzazione informatica.

In generale

Con N bit ho 2N configurazioni possibili

Considerando interi positivi codifico i numeri da 0 a 2N-1

Considerando interi positivi e negativi (complemento a 2) codifico i numeri:

positivi: da 0 a 2N-1-1 negativi: da -2N-1 a -1

Page 40: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione digitale di immagini b/n

B/n senza ombreggiature 2 valori possibili per ogni pixel (es. 0 = bianco, 1 = nero) 1 bit

0 0 0 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 …1 2 3 4 5 6 7 8 910 11 12 13 14 15 16 17 18 19 20 …

21 22 23 24

17 18 19 20

13 14 15 16

9 10 11 12

5 6 7 8

1 2 3 4

Page 41: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione digitale di immagini b/n

Quindi una singola immagine verrà rappresentata come una griglia in cui ogni singolo pixel (ciò che viene acceso/spento) occupa 1 bit.

Quanto spazio per memorizzarla dipende dalla dimensione della griglia.

Ad es. 30X30 pixel occupa 30X30 bit

Page 42: Seconda parte corso Alfabetizzazione informatica.

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

Page 43: Seconda parte corso Alfabetizzazione informatica.

Rappresentazione digitale di immagini a colori

Quindi una singola immagine verrà rappresentata come una griglia in cui ogni singolo pixel (ciò che viene acceso/spento) occupa n bit (dove n individua il numero di bit che esprimono 2n colori).

Quanto spazio per memorizzarla dipende dalla dimensione della griglia e da n.

Ad es. 30X30 pixel con 2n colori occupa 30X30Xn bit

Page 44: Seconda parte corso Alfabetizzazione informatica.

Filmati

Rappresentazione come sequenze di fotogrammi

Frequenza= Num. Fotogrammi nell’unità di tempo (si misura in Hertz, Hz)

Es. Immagini TV 25/30 fotogrammi al sec Es. Standard PAL 25 fotogrammi al sec

Page 45: Seconda parte corso Alfabetizzazione informatica.

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 (filmati): un fotogramma ogni 12

Page 46: Seconda parte corso Alfabetizzazione informatica.

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 pay-TV

Page 47: Seconda parte corso Alfabetizzazione informatica.

La nuova chirurgia estetica

PRIMA DOPO

Come sognano le donne www.imagecreation.it

Page 48: Seconda parte corso Alfabetizzazione informatica.

La nuova chirurgia estetica

PRIMA DOPO

Come sognano gli uomini www.imagecreation.it

Page 49: Seconda parte corso Alfabetizzazione informatica.

Codifica dei suoni

Rappr. Analogica – analoga alla quantità fisica in esame

Rappr. Digitale – Campionamento dell’onda sonora

Rappr. Digitale – Quantizzazione dell’onda sonora

Page 50: Seconda parte corso Alfabetizzazione informatica.

Codifica dei suoni

Rappresentazione tanto più precisa tanto più

Frequente è la campionatura

Maggiore il numero di bit per codificare l’informazione

Esempi Cassetta musicale: 22 KHz, 9/10 bit per campione Audio CD: 44,1 KHz, 16 bit per campione DVD: 48 KHz, 16 bit per campione Schede audio PC: 10/40 KHz, 16 bit per campione

Page 51: Seconda parte corso Alfabetizzazione informatica.

Tecniche di compressione

I suoni possono richiedere molto spazio per la loro memorizzazione

tecniche di compressione: due tipologie senza perdita di dati: permette di non perdere neanche un bit

dell’informazione che si vuole comprimere

con perdita di dati: per ridurre al minimo le dimensioni occupate elimina alcun bit dell’informazione che si vuole comprimere

Page 52: Seconda parte corso Alfabetizzazione informatica.

Tecniche di compressione

MP3 (MPEG 1 Layer 3) utilizza una tecnica di compressione con perdita dei dati

Il formato MP3: usa dei criteri psico-acustici umani: considera solo i suoni che il nostro cervello è in grado di percepire (sotto

frequenza 20000Hz e non nascosti da suoni di intensità maggiore)

Risparmio di 1/10 rispetto a formato .wav (bitrate 128 Kbit/s vs bitrate 1411 Kbit/s) dove bitrate = num di bit necessari per codificare 1 secondo di audio

Page 53: Seconda parte corso Alfabetizzazione informatica.

Elaborazione dei suoni

Dopo la digitalizzazione è possibile ad es.

eliminare parte del suono (es. rumori di fondo)

modificare il suono (es. eliminare le distorsioni)

Sintetizzare suoni a partire da campioni musicali

Aggiungere delle distorsioni (es. Filtri per riprodurre i fruscii dei dischi in vinile – vedi dimostrazione in aula)