La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

FONDAMENTI DI INFORMATICA

Presentazioni simili


Presentazione sul tema: "FONDAMENTI DI INFORMATICA"— Transcript della presentazione:

1 FONDAMENTI DI INFORMATICA
Prof. Giovanni Danese, Tullio Facchinetti Dip. Informatica e Sistemistica, piano F Tel Corso di Laurea in Ingegneria Elettronica e Informatica orario delle lezioni: Lunedì 9-11 aula EF4, Venerdì aula EF3 orario di ricevimento: Martedì e Giovedì Sito Web:

2 Dip. di Ingegneria Industriale e dell’informazione

3 Dipartimento: PIANO F Io sono qui

4 Calendario delle lezioni e degli esami
Periodi di lezione (FdI è un corso annuale) 1) 29/9 – 19/12; 7/1 – 16/1 2) 2/3 – 1/4; 8/4 – 12/6 1a Sessione d’esame (per i corsi semestrali) 19/1 – 27/2 2a Sessione d’esame e Sessione di recupero 15/6 – 31/7; 31/8 – 25/9 Per FdI nella 1a Sessione d’esame si può sostenere una prova di valutazione intermedia

5 Materiale didattico consigliato
Libri consigliati: J. Glenn Brookshear, “Informatica. Una panoramica generale”, Pearson, 2012, Milano. In alternativa: P. Tosoratti, “Introduzione all’Informatica”, Casa Editrice Ambrosiana, Milano. Libri consultabili: G. Cioffi, V. Falzone, “Manuale di Informatica”, Edizioni Calderini, Bologna. David A. Patterson, John L. Hennessy, “Struttura e progetto dei Calcolatori” Zanichelli, 2010, III Edizione V. Cantoni, “Appunti delle lezioni di Fondamenti di Informatica”, a cura di A. Piccolini, Edizioni CUSL Consultazione Internet

6 Prove degli appelli d’esame
Prova d’esame composta da una prova di teoria e una prova pratica da svolgere sui calcolatori delle aule didattiche di Informatica Nella prova scritta di teoria vengono proposti 8 argomenti trattati nel corso delle lezioni che devono essere approfonditi dal candidato (2 degli 8 quesiti relativi alla teoria della programmazione) La valutazione è la media delle valutazioni conseguite nelle 8 domande. La prova pratica prevede la soluzione di un problema ideando un idoneo algoritmo e utilizzando il linguaggio C

7 Prove degli appelli d’esame
Una valutazione sufficiente in ambo le prove consente il superamento dell’esame con valutazione globale ottenuta come media pesata delle singole valutazioni (pesi 3/5 e 2/5). È prevista una prova orale facoltativa con due finalità differenti: nel caso in cui la valutazione globale risultante sia sufficiente, per permettere la modifica di tale valutazione globale; nel caso in cui la prova scritta di teoria sia stata valutata insufficiente, ma superiore 16/30, per raggiungere una valutazione finale sufficiente.

8 Esame (3) Prova intermedia (1)
1a prova teorica: argomenti trattati nel corso delle lezioni nel primo semestre 2a prova teorica: argomenti trattati nel corso delle lezioni nel secondo semestre; da sostenere in uno degli appelli fissati. L’accesso a questa prova è vincolato dal superamento della prima prova 3a prova pratica: soluzione di un problema ideando un idoneo algoritmo e utilizzando il linguaggio C La valutazione globale è la media pesata delle tre prove sostenute, con il vincolo che tutte siano sufficienti (pesi: 3/10, 3/10 e 4/10).

9 Esame (3) Prove intermedia (2)
In caso di esito non sufficiente nella prima prova teorica, il candidato dovrà sostenere l’intero esame negli appelli delle rimanenti sessioni. In caso di esito non sufficiente nella seconda prova teorica o della prova pratica, il candidato può ripetere la sola prova giudicata insufficiente in uno degli appelli fissati. Validità delle prove fino alla sessione invernale dell’a.a. successivo.

10 Obiettivi del corso Acquisizione delle nozioni di base dell’informatica Conoscenza dei sistemi per l’elaborazione dell’informazione Conoscenza dei linguaggi per la programmazione degli elaboratori elettronici Acquisizione della capacità di trovare soluzioni “algoritmiche” a problemi

11 Programma del corso Architettura e principi di funzionamento degli elaboratori elettronici Rappresentazione delle informazioni e nozione di algoritmo Programmazione degli elaboratori elettronici (linguaggio C) Esercitazioni teoriche (in aula) pratiche (su elaboratore) Tutorato

12 Introduzione all’informatica - Applicazioni
Studi professionali per automazione d’ufficio (Office Automation: O.A.), informatica individuale, progettazione assistita (CAD), … Imprese manifatturiere per amministrazione/supporto alla gestione, controllo dei processi, automazione, O.A., … Banche, assicurazioni, imprese di servizi per O.A., utilizzo di basi di dati, trasferimenti elettronici di fondi, transazioni commerciali, ...

