Sei sulla pagina 1di 75

Università Roma Tre

Dipartimento di
ECONOMIA AZIENDALE

Corso “INFORMATICA”
Docente: Aniello Della Rocca

Lezione 2

8 marzo 2021
PROGRAMMA

Ø Concetti principali dell’informatica


Ø Principi operativi del computer
Ø Uso del computer e gestione dei file
Ø Il funzionamento delle reti
Ø Algoritmi
Ø Dati e informazioni
Ø Word processing
Ø Fogli elettronici
Ø Database
´ TESTI ADOTTATI
u Lawrence Snyder, Alessandro Amoroso.
Fluency: Conoscere e usare l’informatica - Pearson
Education

Saranno distribuiti degli appunti durante le lezioni,


reperibili nella sezione relativa al materiale didattico.
´
BIBLIOGRAFIA DI RIFERIMENTO
u J. Glenn Brookshear, Dennis Brylow - Informatica:
Una panoramica generale - Pearson Education
u Alberto Clerici - Manuale di informatica per
l'economia - EGEA
ESONERO PROVA DI IDONEITÀ
Gli studenti in possesso di certificazione rilasciata da Ente Certificatore, di
livello almeno equivalente all’ ECDL possono essere esonerati dalla prova.
Pertanto la certificazione dovrà comprendere i seguenti moduli (o equivalenti):

ECDL (AICA) EIPASS


Computer Essential I fondamenti dell’ICT

Online Essential Sicurezza informatica

Word Processing Navigare e cercare informazioni


sul Web
Spreadsheet
Comunicare in Rete
Presentation
Elaborazione testi
IT Security
Foglio di calcolo
Online Collaboration
Presentazione
Principi operativi
dei computer
Struttura «operativa» dei computer
´ Processore (CPU)

´ Sistema operativo (OS)

´ Software

´ Istruzioni

´ Ciclo macchina (Fetch/Execute)

´ Memoria

´ Hardware componente
lingua
inglese

javascript
codice
predefinito
test
commenti
Livelli di software

Windows.NET
Lo sviluppo di software oggi adotta un
approccio a più livelli:
i programmi che rientrano in un livello
impiegano per le attività più primitive
le funzionalità fornite dai livelli
sottostanti e, nel contempo forniscono
funzionalità più avanzate ai livelli
sovrastanti.
Il motore di esecuzione delle istruzioni è il
ciclo macchina (fetch/execute) che è
implementato nell’hardware.
Il ciclo fetch/execute consiste nel
prelevare l’istruzione, decidere cosa fare,
ottenere i dati necessari, eseguirla,
salvare il risultato e poi ripetere il ciclo.
Ciclo Macchina
RAM➞CPU
Fetch istruzione (IF)

CPU
Decodifica istruzione (ID)

RAM➞CPU
Fetch Dati (DF)

CPU
Esecuzione Istruzione (EX)

CPU➞RAM
Restituzione Risultato (RR)
Memoria
La memoria contiene sia il programma
in esecuzione che i dati.

Proprietà
• Locazioni discrete
• Indirizzi
• Valori
• Capacità finita
Sottoinsiemi principali del
computer
• unità di controllo
• memoria
• ALU
• unità di inout
• unità di output
Controllo ALU Input
istruzione dato 1 tastiera
mouse
IF dato 2 [ ] touchscreen
ID
CPU
program microfono
DF risultato
EX counter camera
RR indirizzo risult. scanner

Bus memoria USB


RAM disco rigido
indirizzo indirizzo contenuto memoria scheda flash
istruzione … Output rete

indirizzo …
dato 1 … monitor
… stampante
indirizzo …
altoparlanti
dato 2 …
… vibrazione
RAM
indirizzo indirizzo contenuto memoria
istruzione …

indirizzo …
dato 1 …

indirizzo …
dato 2 …

RAM
contiene

´il programma in esecuzione

´i dati su cui il programma stesso opera


Caratteristiche della RAM
´ Locazioni discrete
´ogni locazione è di 1 byte

