Il termine INFORMATICA può essere considerato come la composizione di due parole:
informazione automatica. Infatti, questa disciplina si occupa della gestione dell'informazione
in modo automatico, e la definizione esatta per descrivere tale materia è: “Scienza della
rappresentazione e dell'elaborazione dell'informazione”.
settori di ricerca,
L'informatica ha diversi e tra questi consideriamo:
-Algoritmi e strutture datiSi studia gli algoritmi e la rappresentazione l'organizzazione di
dati e informazioni al calcolatore
-Architettura dei calcolatoriSi studiano i componenti fisici del calcolatore
-Sistemi operativi e retiSi studia la costruzione e la gestione di sistemi operativi
-Linguaggi di programmazioneSi studiano le tecniche di programmazione e si
definiscono nuovi linguaggi
applicazioni
Le principali sono invece:
-numeriche (prima applicazione dell'informatica)
-gestionali
-automazione industriale
-telematica
-realtà virtuale
Lo strumento per la rappresentazione e l'elaborazione dell'informazione è l'elaboratore
elettronico che è in grado di eseguire azioni elementari (che chiameremo ‘mosse’) su dei
dati per produrre risultati. Questo processo avviene grazie alla richiesta dell'uomo
all’elaboratore attraverso istruzioni scritte in un determinato linguaggio. Questa attività è
detta programmazione, grazie alla quale si risolvono problemi di natura varia grazie ad un
processo di risoluzione. Oltre ai PC (personal computer) che sono detti anche microcalcolatori,
esistono ulteriori sistemi di calcolo come le workstation (prestazioni superiori a quelle di un
PC, dedicate ad una singola attività), o i server (macchine capaci di servire
contemporaneamente più utenti collegati tra loro.
L'architettura a cui s'ispirano anche gli attuali modelli di elaboratori è quella della “macchina
di Von Neumann”, che seppur è una versione molto semplificata degli odierni calcolatori,
risulta essere la base per tutta l'architettura informatica. L'unica pecca è che eseguiva le
operazioni in maniera sequenziale limitando così le prestazioni dell'intero elaboratore. Per
risolvere tale problema sono state introdotte delle forme di parallelismo come ad esempio:
processori dedicati (che si dedicano dunque ad una sola attività) ed esecuzione in parallelo
pipeline’’)).
(mentre se ne segue una, si acquisisce e si decodifica l’istruzione successiva (‘’
L'HARDWERE, parte fondamentale di un calcolatore, è
composto da un insieme di unità funzionali che rendono
possibili possibile l'esecuzione delle istruzioni fornite dal
programmatore nel software. È bene sapere che l'unità di
informazione contenuta in tutto il sistema informatico è il
bit che può assumere valori 0 e 1; tale informazione è
codificata in forma binaria, mediante sequenze finite di
cifre binarie. La più importante grandezza multipla del bit è
il byte=8bit=2⁸=256 combinazioni.
Ma tornando alle unità funzionali dell'hardware, esse sono:
-CPU o unità centrale di elaborazionein grado di eseguire istruzioni per l'elaborazione dei
dati e svolgere funzioni di controllo delle altre componenti funzionali. Essa esegue le azioni
elementari della macchina e viene definito anche processore dell'elaboratore. La CPU è
composta da:
Clock= orologio di sistema che misura in Hz la frequenza operativa del processore
mantenendo il sincronismo tra le varie operazioni;
ALU= unità aritmetico logica che elabora i dati svolgendo istruzioni elementari
rappresentate sotto forma di bit;
Registri= memoria temporanee ad accesso veloce ma di capacità ridotta (da 32 a
64bit). I contenuti dei registri possono essere dati, istruzioni o indirizzi di celle di
memoria, e in base a questo possiamo suddividerli in “Specializzati” e “Uso
Generale”(memorizzano risultati, operandi…);
Unità di controllo= coordinamento tra le varie parti del calcolatore. Ogni componente
del calcolatore esegue solo le azioni che gli vengono richieste l'unità di controllo,
sempre sincronizzate attraverso il clock. In sintesi, l'unità di controllo esegue all'infinito
una sequenza di tre passi detta ciclo macchina (chiama(fetch)-decodifica(decode)-
esegui(execute). Nella prima fase si accede al registro PC* (program counter), dove è
contenuta l’indirizzo dell’istruzione, e la si porta nella memoria centrale
memorizzandola nel registro istruzioni; nella seconda fase si decodifica l'istruzione in
base al codice operativo; nell'ultima fase si individuano i dati necessari, si trasferiscono
nei registri opportuni e si segue l'istruzione. Una volta eseguita un'istruzione, si
incrementa il PC di 1.
-Memoria centralein grado di memorizzare e fornire l'accesso a dati e programmi. Essa è
costituita da due componenti: la RAM e la ROM. Mentre il contenuto della prima (dati e
programmi) viene perso quando si spegne il calcolatore, quello della ROM è permanente
(programmi di sistema). celle o locazioni di
La memoria centrale ha un accesso molto rapido ed è costituite da
memoria parola
in grado di memorizzare una di memoria, ovvero una sequenza di bit, e di
indirizzo, valore
possedere un proprio che è un numero che identifica la cella e da un
corrispondente alla sequenza di bit. Un processo molto importante della memoria centrale è
l'indirizzamento: un processo grazie al quale l'elaboratore seleziona una particolare cella
ponendo il suo indirizzo nell’RI (registro indirizzi) che ha 2^N celle ogni N bit che lo
compongono in lunghezza.
La memoria RAM ammette due operazioni:
1. Scrittura: memorizzazione di un valore in una cella. Si scrive l'indirizzo della cella sul
bus indirizzi e il contenuto da memorizzare sul bus dati richiedendo l’operazione di
scrittura al bus di controllo.
2. Lettura: accesso al valore memorizzato in una cella., Si scrive l’indirizzo della cella da
leggere sul bus indirizzi e si invia la richiesta di lettura sul bus di controllo.
Visto che l'operazione di lettura e scrittura della RAM non è molto rapida, si fa ricorso ad una
cache
memoria particolarmente veloce detta (molto costosa) la quale immagazzina i dati
usati più spesso, cosicché il dato richiesto venga trovato in molto meno tempo. È importante
avere delle gerarchie di memorie in quanto queste si classificano secondo tre aspetti:
capacità, velocità di accesso e costo per unità di bit. La cache, la RAM e i registri (si tenga
presente che la memoria centrale è collegata tramite il bus di sistema alla CPU, e per tale
motivo nella memoria primaria sono compresi cache e registri) fanno parte delle memorie
primarie; quelle secondarie invece, o anche dette memorie di massa, sono di maggiore
capacità, ma di minore velocità rispetto alle primarie.
-Ingresso In/Outputper consentire lo scambio di dati tra calcolatore e utente si usano le
periferiche, dei dispositivi esterni al calcolatore e connesso ad esso tramite opportune
interfacce. Interfacce e periferiche costituiscono assieme l'unità ingresso e/o uscita. Esempi:
tastiera, lo schermo, la stampante, e interagiscono con noi grazie al controllo dell'interfaccia
che ha il compito di tradurre i segnali dell’elaboratore in un formato comprensibile alla
periferica stessa. L’interfaccia di collegamento delle
periferiche è costituita da una parte hardware (Porta
USB, seriale, audio, parallela...) e da una parte
software che invece definisce per ogni porta un
protocollo di comunicazione (velocità di
trasmissione, comunicazione sincrona o
asincrona…), e un driver che contiene informazioni
su come usare quella periferica. Spesso, il sistema
operativo contiene già i driver, perciò è possibile fare
il ‘’plug and play’’, stabilendo da subito un contatto
diretto tra periferiche ed elaboratore. Uno dei dispositivi di I/O più importanti è la memoria di
massa, che si differenzia rispetto alla memoria centrale nelle sue qualità (memoria
persistente).
-Bus di sistemainsieme di 3 linee di comunicazione quali: bus dati, bus indirizzi e bus di
controllo; esso collega due unità funzionali alla volta che trasmettono o ricevono dati e
istruzioni. L'uso del bus favorisce l'espandibilità del calcolatore perché per introdurre nuovo
componente non è necessario collegarlo ad ogni elemento già presente nel calcolatore, ma
solo collegarlo al bus.
Bus dati: bidirezionale e trasmette dati dalla memoria alla CPU o viceversa;
Bus indirizzi: unidirezionale e serve per specificare la cella in cui verrà eseguita la
lettura o la scrittura;
Bus di controllo: bidirezionale e invia comandi alla memoria o alle periferiche (a volte
anche al processore);
Una RETE DI CALCOLATORI è un insieme di elaboratori elettronici collegati tra di loro
tramite dispositivi dedicati al trasferimento di dati o allo scambio di servizi. Il sistema delle
reti è vincolato da regole che si riferiscono a un modello internazionale che dà vita a Internet.
Ogni rete è fatta di nodi e connettori (i primi sono veri e propri calcolatori che controllano il
passaggio delle informazioni, mentre i connettori sono cavi, satelliti…).
Possiamo suddividere le reti di calcolatori in tre categorie:
-LAN (Local area n