13 Introduzione all’informatica - Utilizzo dei calcolatori
Affari generali: inventari, gestione stipendi, contabilità, borsa valori, … Banche: processi automatizzati Industria: CAD-CAM, controllo di processo, robotica, pianificazione, … Ufficio: elaborazioni testi, gestione dati Servizi: sanità, biblioteche, … Ricerca: simulazioni, basi dati, … Istruzione ...

14 Concetti base Informatica: INFORmazione autoMATICA
Computer - Elaboratore elettronico: è una macchina concepita per l’elaborazione automatica dei dati (non è una macchina calcolatrice) Hardware: ciò che si può “toccare” o “vedere” di un calcolatore Software: la componente “immateriale”, l’insieme dei programmi che permettano l’uso effettivo del calcolatore

15 Concetti base Input/Output: ingresso/uscita dati verso sistema hardware e software. Dati digitali o convertiti in digitale Firmware: componenti hardware pre-programmati Reti: la comunicazione fra due o più calcolatori avviene attraverso componenti hardware e software Architettura di un sistema di elaborazione: l’insieme di moduli, soluzioni, metodologie e tecniche che regola l’interrelazione tra hardware, firmware, software e interfaccia verso l’uomo Architettura di rete: l’insieme di moduli, soluzioni, metodologie e tecniche che regola l’interrelazione tra computer in rete

16 Concetti base Schema generale a STRATI Utilizzatore Esempio
Applicazioni Software di base/software di comunicazione Hardware+firmware Esempio MS-Word Windows XP/TCP/IP Intel Pentium + …

17 Concetti base: unità di misura
Bit (b): unità di misura più piccola. Binary digit (numero binario) descrive due stati diversi, acceso/spento, sì/no, vero/falso Byte (B): sequenza di 8 bit KB (kilo byte): 210=1024 byte MB (mega byte): 220= byte GB (giga byte): 230= byte

18 Concetti base 1 pagina  2000 caratteri  2KB
1 libro  500 pagine  1MB 1 pagina A4: 21 x 29.5 cm = 8.25 x 11.5 pollici uno scanner ha una risoluzione, ad esempio, di 300 punti per pollici: 2475 x 3450 = punti 1 pagina (a toni di grigio)  8.5 MB, 1 pagina (a colori)  25 MB Risoluzione standard dei monitor: x 480 = = 300 KB 800 x 600 = = 469 KB 1024 x 768 = = 768KB 1280 x 960 =  1200 KB  1.2MB

19 Concetti base: unità di misura
Hertz (Hz): misura di frequenza (per eventi periodici; 1 Hz = 1 ciclo al secondo) MHz: Megahertz, milioni di cicli al secondo Mips: Mega instructions per second (milioni di istruzioni al secondo) Mips e MHz NON sono la stessa cosa Esempio: CPU INTEL a 25 MHz esegue 2.5 Mips Mflops: Mega floating point operations per second (milioni di operazioni in “floating point” al secondo) Baud (bit/sec): misura la velocità di trasmissione dati

20 Concetti base: classi di computer
Personal Computer: IBM-compatibili, Apple Macintosh; mono utente Workstation (stazione di lavoro): generalmente sistema operativo UNIX Minicomputer: usati da decine di utenti contemporaneamente Mainframe: centinaia di utenti Supercomputer: architetture parallele; dedicati all’elaborazione di grandi quantità di dati. Sistemi operativi particolari