´ Indirizzi
´univoco per ogni locazione (intero a
partire da 0)
Caratteristiche della RAM
´ Valori
´le locazioni di memoria memorizzano
valori

´ Capacità finita
´sia nel numero di locazioni
´sia nella capacità di ogni locazione
locazioni come
rettangoli
indirizzo

0 1 2 3 4 5 6 7 8 9 10 11 12
100 C i a o ! $ * ( b d a ) …

valore
Locazioni da un byte
´ Ogni locazione contiene
´una sequenza di 8 bit

´ Parola di memoria
´blocchi di 4 byte usati come singola unità
RAM
´ Accesso Casuale o diretto
´il computer può accedere direttamente a
qualsiasi locazione di memoria

´ Ordine di grandezza: gigabyte (GB)

´ Avere molta memoria è preferibile


´evita problemi di spazio per i programmi e
i dati
Controllo ALU
istruzione dato 1

IF dato 2 [ ]
ID
DF program
risultato
EX counter
RR indirizzo risult.

RAM
indirizzo indirizzo contenuto memoria
istruzione …

indirizzo …
dato 1 …

indirizzo …
dato 2 …

CPU
´ Controllo + ALU

´ Implementa il ciclo macchina via hardware


controllo
Fetch istruzione (IF)

CPU
Decodifica istruzione (ID)

controllo
Fetch Dati (DF)

ALU Esecuzione Istruzione (EX)

Restituzione Risultato (RR)


controllo
Istruzione esempio

riferimento
indiretto

´ ADD 4000, 2000, 2080

´somma i numeri nelle locazioni 2080 e 2000

´scrive il risultato nella locazione di memoria


4000
Istruzione esempio
´ Il passo di Fetch Dati
´deve estrarre i due valori

´ Il passo Restituzione Risultato


´inserirà la somma nella locazione 4000
ALU
´ Arithmetic Logic Unit

´ Esegue tutti i calcoli


´ il passo esecuzione istruzione

´ Circuito della ALU per la somma


´ Ci sono altri circuiti
´dedicati alla moltiplicazione, al
confronto, …
Risultati operazione
ADD 4000, 2000, 2080

2000 2080 4000


48 2 50

2000 2080 4000


9 0 9

2000 2080 4000


14 14 28
Controllo ALU Input
istruzione dato 1 tastiera
mouse
IF dato 2 [ ] touchscreen
ID
program microfono
DF risultato
EX counter camera
RR indirizzo risult. scanner

memoria USB
RAM disco rigido
indirizzo indirizzo contenuto memoria scheda flash
istruzione … Output rete

indirizzo …
dato 1 … monitor
… stampante
indirizzo …
altoparlanti
dato 2 …
… vibrazione
Input e output
´ Le periferiche

´si collegano alle porte di input/output


´non sono parti vere e proprie del computer
´specializzate per codificare o decodificare i
dati scambiati col mondo esterno
Hard disk

´ Periferica alfa

Obsolescenza della
´ Chiavi USB e hard disk
´ hanno entrambe le funzioni di input e output
´ archivio “permanente” di dati
´ vita “attesa”

tecnologia
Le periferiche
Le periferiche sono dispositivi che si connettono alle
porte di input/output del processore per fornire input
e ricevere output

´ La tastiera
´trasforma le battute sui tasti in formato
binario

´ Il monitor
´rappresenta i dati contenuti nella
memoria video
Driver delle periferiche
´ Le periferiche sono quasi tutte “stupide”
´forniscono una traduzione fisica da o verso
segnali binari

´ Driver (elemento software)


´traduzione tra fenomeno fisico e segnale
binario
´ Il computer fa tutto il resto
´interpreta il segnale binario riportato dalla
periferica
´prepara l’output
Controllo ALU Input
istruzione dato 1

IF dato 2 [ ]
ID
DF program risultato
EX counter
RR indirizzo risult.

RAM Bus
indirizzo indirizzo contenuto memoria
istruzione … Output

