Introduzione all’informatica:
Si può pensare all'informatica come alla scienza che si occupa dei seguenti temi:
lo studio dei fondamenti teorici della scienza dell'informazione;
la definizione di algoritmi per l'elaborazione automatica delle informazioni;
la realizzazione (implementazione) di questi algoritmi;
e, infine, l’uso del calcolatore.
Lo studio dell'informatica è quindi importante perché:
accrescere le facoltà creative, logiche e
lo sviluppo di algoritmi consente di
cognitive dell'individuo;
è intrinsecamente multidisciplinare:
l’informatica ogni disciplina prevede una
opportuna forma di organizzazione e trattamento delle informazioni;
offre strumenti per modellare i formalmente problemi
l’informatica e poterne
affrontare la risoluzione in modo efficiente ed efficace;
le tecnologie dell'informazione sono diventate strategiche in numerosi ambiti
semplificano lo svolgimento di compiti realizzabili
applicativi. Esse non solo
anche senza calcolatore, ma offrono vantaggi sul lungo termine altrimenti
non accessibili.
Generazione 0: i calcolatori meccanici:
calcolatore
Il termine designa genericamente un sistema di elaborazione dati, nato in
meccanica, analogica digitale.
forma sviluppatosi in forma e giunto poi alla forma
Il più antico strumento di calcolo fu l’abaco. Charles Babbage elaborò una macchina di
calcolo in grado di compiere operazioni aritmetiche, ma non fu mai realizzata. Fu Ada
Lovelace ad accorgersi delle vere potenzialità della macchina di Babbage: sebbene fosse
stata progettata per svolgere solo calcoli matematici, Ada riconobbe la possibilità
programmare
di la macchina per altri fini. In questa versatilità risiede la principale
differenza tra una calcolatrice tradizionale e un calcolatore. Alla fine del XIX secolo,
Herman Hollerith, un funzionario statunitense dell’ufficio per il censimento, sviluppò una
macchina tabulatrice, sempre a schede perforate, per automatizzare le operazioni di
censimento.
Tra gli antenati degli anni '30 del calcolatore, figura il Memex, macchina immaginaria
progettata da Vannevar Bush. L’idea era quella di un sistema di archiviazione di dati
utilizzato a scopi personali. Il dispositivo era descritto come una scrivania dotata di
schermi traslucidi, una tastiera, un set di pulsanti e delle leve. Il Memex avrebbe reso
possibile la creazione da parte dell'utente di collegamenti tra foto e documenti, e per
questo motivo viene oggi ricordato come primo supporto per l'approccio all'ipertesto.
Generazione 1: i tubi a vuoto:
Nel 1939, fu la volta del matematico e fisico John Vincent Atanasoff e del suo allievo
Clifford Berry, i quali costruirono l’Atanasoff Berry Computer, meglio noto come ABC. Si
tratta del primo calcolatore digitale totalmente elettronico, ma mai brevettato.
bit binary digit),
Nel 1948, Claude Shannon introdusse il termine (contrazione di da lui
falso,
coniato per designare l'unità elementare binaria di informazione (vero e o 0 e 1).
Generazione 2: i transistor:
Nel 1954, l’IBM propose il primo calcolatore commerciale con memoria su nastro
magnetico.
Generazione 3: i circuiti integrati:
Il problema delle dimensioni durò fino al 1964, quando l'azienda italiana Olivetti
Programma 101,
introdusse da molti considerato il primo personal computer (PC) della
storia, in quanto disponeva delle principali caratteristiche dei grandi calcolatori
dell'epoca, ma era sufficientemente compatto da stare su una scrivania. Tuttavia, non
aveva uno schermo: le informazioni erano trasmesse all'utente per mezzo di un nastro di
carta stampata.
Parallelamente, la Digital Equipement Corporation introdusse il suo primo
minicomputer, il PDP-8, dotato di uno schermo molto rudimentale.
Generazione 4: il microprocessore: microprocessore,
Agli inizi degli anni ’70, la Intel Corporation sviluppò il il primo circuito
integrato capace di contenere l’intera unità di calcolo di un calcolatore.
Generazione 5: Il calcolo parallelo e la rete:
Tra gli anni '80 e '90 si sono affermate in rapida successione tecnologie come le
interfacce grafiche, la possibilità di compiere più operazioni in parallelo, e l'avvento di
Internet, coadiuvate da un costante incremento della potenza di calcolo e delle capacità
di memorizzazione.
Algoritmo:
algoritmo metodo per risolvere in modo efficiente,
Un può essere definito come un
univoco, universale, formalmente preciso e finito un problema.
Le proprietà fondamentali di un algoritmo sono:
finitezza delle operazioni da svolgere;
non ambiguità del linguaggio in cui sono scritte le operazioni da effettuare.
Questo significa che le istruzioni devono essere scritte in un linguaggio codificato e
formale;
universalità della procedura algoritmica, nel senso che essa deve valere per tutti i
problemi dello stesso genere;
completezza delle operazioni, nel senso che ogni operazione necessaria allo
svolgimento del compito deve essere explicitamente dichiarata.
Codifica dell’informazione:
Informazione e codifica:
Esiste dunque una corrispondenza arbitraria fra ogni singolo simbolo e l’informazione
che esso intende rappresentare. Questa corrispondenza viene
codifica
chiamata dell’informazione.
codice
Un è un insieme di simboli e di regole. Codificare un’informazione significa
determinare una corrispondenza fra i segni di un codice e i dati che costituiscono
l’informazione e il suo significato.
Come costruire un codice:
Per prima cosa, si deve individuare un insieme di simboli che costituisca il codice,
avendo cura di definire un simbolo per ognuna delle informazioni da rappresentare,
tabella di codifica.
definendo un’opportuna
In questo modo, dato un voto (messaggio), è possibile derivarne una rappresentazione
codifica).
conforme al codice definito (attività di Viceversa, dato un messaggio espresso
decodifica).
con tale codice, è possibile ricavare il voto corrispondente (attività di
Codifica binaria:
Fu inventata nel XVII secolo da Gottfried Liebniz e si basa sull’utilizzo di soltanto due
cifre: 0 e 1. La differenza è che, mentre nella numerazione decimale il valore si misura in
potenze di 10, nel caso della numerazione binaria il valore si misura in potenze di 2.
bit digit)
Un (binary rappresenta l’unità minima di informazione, ossia una sola unità
informativa che può avere valore 0 o 1. Per poter rappresentare un numero maggiore di
informazioni sarà necessario combinare i bit in sequenze.
Unità di misura dell’informazione digitale:
In informatica, dopo il bit, un'altra unità di misura fondamentale è il byte. Un byte è
formato da una sequenza di 8 bit contigui. Un byte può rappresentare 256 informazioni
diverse.
Rappresentazione digitale del testo:
I codici attualmente più utilizzati per rappresentare digitalmente i testi sono:
ASCII Esteso: un codice di 8 bit (1 byte)
UNICODE: un codice che può essere usato a 8, 16 o 32 bit (1, 2 o 4 byte). In base
al numero di bit usati prende il nome di UTF-8, UTF-16 o UTF-32.
Dato un codice di N bit possiamo dire che ogni carattere di quel codice occupa N bit e che
complessivamente il codice può rappresentare fino a 2 caratteri diversi.
N
Per decodificare un messaggio è necessario conoscere a priori il tipo di codifica usato.
Dall’analogico al digitale: tutti
Se si volesse dunque usare i valori assunti dal segnale come unità minime
informative di suoni e immagini, ci si scontrerebbe con la necessità di una
infinita.
memoria Per questo motivo, per poter rappresentare suoni e immagini in un
calcolatore, è necessario passare dal dominio analogico (continuo) a quello digitale
(discreto, composto da un numero finito di punti) attraverso un processo
campionamento.
chiamato
Tecnica che consiste nel convertire un segnale continuo nel tempo o nello spazio in un
segnale discreto, valutandone l'ampiezza a intervalli temporali o spaziali solitamente
regolari, in modo da ottenere un numero finito di punti (chiamati campioni). Perché
questa operazione non comporti una perdita di informazione o la comparsa di difetti
aliasing),
percepibili (chiamati è necessario che gli intervalli temporali o spaziali a cui si
legge il valore del segnale siano più piccoli della metà del più piccolo dettaglio a cui si è
interessati.
L'operazione con cui il valore di un campione viene arrotondato alla precisione desiderata
quantizzazione.
prende il nome di A differenza del campionamento, l'operazione di
quantizzazione non è reversibile, non è, cioè, possibile ricostruire i valori reali assunti
originariamente dal segnale analogico. La quantizzazione è dunque una fonte
distorsione
di del segnale, che può solo essere mascherata con una tecnica
dithering,
chiamata ma non può essere eliminata.
Rappresentazione digitale dell’immagine: pixel element
Per le immagini l’unità minima di informazione è rappresentata dal (picture
– elemento dell’immagine). La codifica di un'immagine realizzata in questo modo è
bitmap raster.
chiamata o modello di colore,
Un sistema per la rappresentazione digitale dei colori viene detto e ne
esistono molti. La maggior parte usa i colori primari convenzionali per derivare tutte le
RGB,
possibili tonalità. Il più utilizzato è lo schema (Red Green Blue, rosso verde blu) che
sono i colori primari su cui il modello è costruito.
Solitamente in RGB si utilizza un byte per ognuno dei tre colori primari, per un totale di
24 bit per pixel (cioè, 3 byte). È quindi possibile rappresentare 256 sfumature diverse per
ogni colore primario, quindi complessivamente 256 x 256 x 256 colori diversi, cioè circa
16 milioni di tonalità di colore.
Rappresentazione digitale dei suoni:
Riguardo alla precisione di ogni campione audio, si è scelto un numero di bit consono a
rappresentare la gamma di volumi a cui si è normalmente esposti, dal sussurro fino a
rumori forti; questo valore è stato fissato a 16 bit.
In definitiva, la rappresentazione binaria di un suono è costituita da una sequenza di
campioni, cioè gruppi di bit che descrivono il valore di pressione sonora di ciascun
canale. A scopo esemplificativo si può calcolare la memoria necessaria a memorizzare un
minuto di musica in qualità CD:
60 secondi x 44100 campioni al secondo x 16 bit per campione x 2 canali = 84672000 bit
= 10584000 byte =10336 KiB = 10.1 MiB.
Rappresentazione digitale dei video:
Per un video l’unità minima di informazione è rappresentata dal fotogramma, a sua volta
composto da pixel.
Per via del fenomeno di persistenza delle immagini sulla retina, l'occhio umano fatica a
percepire come separate tra loro immagini che si susseguono ad una velocità minima di
10 o 15 fotogrammi al secondo (fps), dunque tale velocità è sufficiente per creare
l'impressione del movimento. Tuttavia, velocità più elevate consentono di creare
un'illusione più realistica, e non è raro trovare codifiche a 25, 30, 50 o 60 fps.
Materiale registrato a fps più alti viene impiegato per la riproduzione in "slow motion".
Principali formati multimediali: non compresso,
Vi sono infatti 3 modi di memorizzare l'informazione: in modo in
compresso senza perdita di informazioni compresso con
modo (lossless), e in modo
perdita di informazioni (lossy).
I metodi di memorizzazione non compressi comportano un'occupazione di memoria che
corrisponde alla memoria necessaria per la rappresentazione originale.
lossless
I metodi di compressione si basano sull'idea di eliminare ciò che è ridondante, si
evita, cioè, di memorizzare informazioni inutilmente ripetute. Questo comporta un
risparmio di memoria che in media si aggira intorno al 50% dell'occupazione originale.
I metodi di compressione lossy si basano sull'idea di eliminare ciò che è irrilevante, si
evita, cioè, di memorizzare informazioni non percepibili dall'utente. Viene quindi persa in
modo definitivo tutta quell'informazione che in media non viene percepita. Questo
comporta un oggettivo degrado dell'informazione, con la potenziale introduzione di
artefatti e distorsioni non presenti nel dato originale. Il risparmio che ne deriva può
arrivare fino al 90% dell'occupazione originale.
Struttura del calcolatore:
Anatomia di un calcolatore:
hardware,
Il termine letteralmente “ferraglia”, designa la parte fisica della macchina,
composta da tutte le componenti materiali che ne consentono il funzionamento sulla
base dei principi dell’elettronica.
Ogni componente svolge una sua funzione di base:
l'unità di calcolo o Unità Centrale di Elaborazione (CPU) si occupa di elaborare i
dati ed in genere coincide con uno o più microprocessori;
memoria centrale, RAM)
la o di lavoro (Random Access Memory, contiene i dati
in uso e/o i programmi in esecuzione;
bus
i permettono il trasferimento dei dati tra le diverse componenti;
periferiche
le di input/output permettono la comunicazione tra il calcolatore e
l'utente;
memoria di massa,
la un caso particolare di periferica di input/output, permette
di memorizzare dati e programmi quando non sono in uso. architettura di von
La maggior parte dei calcolatori moderni segue quella che è chiamata
Neumann, caratterizzata dall'utilizzo di un'unica memoria di lavoro, in cui sono
memorizzati sia i dati sia i programmi e dove tutte le componenti sono collegate tra loro
da bus.
Oltre a queste parti, il calcolatore si compone anche di una scheda madre e un
alimentatore elettrico.
Unità di calcolo:
Processing Unit)
La CPU (Central è l’unità centrale del calcolatore. Si occupa di eseguire i
programmi che sono scritti in linguaggio macchina. Attualmente le CPU sono costituite
da microprocessori che racchiudono in un unico circuito integrato le seguenti
componenti di calcolo.
L’unità di controllo (CU, Control Unit) esegue le istruzioni dei programmi, coordina
le attività del microprocessore e controlla il flusso delle istruzioni tra il
microprocessore e la memoria. Inoltre, svolge la sua attività in modo ciclico:
preleva dalla memoria principale la “prossima” istruzione da eseguire, preleva gli
operandi specificati nell'istruzione, decodifica ed esegue l’istruzione, e infine
ricomincia (ciclo macchina).
I registri di memoria sono delle unità di memoria estremamente veloci con
capacità ridotta, ma con tempo di accesso molto breve. Attualmente le loro
dimensioni variano da 16 a 64 bit e i registri vengono utilizzati per immagazzinare
le istruzioni e i dati che stanno per essere processati o sono appena stati
processati.
L’unità logico aritmetica (ALU, Arithmetic-Logic Unit) è il nucleo di esecuzione dei
calcoli, essendo in grado di eseguire operazioni come somma, sottrazione,
moltiplicazione e divisione, oltre che le principali operazioni logiche come AND, OR
e NOT. Una volta prelevati gli operandi dai Registri di memoria, la ALU esegue
l'operazione richiesta e ne deposita il risultato nuovamente in memoria. La ALU,
insieme all'unità di controllo, collabora al completamento di un ciclo macchina.
I bus sono canali di comunicazione tra le varie componenti dell’elaboratore e si
differenziano a seconda della funzione svolta.
Ogni microprocessore è caratterizzato da un clock che scandisce la sequenza delle
operazioni da eseguire. Ogni operazione può richiedere uno o più cicli di clock. La
frequenza di clock è uno dei parametri con i quali si valuta la velocità di calcolo di un
microprocessore. L’unità di misura della frequenza di clock è l’hertz.
Memoria primaria:
La memoria primaria è quella che conserva i programmi in esecuzione e i dati in uso
all'interno della CPU. È organizzata come una successione di bit raggruppati in unità
dotate di indirizzo (un numero progressivo a partire da 0) dette celle. La velocità di
accesso a questa memoria è cruciale perché da essa dipende la reattività del calcolatore
alle richieste dell’utente. Il metodo di accesso alla memoria primaria è casuale, nel senso
che, conoscendo l’indirizzo, è possibile accedere a una qualsiasi cella di memoria in modo
diretto e il tempo di accesso alla cella non dipende dalla sua posizione. Per questo
motivo, la memoria primaria è anche detta Random Access Memory o RAM. Un’ulteriore
caratteristica distintiva della memoria primaria è la sua volatilità: questo significa che,
spegnendo il calcolatore, il contenuto delle celle di memoria viene cancellato e non è più
recuperabile.
Memoria secondaria:
La memoria secondaria è la memoria dei dischi e delle unità di memorizzazione
permanente. Questo tipo di memoria è in grado di memorizzare grandi quantitativi di
informazioni.
Nella memoria secondaria l’informazione viene memorizzata in maniera permanente, ma,
a differenza della memoria primaria, questo tipo di memoria ha tempi di accesso molto
più elevati.
I principali dispositivi di memoria secondaria sono:
dischi fissi (hard disk): utilizzati per l’archiviazione di programmi e dati e
generalmente collocati all'interno del calcolatore. Esistono anche hard disk
esterni, di solito collegabili tramite porte USB. Questi dispositivi sono composti da
una pila di dischi metallici rotanti collegati a due testine di lettura/
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.