21 Dal problema al risultato: il ruolo del computer
CONOSCENZA SUL DOMINIO DEL PROBLEMA { ALGORITMO ANALISTA PROGRAMMATORE SVILUPPO DELLA SOLUZIONE CONOSCENZA LINGUAGGIO DI PROGRAMMAZIONE UTENTE PROGRAMMA { programma dati soluzione ESECUZIONE DEL PROGRAMMA COMPUTER

22 Architettura della macchina di Von Neumann
Unità di ingresso Unità di uscita Memoria ALU Unità di controllo Risultati Programmi e dati CPU: Central Processing Unit CPU Unità centrale I microprocessori attuali sono dispositivi elettronici in grado di implementare all’interno di un unico circuito integrato le funzioni di un’intera CPU

23 Unità Centrale D A T B U S CO N T R O L B U S AD D R E S S B U S CPU
ALU CPU Unità di controllo MAR Memoria ROM MBR MAR Memoria RAM MBR

24 Microprocessori e Bus 210 Byte = 1024 byte = 1 KByte
I microprocessori sono dispositivi elettronici che implementano in un unico circuito integrato le funzioni di una intera CPU. I microprocessori attuali hanno bus dati a 8, 16, 32, 64 bit. Il bus dati (data bus) esprime la capacità di elaborazione del processore (quanti bit possono essere elaborati in parallelo) Il bus indirizzi (address bus) esprime la capacità di memorizzazione del processore (2m celle di memoria, se m è il numero dei bit del bus) La capacità di indirizzamento indica il numero di celle diverse cui si può accedere: 210 Byte = 1024 byte = 1 KByte 220 Byte = byte = 1 Mbyte 230 Byte = byte = 1 GByte

25 Un Esempio Variazione nella precisione di misura di 1 Kg. in un sistema di pesatura basato su microprocessori con diversa dimensione del bus dati Numero di bit bus dati Dati rappresentabili 24=16 28= = 65536 Precisione relativa 6.25% ~3.9 ‰ ~0.015‰ Precisione max gr ~3.9 gr ~0.015 gr

26 Osservazioni I microprocessori a 8 bit di dato hanno tipicamente bus indirizzi a 16 bit con capacità di indirizzamento di 64 KB I microprocessori a 16 bit di dato hanno tipicamente bus indirizzi a bit con capacità di indirizzamento di 1-16 MB I microprocessori a 64 bit di dato hanno bus indirizzi a 64 bit con capacità di indirizzamento fino a circa 1019 byte I microprocessori Single Chip riuniscono in un unico circuito integrato più di uno dei blocchi costituenti un microcalcolatore (eventualmente tutti).

27 Architettura di una CPU
BUS DATI ESTERNO BUS DATI INTERNO ACC C O N T R. D E C O D. I N S T. R E G. SP PC R e g R e g N F L A G …. ALU BUS INDIRIZZI INTERNO BUS IND. ESTERNO

28 Architettura di una CPU
IR: Instruction Register ALU: Arithmetic and Logic Unit PC: Program Counter (punta alla memoria che contiene i programmi) F: Registro dei flag SP: Stack Pointer Stack: area di memoria gestita con logica LIFO (Last In First Out)

29 Ciclo di esecuzione di un’istruzione
FETCH (prelevamento dell’istruzione) DECODIFICA ESECUZIONE La memoria (ROM e RAM) contiene il programma e i dati sui quali opera la CPU. Il Program Counter (PC) contiene l’indirizzo della cella di memoria con la prossima istruzione da eseguire. FORMATO DELLE ISTRUZIONI Codice Operativo Operando 1 Operando 2 Campo che caratterizza le varie istruzioni Gli operandi possono essere 0, 1, 2

30 Sequenza di operazioni elementari per l’esecuzione di ogni singola istruzione
FETCH: vengono letti i campi che costituiscono l’istruzione: 1) (PC)MAR 2) ((MAR)) MBR; (PC)+1 PC 3) (MBR) IR I passi 1, 2, 3 permettono di caricare in IR (instruction register) il codice operativo (OP Code) dell’istruzione corrente. Passi analoghi permettono di caricare in opportuni registri della CPU gli operandi presenti nell’istruzione. In tal caso, nel passo 3 la destinazione del dato proveniente dalla memoria non è più IR, ma opportuni registri. DECODE: viene identificata l’istruzione corrente sulla base dell’OP Code EXECUTE: è diversa a seconda del tipo di istruzione. In pratica consiste nell’inviare comandi e dati alle unità interessate. P.S. MAR= Memory Address Register; MBR: Memory Buffer Register Notazione: (X) Y significa: “Il contenuto del registro X viene trasferito nel registro Y

31 Formato delle istruzioni
Le istruzioni sono codificate da stringhe di bit. Una volta caricata nell’IR, un’istruzione deve essere decodificata ed eseguita. A tal scopo l’unità di controllo deve conoscere: codice operativo sorgente: dati su cui operare destinatario: dove porre il risultato e, se sorgente e destinazione sono in memoria, la modalità di indirizzamento Codice Operativo Sorgente Destinazione Mod. indirizzamento Esempio 1: Somma tra il contenuto del registro R2 e il contenuto dell’accumulatore. Il risultato va nell’accumulatore FORMATO codice operativo FETCH come in precedenza ESECUZIONE (R2)+(ACC)ACC

32 Esempio di esecuzione di istruzioni complete
Esempio 2: somma tra il contenuto della cella di memoria il cui indirizzo è specificato nell’istruzione ed il contenuto dell’accumulatore; il risultato va nell’accumulatore FORMATO: codice operativo+operando FETCH: 1) (PC)MAR 4) (PC)MAR 2) ((MAR)) MBR; (PC)+1 PC 5) ((MAR)) MBR; (PC)+1 PC 3) (MBR) IR 6) (MBR) Rn EXECUTE: 1) (Rn) MAR 3) (MBR) Rn 2) ((MAR)) MBR 4) (Rn)+(ACC) ACC

33 Esempio di esecuzione di istruzioni complete
Esempio 3: saltare all’istruzione che è memorizzata nella cella il cui indirizzo è specificato all’interno dell’istruzione corrente: FORMATO: codice operativo+operando FETCH: 1) (PC)MAR 4) (PC)MAR 2) ((MAR)) MBR; (PC)+1 PC 5) ((MAR)) MBR; (PC)+1 PC 3) (MBR) IR 6) (MBR) Rn EXECUTE: 1) (Rn) PC


Scaricare ppt "FONDAMENTI DI INFORMATICA"

Presentazioni simili


Annunci Google