indirizzo …
dato 1 …

indirizzo …
dato 2 …

BUS
´ Tutti i trasferimenti di dati passano attraverso il
bus

´ Come una autostrada a più corsie


´ ampiezza
´ velocità

´ “Collo di bottiglia” delle prestazioni del


computer
Un “PC” nel PC
´ Program Counter (indirizzo dell’istruzione successiva)

´ Qual’è la prossima l’istruzione da eseguire?

´l’indirizzo è memorizzato nell’unità di controllo


Aggiornamento del PC
´ Al fetch di una nuova istruzione
´il PC è incrementato di 4 (gli attuali
computer hanno istruzioni lunghe 4 bit)

´ Al prossimo fetch
´il PC “punta” all’istruzione giusta
Decodifica delle istruzioni
´ Esecuzione di un programma

´il computer interpreta i nostri comandi

´espressi nel suo proprio linguaggio


ADD 800, 428, 884
indirizzo 1º
somma
addendo

´ Esecuzione di ADD 800, 428, 884

indirizzo indirizzo 2º
risultato addendo
Controllo ALU Input
istruzione dato 1

IF dato 2 [ ]
ID
DF program
risultato
EX counter
RR 800
indirizzo risult.

RAM Bus
indirizzo indirizzo contenuto memoria
istruzione … Output
800
800 ADD 4000, 2000, 2080
indirizzo …
dato 1 2000 30

indirizzo 2080 12
dato 2 …
4000
Controllo ALU Input
istruzione dato 1
ADD 4000, 2000, 2080

IF dato 2 [ ]
ID
DF program
risultato
EX counter
RR 800
indirizzo risult.

RAM Bus
indirizzo indirizzo contenuto memoria
istruzione … Output
800
800 ADD 4000, 2000, 2080
indirizzo …
dato 1 2000 30

indirizzo 2080 12
dato 2 …
4000
Controllo ALU Input
istruzione dato 1
ADD 4000, 2000, 2080

IF dato 2 +
[ ]
ID
DF program
risultato
EX counter
RR 800
804
indirizzo risult. 4000

RAM Bus
indirizzo indirizzo contenuto memoria
istruzione … Output
800 ADD 4000, 2000, 2080
indirizzo …
dato 1 2000 30
2000 …
indirizzo 2080 12
dato 2 …
2080 4000
Controllo ALU Input
istruzione dato 1
30
IF dato 2 +
[ ]
ID 12
DF program
risultato
EX counter
RR 804
indirizzo risult. 4000

RAM Bus
indirizzo indirizzo contenuto memoria
istruzione … Output
800 ADD 4000, 2000, 2080
indirizzo …
dato 1 2000 30
2000 …
indirizzo 2080 12
dato 2 …
2080 4000
Controllo ALU Input
istruzione dato 1
30
IF dato 2 +
[ ]
ID 12
DF program
risultato
EX counter
42
RR 804
indirizzo risult. 4000

RAM Bus
indirizzo indirizzo contenuto memoria
istruzione … Output
800 ADD 4000, 2000, 2080
indirizzo …
dato 1 2000 30

indirizzo 2080 12
dato 2 …
4000
Controllo ALU Input
istruzione dato 1
30
IF dato 2 +
[ ]
ID 12
DF program
risultato
EX counter
42
RR 804
indirizzo risult. 4000

RAM Bus
indirizzo indirizzo contenuto memoria
istruzione … Output
800 ADD 4000, 2000, 2080
indirizzo …
dato 1 2000 30

indirizzo 2080 12
dato 2 …
4000 42
Velocità del ciclo macchina
´ In un secondo esegue un enorme numero di
istruzioni

´ Il clock del computer


´determina la velocità del ciclo macchina
´misurato in Hertz (Hz)

´ ODG del miliardo di cicli al secondo (GHz)


La frequenza è importante?
´ I computer moderni
´cominciano un’istruzione a ogni tick del
clock

´ I circuiti si passano l’istruzione l’un l’altro


