INFORMATICA
E' la scienza che si propone di raccogliere, organizzare,
elaborare e conservare le informazioni gestendole in modo
automatico.
Il termine deriva dalla fusione delle parole:
INFORmazione autoMATICA
AUTOMA
L’automa è un sistema, che imita il comportamento umano, in
grado di “ricevere informazioni dall'esterno (input), reagire alle
stesse elaborandole (processing), e inviare informazioni di
nuovo all'esterno (output)".
INPUT
PROCESSING
OUTPUT
Il computer è un tipo di automa composto da componenti
elettronici
PERIFERICHE
La comunicazione da e verso l’esterno avviene attraverso
dispositivi di input/output chiamati periferiche.
Periferiche INPUT
Periferiche OUTPUT
COMPUTER
INFORMAZIONE ANALOGICA
Si definisce analogico un procedimento che
rappresenta un fenomeno con continuità, per esempio:
un orologio classico che con il moto regolare della
lancetta segna il trascorrere del tempo in modo
continuo:
oppure un termometro che rappresenta la temperatura
con una lancetta:
°C
0
20
INFORMAZIONE DIGITALE
E’ digitale un procedimento che rappresenta lo stesso
fenomeno traducendolo in cifre (dall'inglese digit, cifra) e
quindi in modo discontinuo, come per esempio avviene in
un orologio a cristalli liquidi numerico nel quale la stessa
durata temporale viene misurata da una successione di
scatti.
10°C
Analogico e digitale
Contrariamente a quanto si potrebbe credere la registrazione
digitale, pur essendo "a salti", può essere più precisa di quella
analogica in quanto non soggetta ad interferenze e disturbi.
Occorre però che il numero di valori utilizzati sia molto elevato,
in modo da cogliere ogni più piccola sfumatura.
Rappresentazione dell'informazione
Il principio di funzionamento di un computer si basa sulla logica
binaria.
Per comprenderne l'idea di base, possiamo pensare a un
interruttore, che può essere aperto o chiuso, o ad una scheda
che può essere forata o meno in un punto, o ad un suono che
può essere presente o no, o ancora ad una riflessione ottica
che può verificarsi o meno.
Bit
Ciò che accomuna tutti questi fenomeni è la caratteristica di
poter assumere solamente due stati:
0 = aperto
1 = chiuso
Questa variabile che assume solo due stati (0 e 1) si chiama bit
("binary digit", cifra binaria) ed è l'unità minima di informazione
e la base dell'algebra binaria.
Byte
Un computer "ragiona" unicamente interpretando gruppi di bit,
cioè comandi rappresentati da sequenze di "uno" e di "zero"
(per esempio, 00101100).
Convenzionalmente, 8 bit costituiscono 1 byte.
Forma polinomiale del numero
Il sistema numerico da noi adottato è posizionale: il valore della
cifra dipende dalla posizione in cui si trova all’interno del
numero
Ogni posizione indica un peso legato alla base.
Ad es:
32110 = 3x102 + 2x101 + 1x100 = 3x100 + 2x10 +1x1 = 32110
Il numero di cifre usate da un sistema numerico prende il nome
di base.
Il sistema numerico in base 10 utilizza le cifre da 0 a 9
Numerazione binaria
Affiancando un sufficiente numero di bit è possibile
rappresentare qualunque numero.
Ogni posizione rappresenta una potenza crescente di 2:
27
26
25
24
23
22
21
20
1
0
0
1
0
1
1
0
= 128*1 + 64*0 + 32*0 + 16*1 + 8*0 + 4*1 + 2*1 + 1*0 = 150 decimale
Questo procedimento consente di convertire un numero binario
in decimale
Numerazione binaria
Il procedimento inverso (da decimale a binario), si ottiene
dividendo i resti per le potenze di 2:
150/128=1
r:22/64=0
r:22/32=0
r:22/16=1
r:6/8=0
r:6/4=1
r:2/2=1
r:0
Gli stessi principi valgono per
qualunque BASE di
numerazione.
Numerazione binaria
In modo più semplice, è sufficiente dividere il numero di
partenza per la base di destinazione, tante volte finché il
quoziente si annulla.
Il resto delle divisioni letto in senso inverso è il numero nella
base di destinazione.
Ad es:
810
(?)2
810=10002
Numerazione ottale
In ambito informatico rivestono particolare rilevanza altre due
numerazioni: quella ottale,
ottale che utilizza solo 8 cifre (da 0 a 7),
84
83
82
81
80
3
7
0
4
5
che in decimale è = 4096*3+512*7+64*0+8*4+5 = 15909
…ed esadecimale
E la numerazione esadecimale,
esadecimale che utilizza 16 cifre (da 0 a 9 e
le lettere da A a F) che corrispondono ai valori da 0 a 15
decimali.
163
2
162
5
161
E
160
F
che in decimale è = 4096*2+256*5+16*14+15 = 9711
Per la conversione inversa da decimale a ottale (o
esadecimale) si utilizza lo stesso metodo di divisione dei resti
visto per la numerazione binaria.
Confronti
CONVERSIONE TRA BASI
Essendo le basi 8 e 16 potenze di 2, esiste un meccanismo
semplice di conversione tra esse e la base 2:
Per i numeri ottali è sufficiente suddividere il numero binario in
gruppi di 3 bit (a partire da destra) e convertire ogni singolo
gruppo nel corrispondente ottale:
1
0
1
1
1
0
1
0
0
= 5 6 4 ottale
Per i numeri esadecimali è sufficiente suddividere il numero
binario in gruppi di 4 bit (a partire da destra) e convertire ogni
gruppo nel corrispondente esadecimale:
1
0
1
0
0
0
1
1
= A 3 esadecimale
Misura dell'informazione
La quantità di memoria di un computer si misura mediante i multipli del
byte, ossia:
E’ per via del sistema binario che un kilobyte è composto da 1024 byte
e non 1000, infatti 1024 è una potenza di 2 (1000 lo è di 10).
Gli attuali computer sono dotati di quantità di memoria RAM nell'ordine
delle centinaia di megabyte, mentre i dischi fissi hanno capacità
nell'ordine delle decine di gigabyte.
Rappresentazione di caratteri
Il byte è stato inventato come un gruppo di bit sufficienti a rappresentare
un carattere.
I caratteri dell'alfabeto inglese sono 26, quindi come minimo un byte deve
consentire 26 codici distinti. Per fare questo non basterebbe un byte di 4 bit
(24 = 16), ma uno di 5 bit sì (25 = 32 > 26).
In realtà:
rappresentare solo i caratteri dell'alfabeto è limitativo.
Vorrei poter rappresentare anche le cifre.
Vorrei poter rappresentare anche la punteggiatura.
Vorrei poter rappresentare anche qualche simbolo (p.es. aritmetici).
Vorrei poter aggiungere "caratteri" speciali che marchino p.es. la fine di una riga,
l'inizio e la fine di una trasmissione, e svolgano altre funzioni di controllo.
Vorrei anche distinguere le 26 lettere in maiuscolo dalle stesse in minuscolo.
Il byte di 8 bit
Essendo un byte formato da 8 bit, sarà possibile rappresentare
in un byte un numero compreso tra 0 e 255.
Grazie a questo ampio intervallo sarà possibile rappresentare in
un computer anche caratteri e simboli associando ad ogni
carattere un numero compreso tra 0 e 255.
Possiamo pertanto identificare il byte come l'ingombro di
memoria di un singolo carattere.
TAVOLE DEI CARATTERI
Le più famose tavole di codifica dei caratteri sono:
ASCII (American Standard Code for Information Interchange)
EBCDIC (Extended Binary Coded Decimal Interchange Code)
ANSI (American National Standard Institute)
Per poter rappresentare i caratteri di qualunque lingua è stato creato uno
schema, chiamato UNICODE, formato da 34168 caratteri.
NUM CAR
Vediamo di fianco una parte
della tavola ASCII:
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
!
"
#
$
%
&
'
(
)
*
+
,
.
/
NUM CAR
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
NUM CAR
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
NUM CAR
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
NUM CAR
NUM CAR
NUM CAR
93
94
95
96
97
98
99
100
93
94
95
96
97
98
99
100
108
109
110
111
112
113
114
115
101
102
103
104
105
106
107
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
101
102
103
104
105
106
107
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
116
117
118
119
120
121
122
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Stringhe e Vettori (Array)
Una stringa è una serie ordinata di caratteri alfanumerici.
Ogni singola parola e ogni frase complessa sono quindi da
considerarsi delle stringhe.
Il vettore (o array) è la generalizzazione del concetto di stringa:
"sequenza omogenea di informazioni di uno stesso tipo"
(numeri, caratteri o altro).
Esercizio
Per la prossima lezione:
Rappresentare il numero decimale 123 in base binaria, ottale
e esadecimale
Convertire il numero esadecimale FA in decimale, ottale e
binario
Calcolare in bytes la capacità di un hard disk da 80 Gb
Reperire e presentare a lezione la tavola ANSI
Bitmap
Anche le immagini possono essere memorizzate in forma
numerica (digitale) suddividendole in milioni di punti, per
ognuno dei quali si definisce il colore in termini numerici.
Risoluzione
Il numero di punti, calcolato come Numero Colonne per Numero Righe,
rappresenta la risoluzione di un’immagine.
Un’immagine di 1600x1200 punti risulta più definita di una 640x480.
La qualità di un’immagine dipende dal numero di punti (risoluzione) in cui
viene suddivisa e dai toni di colore permessi dalla codifica.
DEFINIZIONE DEI COLORI
In ogni punto, per rappresentare un qualsiasi
colore dello spettro, è sufficiente definire
l’intensità dei tre colori fondamentali.
Il numero di bit utilizzati per rappresentare
il colore di un singolo pixel si chiama PROFONDITA’ DEL COLORE
Disponendo di un byte per ogni componente di colore, potremo
rappresentare 256*256*256 = 16.777.216 colori.
Ad esempio il colore composto da (Red:255 Green:255 Blue:0)
corrisponderà ad un Giallo acceso, mentre (Red:120 Green:0
Blue:120) sarà un Viola scuro.
2 bit
4 bit
8 bit
24 bit
COMBINAZIONI DI COLORI
Le combinazioni di colori di base si distinguono in due grandi categorie:
per produrre luminosità, come nell’esempio sopra visto (Rosso Verde Blu),
dalla cui massima combinazione deriva il bianco (usato, ad esempio, per
produrre il colore su monitor)
per sottrarre luminosità, come nel caso della combinazione CMY (Cyan
Magenta Yellow), dalla cui massima combinazione deriva il nero (usato, ad
esempio, per produrre delle stampe su carta)
RISOLUZIONE DI UN’IMMAGINE
Il rapporto tra dimensione dell’immagine e numero di punti
che utilizziamo per descriverla si chiama risoluzione e si
misura in dpi (dots per inch, punti per pollice)
Nel caso in cui una immagine sia destinata alla stampa la
risoluzione richiesta è di 300 dpi
Lo standard usato per il video è di 72 dpi.
ACQUISIRE IMMAGINI
Per utilizzare un’immagine con il computer si può:
reperirla già in formato digitale
ad esempio scaricandola da internet
o chiedendo al fotografo lo ‘sviluppo’ su cd-rom o floppy disk
oppure
convertirla in formato digitale
utilizzando un dispositivo di digitalizzazione, quali Scanner o
Macchine fotografiche digitali)
ESERCIZIO
Per la prossima lezione:
Scaricare un’immagine da internet
Acquisire una immagine da scanner ad una risoluzione di
150 dpi, utilizzando 16 milioni di colori
Acquisire la stessa immagine alla risoluzione di 72 dpi
Stampare le due immagini a pagina intera ed osservare le
differenze in termini di:
velocità di scansione
di bytes necessari per la memorizzazione
qualità della stampa
FORMATO GIF
(Graphic Interchange Format)
E' uno dei principali formati utilizzati sul WEB, per la
possibilità di essere “interlacciato” (l'immagine è
caricata ad "aumento progressivo di risoluzione”),
“animato” (presentando una successione di immagini
scritte sullo stesso file) e avere zone trasparenti.
E’ capace al massimo di 8 bit di profondità colore (256
colori).
Produce immagini di piccole dimensioni quando trova
strutture
con
"poco
rumore”,
l'algoritmo
di
compressione e' infatti un "dictionary-based encoding
algorithm" che permette di descrivere in modo efficace
vaste campionature di tinte piatte, particolarmente in
senso orizzontale.
Esempio: Verde, Verde, Verde, Verde, Verde, Verde --> 6 pixel Verde
GIF
266 bytes
GIF
533 bytes
le scritte non sono
adatte al jpeg
2° Salvataggio
3° Salvataggio
Formato con compressione distruttiva, ciò significa che ad ogni
nuovo salvataggio del file produce una ulteriore compressione,
e deterioramento dell’immagine (permette comunque la
scelta del rapporto di compressione).
E' riconosciuto dalla maggioranza dei software di elaborazione
e costituisce uno standard web per le immagini fotografiche.
Per le sue caratteristiche viene utilizzato come formato finale e
non si presta a sucessive elaborazioni.
L’algoritmo che adotta opera per differenze su aree, quindi puo'
riprodurre fedelmente, con ottimi rapporti di compressione,
immagini con gradazioni e sfumature di colore, o ad “alto
rumore” mentre risulta particolarmente distruttivo ed inadeguato
nella rappresentazione di campiture uniformi.
1° Salvataggio
FORMATO JPEG
(Joint Photographic Experts Group)
IMMAGINI BITMAP
Il formato di rappresentazione per punti che abbiamo visto
è definito BITMAP (o RASTER).
E’ particolarmente adatta per riprodurre, fotografie, dipinti
e tutte le immagini per le quali ogni punto dell’immagine è
significativo e deve essere descritto da un singolo
elemento indipendente.
IMMAGINI VETTORIALI
Per immagini più simili a disegni che a
fotografie, è possibile definire la figura in
termini matematici: oggetti geometrici di
base, quali curve, cerchi, ellissi, rettangoli,
rette, linee, ecc..
Tale tipo di rappresentazione
di un’immagine si definisce vettoriale.
In tale formato è presente tutta l’informazione necessaria a
riprodurre l’immagine, a prescindere dalle dimensioni, pertanto si
elimina il problema legato al rapporto tra risoluzione e definizione (per
ingrandire o ridurre la riproduzione basta agire sul sistema di
coordinate)
In più avrà un minor ingombro in termini di spazio di memoria occupato.
Evidentemente non si presterà per rappresentare immagini composte
da continue variazioni di colore, quali ad esempio le fotografie.
ESERCIZIO
Per la prossima lezione:
Scaricare 2 immagini GIF da internet e convertirle in formato
JPG
Scaricare 2 immagini JPG da internet e convertirle in formato
GIF
Scannerizzare un’immagine e salvarla sia in formato GIF che
in formato JPG a 3 diversi livelli di compressione.
Evidenziare le differenze tra questi quattro salvataggi in
termini di:
Qualità
Spazio occupato su disco
Rappresentare i suoni
Un segnale audio è, analogamente ad una immagine,
un’informazione continua: in ogni istante l’ampiezza del
segnale può variare liberamente in maniera analogica.
Per rappresentare i suoni in un computer, l’onda analogica
viene trasformata in digitale approssimandone in ogni punto
l’andamento con numeri interi.
OPERAZIONE DI CODIFICA (ADC)
CAMPIONAMENTO: analizzare il segnale ad intervalli di tempo determinati. A
maggiore frequenza di campionamento, corrisponderà migliore qualità.
QUANTIZZAZIONE: costringere l’ampiezza ad assumere solo un determinato
numero di valori. A maggior ampiezza di variazione dei valori numerici di altezza
(maggior numero di bit) corrisponderà ancora migliore qualità del suono.
Suono
onda di
pressione
dell’aria
Cavo elettrico 1
Trasporta il segnale
elettrico analogico
fino al ADC
Analog to
Digital
Converter
Cavo elettrico 2
Trasporta il segnale
elettrico digitale
verso il computer
Microfono
Converte il suono in
segnale elettrico
Analog to Digital Converter
Campionamento
Segnale analogico
Quantizzazione
Segnale campionato
10001001010001
Segnale digitale
Produzione del suono
Esiste anche il processo inverso, che trasforma l’informazione da
digitale ad analogica.
Nel caso del suono questo compito è svolto dal D.A.C. (Digital to
Analog Converter) che trasforma il segnale digitale in segnale
elettrico analogico; tale segnale viene successivamente trasformato
in onda sonora dalle casse acustiche.
Cavo elettrico 1
Trasporta il segnale elettrico
digitale verso il DAC
Digital to
Analog
Converter
Cavo elettrico 2
Trasporta il segnale elettrico
analogico fino alla cassa
Cassa Acustica
Trasforma il segnale elettrico
analogico in suono
Suono
onda di
pressione
dell’aria
MODEM
Il MODEM (MODulatore DEModulatore) è un dispositivo di
input/output che compie entrambe le operazioni per
trasportare l’informazione su linea telefonica:
in uscita trasforma il segnale digitale in analogico per
poter essere trasportato dalla rete telefonica;
in ingresso trasforma il segnale analogico proveniente
dalla linea telefonica in digitale comprensibile al computer.
1101110101
1101110101
100011000
100011000
modem
Linea
telefonica
modem
FORMATO AUDIO MIDI
Il formato audio MIDI è un particolare metodo di rappresentazione
musicale che consiste nel memorizzare la sequenza di note prodotte
su uno strumento musicale, per poi poterle riprodurre anche
simulando l’esecuzione su strumenti musicali diversi.
Tale metodo non permette quindi né di ottenere una riproduzione fedele
della produzione originale, né di generare suoni diversi da quelli degli
strumenti musicali previsti.
Ne consegue che, chiaramente, non saranno
memorizzabili, ad
esempio, le parole di una canzone, ma solo il suo spartito.
ACQUISIRE SUONI
Per utilizzare un suono con il computer si può:
reperirlo già in formato digitale
ad esempio scaricandolo da internet
o estraendolo da un cd-audio
oppure
convertirlo in formato digitale
utilizzando la capacità di digitalizzazione della propria scheda
audio collegata ad un microfono o, tramite l’ingresso line-in, ad
un apparecchio audio quale un registratore di musicassette
ESERCIZIO
Per la prossima lezione:
Acquisire un brano audio da microfono
Scaricare un brano mp3 da internet (es. vedi sito vitaminic)
Sovrapporre unire i due brani audio ed applicare loro effetti
speciali quali riverbero, coro, fade in/out,… (per compiere
tali operazioni si consiglia di ricorrere a programmi specifici
per il trattamento audio reperibili su internet in versione
gratuita o dimostrativa)
VIDEO E ANIMAZIONI
Per rappresentare una sequenza di immagini si possono
memorizzare tutti i fotogrammi uno dietro l’altro.
Oppure, per ridurre la quantità di informazioni del filmato, si può
memorizzare il primo fotogramma e, a seguire, registrare solo
le modifiche rispetto ai fotogrammi precedenti.
E’ inoltre possibile comprimere le informazioni residue
ignorando le variazioni di colore così piccole da non poter
essere colte dall’occhio umano in un’immagine in movimento.
COMPRESSIONE DEI DATI
Accade spesso di aver bisogno di ridurre lo spazio occupato
dalle informazioni digitali. Sono stati a tal fine studiati dei
procedimenti (algoritmi) di compressione dei dati. Tali
algoritmi sfruttano la ridondanza presente nei dati,
rappresentando l’informazione multipla una sola volta ed
indicando il numero di ripetizioni.
Esempi di formato: ZIP, LHA, TAR, RAR, SIT, TIFF, GIF,
ecc…
Per tornare alla versione originale senza perdita di
informazione è sufficiente applicare il procedimento inverso,
detto decompressione.
Nota. Opzionalmente, durante la compressione, è possibile definire una
password di cifratura che sarà indispensabile conoscere per poter
applicare il processo di decompressione.
COMPRESSIONE CON PERDITA DI
QUALITA’
Talvolta tale compressione non è sufficiente e si può scegliere
ad operare con altri algoritmi che degradano leggermente
l’informazione originale, equiparando valori simili, per
aumentare il fattore di compressione.
Esempi di formati di questo tipo sono JPG, MPG, MP3, ecc…
In questo caso, dalla versione compressa non si può
ripristinare l’esatta versione originale, ma solo una
informazione simile; pertanto si definiscono con perdita
d’informazione
E’ evidente che questi algoritmi non sono definiti per tipi di dato per i quali
è indispensabile poter ripristinare l’esatto originale (come un documento di
testo o un foglio di calcolo)
ACQUISIRE FILMATI
Per utilizzare un video sul proprio computer si può:
reperirlo già in formato digitale
ad esempio scaricandolo da internet
o utilizzando una telecamera digitale e connettendola all’apposita
uscita firewire
oppure
convertirlo in formato digitale
utilizzando dispositivi di digitalizzazione video che consentono di
acquisire in tempo reale filmati provenienti da telecamere o
videoregistratori analogici collegati all’apposito ingresso video
composito o super-video.
MONTAGGIO VIDEO
Una volta disponibile, il video in formato digitale può essere
suddiviso e rimontato a piacimento, tramite programmi
specifici (quali Adobe Premiere, Pinnacle Studio, o Ulead
VideoStudio). Proprio come in una regia tradizionale, si
possono montare le sequenze e sovrapporre le tracce audio;
in più sono disponibili effetti di transizione digitali per legare
gli spezzoni di film.
Una volta montato, il video può essere
memorizzato in forma digitale (in cd, dvd, dv, …)
oppure riportato in forma analogica (passandolo su vhs, s-vhs,…)
o reso disponibile su internet tramite appositi programmi (quali
RealServer o Windows MediaServer) che consentono di comprimere
opportunamente e trasmettere in streaming il filmato
ESERCIZIO
Per la prossima lezione:
Scaricare un video da internet
Scaricare da internet un programma di montaggio video
Aggiungere al video scaricato alcuni effetti di transizione
ed i titoli di testa e di coda
Scarica

INFORMATICA