OUTPUT
o Stampante
- Casse
- Monitor
-
b. Driver: ogni periferica richiede un driver, ossia un programma che gestisce
l'interazione tra il computer e il dispositivo.
Un aspetto distintivo è che i programmi e i dati sono memorizzati nella stessa memoria. Questo
facilita l'implementazione ma introduce il rischio del collo di bottiglia di Von Neumann, dove la
velocità complessiva è limitata dal tempo di trasferimento tra CPU e memoria.
La CPU è responsabile dell’esecuzione dei comandi e segue un ciclo operativo suddiviso in 5 fasi
principali, strettamente legate al Program Counter (PC) e al principio del programma memorizzato.
1. Fetch dell’istruzione:
La CPU legge dalla memoria l’istruzione successiva da eseguire.
o Il Program Counter (PC) fornisce l’indirizzo di questa istruzione e viene
o automaticamente aggiornato per puntare alla successiva.
2. Decodifica:
L’unità di controllo interpreta l’istruzione e configura l’ALU (Arithmetic Logic Unit)
o per eseguire l’operazione richiesta.
3. Fetch dei dati:
Se l’istruzione richiede operandi, questi vengono recuperati dalla memoria e
o trasferiti all’ALU.
Il PC continua a monitorare la posizione della prossima istruzione.
o
4. Esecuzione:
L’ALU esegue l’operazione richiesta, che può essere un calcolo, un confronto o
o un’operazione logica.
Se necessario, il risultato viene salvato nella memoria o in un registro della CPU.
o
5. Scrittura del risultato (Write Back):
I dati elaborati vengono memorizzati nella RAM o nei registri della CPU.
o Il PC si aggiorna per garantire il corretto flusso delle istruzioni.
o
Grazie a questo ciclo di esecuzione, il principio del programma memorizzato garantisce che le
istruzioni vengano recuperate ed eseguite in modo sequenziale, con la possibilità di effettuare salti
condizionati o incondizionati (JUMP) per modificare il flusso del programma.
• Principio del programma memorizzato e Program counter
Il principio del programma memorizzato è un concetto fondamentale nell’architettura dei
calcolatori, secondo il quale le istruzioni di un programma vengono archiviate nella memoria del
computer e poi recuperate ed eseguite dalla CPU in ordine sequenziale.
Nella maggior parte dei casi (>90%), l’istruzione successiva da eseguire è semplicemente la
prossima nella memoria, quindi viene letta in sequenza. Tuttavia, ci sono situazioni in cui il flusso di
esecuzione può cambiare:
Il comando JUMP <indirizzo> permette di saltare direttamente a una posizione specifica
o della memoria.
Altre istruzioni consentono salti condizionati, che modificano il flusso di esecuzione in base
o al risultato di un’operazione precedente.
Il Program Counter (PC) è un registro speciale dell’unità di controllo della CPU che contiene
l’indirizzo della prossima istruzione da eseguire. Funziona come un puntatore, indicando sempre
l’istruzione successiva.
Poiché le istruzioni occupano tipicamente 4 byte in memoria, il PC viene incrementato di 4 dopo
ogni istruzione eseguita. Quando il ciclo macchina ritorna alla fase di Fetch (prelievo dell’istruzione),
il PC è già impostato sulla prossima istruzione da caricare.
Grazie al Program Counter e al principio del programma memorizzato, il computer può eseguire le
istruzioni in modo ordinato, ottimizzando il flusso di elaborazione e garantendo un funzionamento
efficiente.
Principio programma memorizzato 1. Istruzioni archiviate nella memoria
2. recuperate ed eseguite dalla CPU in ordine
sequenziale.
Program Counter PC viene incrementato di 4 dopo ogni istruzione
eseguita. Quando il ciclo macchina ritorna alla fase di
Fetch (prelievo dell’istruzione), il PC è già impostato
sulla prossima istruzione da caricare
• Algoritmo
È una sequenza finita e ordinata di operazioni necessarie per risolvere un problema o raggiungere
un obiettivo specifico. Gli algoritmi sono alla base dei programmi e del funzionamento del software.
• Programma
Un programma è un'entità statica, descritta in un linguaggio ben definito, che specifica:
l'insieme di istruzioni che il calcolatore deve eseguire
o la sequenza in cui devono essere eseguite
o
Quando un programma viene messo in esecuzione si ha l'attivazione di un processo.
• Software
Un software è una successione delle istruzioni necessarie per svolgere il compito richiesto
all'elaboratore in un linguaggio a lui comprensibile. Questo può essere:
Di sistema: garantisce l'esecuzione delle funzioni base del computer e mette in
o comunicazione le varie parti dell'hardware; viene fornito come corredo hardware;
Applicativo: vengono scelti dall'utente in base alle proprie esigenze; vengono acquistati
o successivamente all'elaboratore e installati nello stesso (Es. Word, Excel, Power point, ecc.)
• Architettura del software
Un approccio comune nell'architettura del software è quello a livelli (o a strati), che suddivide le
funzionalità del sistema in strati gerarchici con ruoli ben definiti. Questo permette:
Per i progettisti: modularità semplicità nella progettazione, nella realizzazione e
à
o nell'estensione (modificabilità); naturale strategia di gestione della complessità
Per gli utilizzatori: virtualizzazione -à fare apparire la realtà in modo diverso più semplice e
o più gradevole
• Sistema operativo
Un Sistema Operativo è un insieme di programmi che servono a gestire le attività fondamentali di
un calcolatore:
Lettura o scrittura di file;
o Caricamento ed esecuzione di programmi carica il programma binario prodotto della
à
o compilazione (e residente su disco) nella RAM,
Gestione della memoria (archiviazione dati e documenti) mette a disposizione dell'utente
à
o una visione astratta della memoria secondaria (il file system basato sulle astrazioni
file/archivi e folder/cartelle). Inoltre, gestisce la realizzazione di queste astrazioni sul
supporto fisico (disco) gestendo tutti i dettagli legati alla lettura/scrittura dei settori
Gestione dei dispositivi di input/output interagisce con le periferiche facendosi carico di
à
o tutti i dettagli fisici (es. modem, reti, video...) e mette a disposizione operazioni di
lettura/scrittura ad alto livello che possono essere usate senza conoscere i dettagli tecnici
della periferica
Comunicazione tra calcolatori (rete);
o Gestione degli utenti;
o
N.B. Le funzioni offerte dal S.O. dipendono dalla complessità del sistema di elaborazione.
Un sistema operativo funziona da intermediario fra l'utente e
l'hardware, con lo scopo di fornire un ambiente nel quale l'utente
possa eseguire i programmi in maniera "sicura" ed efficiente.
Dunque, il compito principale del S.O tradurre le richieste
dell'utente in opportune sequenze di comandi da sottoporre alla
macchina fisica. Il S.O. traduce qualsiasi operazione di accesso a
risorse hardware, implicitamente richiesta dal comando
dell'utente
Ecco alcuni esempi di sistema operativo:
MS-DOS: Un sistema operativo a riga di comando (CLI). Non ha un'interfaccia grafica:
o l'utente interagisce inserendo comandi da tastiera.
Windows: Un sistema operativo con un'interfaccia grafica (GUI) che rende l'uso del
o computer più semplice e accessibile
Linux
o Unix
o
• Classificazione di un sistema operativo
Un sistema operativo (S.O) ha vari parametri di classificazione:
1. In base al numero di utenti:
Monoutente (mono-user)à un solo utente alla volta può utilizzare il sistema
o Multiutente (multi-user) più utenti in contemporanea possono interagire con la
à
o macchina
2. In base al numero di programmi in esecuzione:
Mono-programmato (mono-task) si può eseguire un solo programma per volta
à
o Multi-programmato (multi-task) il S.O. permette di eseguire più programmi in
à
o contemporanea (su una sola CPU) ma comunque il S.O. deve gestire la suddivisione del
tempo della CPU fra i vari programmi (time-sharing)
• Applicativi per software
Un applicativo di un software, noto anche come software applicativo, è un programma progettato
per aiutare l'utente a svolgere compiti specifici o soddisfare particolari esigenze (come fogli di
calcolo, scrittura, comunicazione, svago, ecc.)
Ecco alcuni esempi di applicativi per software:
Software per elaborazione testi Creazione, modifica e stampa di un documento: Word,
à
o Editor, OpenOffice Writer
Foglio elettronico Tabelle di valori e generazione di grafici: Excel, Lotus, OpenOffice
à
o Software per database Sistema per l'archiviazione ed il recupero efficiente di dati in
à
o formato digitale: Access, Oracle, MySQL,...
Software per presentazioni Creazione di testi/immagini per diapositive e prospetti:
à
o PowerPoint, Acrobat, ...
Software per la comunicazione Creazione, invio e ricezione di posta elettronica: Outlook,
à
o Eudora, ...
Navigazione su Web Explorer, Firefox, ...
à
o Software per il calcolo Simbolico e/o numerico: Matlab, Photomath, Geogebra
à
o Software di utilità Antivirus, antispyware, ...
à
o
N.B. Anche i virus informatici ad esempio sono software…
• Formalizzazione dell’informazione
Appena ci si presenta un problema, ci sono diverse fasi da affrontare per poi trovare l’algoritmo che
possa risolverlo:
1. Definizione del problema la risoluzione dei problemi richiede la comprensione delle
à
informazioni disponibili, l’individuazione delle necessità e la formulazione di obiettivi chiari.
2. Comprensione del problema il primo passo è analizzare il problema per identificarne i
à
componenti principali. La scomposizione aiuta a organizzare le informazioni e a definire gli
approcci possibili. Un esempio di scomposizione può essere:
a. Eliminare ogni ambiguità di formazione
b. Focalizzare gli obbiettivi
c. Evidenziare i reali del problema
3. Soluzione del problema una volta compreso il problema, è necessario progettare una
à
soluzione efficiente, traducendo il problema in una sequenza di azioni ben definite
(denominata anche algoritmo risolutivo).
• Algoritmo
Per algoritmo s’intende una sequenza ordinata di azioni che trasformino i dati in un numero finito
di passi per giungere ad una soluzione. Deve essere chiaro, preciso e finito.
Gli algoritmi devono possedere le seguenti caratteristiche:
Definitività: ogni passo deve essere chiaramente definito.
o Efficacia: d
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.
-
Appunti Informatica
-
Appunti Informatica
-
Appunti esame Informatica multimediale
-
Appunti esame informatica