(pipelining)
´possono essere processate 5 istruzioni
simultaneamente
Software visto dal computer
´ Vede un oggetto binario (codice macchina)

´una sequenza di parole (word, gruppi di 4


byte)
´l’unico che comprende e sa eseguire
Il linguaggio assembly
(forma intermedia tra codice sorgente e codice oggetto o
codice binario)

´ Alternativa al linguaggio macchina


´usa lettere e numeri

´ Di più facile comprensione per le persone

´ Traducibile automaticamente in linguaggio


macchina
Assemblare
´ Il computer scandisce il programma assembly

´quando incontra una parole chiave


´ cerca in una tabella la corrispondente
sequenza binaria

´ assembla le varie parti dell’istruzione


´ “costruisce” l’istruzione macchina

Un assemblatore è un programma che crea parole binarie di


memoria sostituendo le lettere simboliche con equivalenti
binari. Quando ha assemblato tutti i bit dell’istruzione li salva
nel file oggetto binario e passa alla riga successiva.
Linguaggi di alto livello
´ La maggior parte del software è scritta così

´ Prima compilato in linguaggio assembly

´ Poi assemblato
´per ottenere un file binario
Compilare
´ Il processo è svolto da un’applicazione

´ Dai costrutti del linguaggio di alto livello


all’assembly

´ Scritto in un linguaggio di alto livello


´p.e. C o Java
Eseguire un’applicazione

´ Le istruzioni macchina vengono trasferite


dal disco nella memoria RAM

´ Il ciclo macchina esegue le istruzioni

´ Tutte le istruzioni del computer sono


eseguite dai circuiti contenuti nell’ALU
Sistemi operativi
´ Offrono le operazioni base per l’uso del
computer
´non supportate direttamente dall’hardware

´ I tre più usati per personal computer:


´Microsoft Windows
´Apple MacOS X
´Linux (Unix)
GUI
interfaccia grafica

´ Sono “impacchettati” e forniti con l’OS

´bordi delle finestre,


´le barre di scorrimento,
´i pulsanti,
´i puntatori, ecc.
Caratteristiche
´ Multitasking
´ può eseguire più processi per volta
´ gestione dei programmi in
esecuzione «contemporaneamente»

´ Multiuser
´ più utenti in “contemporanea”
Time sharing
´ Tecnica che suddivide il tempo in intervalli
´ frazioni di secondo

´ Ad ogni intervallo:
´ un solo programma è in esecuzione
´ ciclicamente esegue tutti i programmi

´ L’utente ha l’impressione di contemporaneità


Software

Sistema Applicazioni

Sistema
Utilità
operativo

Kernel Shell
Shell
´ Interfaccia con l’utente
´ contiene anche le GUI
´ ma l’interfaccia potrebbe anche non essere
di tipo grafico

´ Spesso viene confuso il sistema operativo con


l’aspetto grafico della sua interfaccia
Kernel
´ Parte interna del sistema operativo e
contiene i programmi per le funzioni
base

´driver
´file manager
´memory manager
File manager
´ Parte del kernel che gestisce i file e la memoria di
massa

´ permessi di accesso
´ allocazione
´ icone
Memory manager
´ Gestisce la RAM e i processi in esecuzione

´ Paginazione (a ogni app in esecuzione vengono


assegnati dei blocchi di memoria)

´ Memoria virtuale (area speciale del disco rigido che non


è fisicamente disponibile ma che la app può utilizzare come
se lo fosse)
Comunicazione con altri dispositivi
Un singolo controller può gestire molti tipi di
dispositivi.
Esempi di standard adottati per connettere
dispositivi periferici al computer sono:
• USB (Universal Serial Bus)
• HDMI ( High Definition Media Interface)
• DisplayPort
Ciascun controller comunica con il computer
tramite connessione allo stesso bus che connette
la CPU e la memoria principale, quindi può
comunicare con la memoria principale durante i
nanosecondi in cui la CPU non utilizza il bus.
Questa capacità dei controller è detta DMA
(Direct Memory Access).
Questo migliora le prestazioni di un computer ma
ha anche un effetto negativo: complicare il
traffico gestito dal bus (collo di bottiglia).
Handshaking

Il costante dialogo bidirezionale tra computer


e periferica è detto handshaking:
aggiornamento sullo stato e coordinamento
delle attività.
A seconda del sistema il controller risponde
direttamente alle informazioni sullo stato della
periferica oppure renderle disponibili alla
CPU.
Modalità di comunicazione più diffuse

• Comunicazione parallela
Sono trasferiti più segnali contemporaneamente su
linee separate
Rapida ma percorso complesso

• Comunicazione seriale
Più lenta ma strutturalmente più semplice
Esempi: USB e FireWire (brevi distanze)
Ethernet via cavo o via radio (distanze maggiori)
Domande per autovalutazione
A1. Un server è:
a. Un computer che ospita programmi e dati condivisi dalle postazioni collegate alla rete
b. Un computer che utilizza i programmi e dati condivisi dalle postazioni collegate alla rete
c. Il computer che ha le migliori prestazioni tra le postazioni collegate alla rete
d. Un computer privo di memoria e di unità elaborativi

A2. Che differenza c'è tra hardware e software:


a. L'hardware si riferisce al computer come macchina, il software si riferisce ai programmi
b. Designano rispettivamente computer difficili e facili da usare
c. Hardware è il corpo principale del computer, software sono i dischetti
d. Il primo è l'elaboratore centrale di una rete, il secondo identifica gli altri computer

A3. Un mainframe è:
a. Il modulo principale di un programma
b. Un sistema di elaborazione multiutente
c. Una parte di una finestra Windows
d. Uno dei componenti della CPU
A4. Un minicomputer è:
a. Un elaboratore con una notevole potenza di calcolo
b. Un elaboratore portatile
c. Un elaboratore senza periferiche
d. Un PC senza memoria di massa

A5. Quali delle seguenti è una caratteristica di un


computer di tipo desktop
a. Trasportabilità
b. Estrema velocità
c. Dimensioni ridotte
d. Facilità per aggiungere componenti
B1. Un bus è:
a. Un componente della CPU.
b. Un dispositivo usato solo nelle reti.
c. Il canale trasmissivo con cui colloquiano le componenti di un elaboratore.
d. Una periferica d'uscita.

B2. Fanno parte dell’hardware:


a. Il sistema operativo ed i programmi applicativi
b. Il processore e la memoria centrale
c. Il sistema operativo e le periferiche
d. Il file system e la memoria secondaria

B3. Gli elementi base dell'architettura di Von Neumann sono:


a. Periferiche d'ingresso, periferiche d'uscita e interfacce.
b. CPU, memoria, bus e periferiche.
c. Unità di controllo e ALU.
d. Memoria interna, memoria esterna e memoria cache.
B4. Quando sono utilizzati i programmi si trovano
a. Nella RAM
b. Nella ROM
c. In tutte le memorie
d. Nella CPU

B5. Cosa significa la sigla USB?


a. Universal Serial Bus
b. Unit Service Bit
c. Universal Service Bit
d. Tutte le affermazioni sono errate
C1. La ALU serve a:
a. Trasferire informazioni direttamente da periferica a periferica
b. Eseguire le operazioni aritmetico-logiche
c. Interpretare i comandi dell'utente
d. Far comunicare tra di loro le varie unità di un sistema informatico

C2. Le funzioni dell'unità di controllo (CU) di un processore sono:


a. Controllare l'accesso alla rete.
b. Verificare che le periferiche funzionino correttamente.
c. Acquisire le istruzioni dalla memoria, interpretarle e coordinare il lavoro delle altre
componenti.
d. Eseguire le operazioni aritmetiche e logiche.

C3. Cosa misura la velocità di un processore:


a. La velocità di accensione del PC.
b. La velocità di esecuzione delle istruzioni.
c. La velocità di stampa.
d. La velocità di scaricamento delle mail.

Potrebbero piacerti anche