Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di...

13
Laboratorio di Informatica I 1 Lezione 1: Introduzione al corso Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica 2 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano Struttura della lezione • Il corso di Laboratorio di Informatica I – informazioni logistiche ed organizzazione obiettivi del corso – le attività di laboratorio – modalità di esame • Introduzione – Cosa è l’informatica (Computer Science) – L’evoluzione dei calcolatori e considerazioni – Classificazione degli elaboratori – La struttura di base del calcolatore 3 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano Informazioni logistiche • Audience: – studenti la cui matricola termina per 8, 9 Orario delle lezioni Mercoledì (9-12) aula C-38 – Giovedì (15-17) aula C-31 – Venerdì (9-12) Laboratorio L/19 Ricevimento studenti – Mercoledì, Venerdì ore 12-13.30 studio L 1 22 Altre informazioni: http://www.dia.unisa.it/~vitsca/LAB 4 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano Organizzazione del corso Lezioni in aula (mercoledì e giovedì) – programmazione: il linguaggio di programmazione C Esercitazioni (venerdì) – esercitazioni guidate in laboratorio L/19 5 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano Libri di testo (1) Autore: Eric S. Roberts Titolo: “The Art and Science of C” Casa Editrice: Addison Wesley 6 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano Libri di testo (2) Autori: Al Kelley, Ira Pohl Titolo: “C: Didattica e Programmazione” Casa Editrice: Addison Wesley

Transcript of Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di...

Page 1: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

1

Lezione 1:Introduzione al corso

Vittorio Scarano

Laboratorio di Informatica I

Corso di Laurea in Informatica

2

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Struttura della lezione

• Il corso di Laboratorio di Informatica I– informazioni logistiche ed organizzazione– obiettivi del corso– le attività di laboratorio– modalità di esame

• Introduzione– Cosa è l’informatica (Computer Science)– L’evoluzione dei calcolatori e considerazioni

– Classificazione degli elaboratori

– La struttura di base del calcolatore

3

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Informazioni logistiche

• Audience:– studenti la cui matricola termina per 8, 9

• Orario delle lezioni– Mercoledì (9-12) aula C-38– Giovedì (15-17) aula C-31– Venerdì (9-12) Laboratorio L/19

• Ricevimento studenti– Mercoledì, Venerdì ore 12-13.30 studio L1 22

• Altre informazioni:http://www.dia.unisa.it/~vitsca/LAB

4

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Organizzazione del corso

• Lezioni in aula (mercoledì egiovedì)– programmazione:

• il linguaggio di programmazione C

• Esercitazioni (venerdì)– esercitazioni guidate in

laboratorio L/19

5

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Libri di testo (1)

Autore:

Eric S. Roberts

Titolo:

“The Art and Science of C”

Casa Editrice:

Addison Wesley

6

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Libri di testo (2)

Autori:

Al Kelley, Ira Pohl

Titolo:

“C: Didattica eProgrammazione”

Casa Editrice:

Addison Wesley

Page 2: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

2

7

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Modalità di esame

• Il corso di Laboratorio in 3 moduli:– Modulo A (Ottobre): esame a novembre (il 7 ?)

– Modulo B (Novembre): esame a dicembre

– Modulo C (Febbraio-Marzo): esame ad aprile

– Colloquio finale orale

• Dalla guida dello studente:“L’insegnamento di Laboratorio di Informatica I ècoordinato con quello di Programmazione I e la provad’esame congiunta dei due corsi, corrispondente a 4unità didattiche, dà luogo ad un unico voto.”

8

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Obiettivi del corso

• Alcuni concetti base sull’Informatica

• La programmazione: il linguaggio C– fondamenti di programmazione

– progettazione ed uso di librerie

– tipi di dati composti

• Operatività– realizzazione di programmi in C sotto Linux

9

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Introduzione al corso

• Cosa è l’informatica (Computer Science)• La evoluzione dei calcolatori• Una classificazione dei calcolatori• Alcuni concetti base:

– hardware, software– la architettura di un calcolatore– algoritmi e programmazione

• compilazione• debugging• software maintenance and software engineering

10

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

“ Informatica”?

= Trattamento automatico

maticaInfor

delle informazioni

!

11

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La Evoluzione dei Calcolatori

• La generazione zero: la preistoria

• La I generazione: le valvole elettroniche

• La II generazione: i transistors

• La III generazione: i circuiti integrati

• La IV Generazione: i circuiti integrati VLSI

12

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione “zero”: calcolatori meccaniciL’abaco

• L’abaco come strumento per contare– evolutosi in maniera leggermente diversa in:

• Babilonia, Cina, Grecia, Impero Romano

– tuttora in uso in Cina e Giappone

Page 3: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

3

13

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione “zero”: calcolatori meccaniciStrumenti per il calcolo azionati a mano

• Wilhelm Schickard (1623):– semplice calcolatore meccanico

(Orologio Calcolatore)

• Blaise Pascal (1642):Pascaline– addizionatore

– costruito in 50 esemplari

• Gottfried Leibnitz (1671):– moltiplicazioni e divisioni

14

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione “zero”: calcolatori meccaniciStrumenti per il calcolo azionati a vapore

• Babbage (1832): Difference Engine

– parzialmente realizzata

– composta di 14.000 pezzi

– funzionamento a vapore

– set fisso di istruzioni

15

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione “zero”: calcolatori meccanici

• Babbage: Analytical Engine (1870)– macchina programmabile:

• in grado di eseguire funzioni diverse a seconda dicome fosse programmata

• Le istruzioni venivano fornite attraverso schedeperforate (usate per i telai in Francia da Jacquard)

– Ada Lovelace Byron:• prima programmatrice della storia

– Macchina mai costruita

16

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Alcune considerazioni su ...L’Analytical Engine

• Un calcolatore è programmabile– assolve compiti diversi a seconda di come viene

programmata

– quindi, di uso generale (general-purpose)

• La macchina:– deve essere istruita sui passi da compiere per

risolvere un problema (programmazione)

– i programmi vanno inseriti tramite schedeperforate

17

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione “zero”: calcolatori meccanici

• Herman Hollerith U.S.A:– schede perforate per il censimento (1890)

• 200 tonnellate di schede raccolte (2 anni)

• 50-220 schede lette al minuto

– (1896) fonda la Tabulating Machine Companyche (1924) diventa la International BusinessMachine.

18

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Alcune considerazioni su ..Il censimento USA

• I dati vengono inseriti tramite schedeperforate: fase di input

• Separazione della fase di input da quella dielaborazione:– Necessità della memorizzazione dei dati

– Dispositivi di tipo diverso per

• inserimento dei dati

• elaborazione dei dati

Page 4: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

4

19

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione 0.5: calcolatori elettromeccanici

• Howard Aiken (1937-1944): Mark I– Harvard University– Altezza 3 metri, lunghezza 18 metri– Peso 5 tonnellate– Elettromeccanico :

• 760,000 parti, 3300 relay, 800 Km cavi– Prestazioni:

• 3 addizioni/s, 1 moltipl. in 6 s, 1 divisione in 13 s

20

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione 0.5: calcolatori elettromeccanici

• Caratteristiche del Mark I– Input: rotolo di carta perforata– Notazione decimale (23 cifre)

• maggiore precisione rispetto a 64 bit!– Alcuni applicazioni:

• calcolo integrali• equazioni top-secret provenienti da Los Alamos

21

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Generazione 0.5: calcolatori elettromeccaniciMark I: (1945) il primo “computer bug”

Grace Hopper (programmatrice part-time) scrive:

22

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

I Generazione: le valvole elettroniche (1)

� ENIAC (1943-1946)� Electronic Numerical Integrator and Computer

� Applicazioni calcolo balistico

� 30 tonnellate, 19.000 valvole termoioniche

� Prestazioni: 5.000 addizioni e 300moltiplicazioni a dieci cifre, al secondo

� Input/Output: Schede perforate e Telescriventi

� 30 unità (di cui 20 addizionatori) funzionanti inparallelo

23

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

ENIAC: le caratteristiche

• Dim.: 10 m x 18 m

• Controlli

• Console per output

• Consumo:

180.000 watt

24

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

ENIAC: la programmazione...

• Programmazione attraverso la connessione fisicadelle unità

• Viene introdotto il salto condizionato (if…then…)

Page 5: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

5

25

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

ENIAC: … ed il debugging

“ Identificare una valvola difettosa significacontrollare 19.000 componenti.”

26

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Alcune considerazioni su ..ENIAC

• La programmazione:– flusso di esecuzione del programma

– diramazioni condizionate

Condizioneverafalsa

27

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

I Generazione: le valvole elettroniche (2)

� EDVAC (1951)� Progettato da Von Neumann

� Dotato di memoria centrale(1024 parole)

� Dotato di memoria di massa(20000 parole)

� Usa la aritmetica binaria� ogni elemento può prendere

valore 0 oppure 1

� Struttura semplice e di facileprogrammazione

28

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La architettura di Von Neumann

Memoria

Unità di ControlloUnità Aritmetico-Logica

Accumulatore

Output InputFlusso datiSegnali di controllo

29

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano � Il programma viene memorizzato con i dati

� può automodificarsi� di facile modifica (programmazione)

� Introduzione delle subroutines� porzioni di codice riutilizzabile attraverso il

Conditional Control Transfer

� librerie di codice per usi comuni

� Rappresentazione binaria� efficienza ed affidabilità

� Memoria di massa e memoria centrale

Alcune considerazioni su ..L’EDVAC e la sua architettura

30

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

I Generazione: le macchine commerciali

� UNIVAC I� Nastri magnetici, stampanti

� 750,000$

� 185,000$ per una stampante

� Usato dal Census Bureau

� Elezioni USA 1952:� UNIVAC predice la vittoria di

Eisenhower su Stevenson nelleproiezioni, contro le analisi diopinione.

Page 6: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

6

31

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

I Generazione: le macchine commerciali

� IBM 701(1953)� 19 esemplari prodotti in 3

anni

� IBM 650 (1954)� 450 esemplari in 1 anno

� tamburi magnetici permemorizzazione di massa

32

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

II Generazione: i transistor

• 1948: la AT&T inventa iltransistor

• 1956: MIT TX-0 primo computercon transistor

• Primi Sistemi Operativi

• Primi Linguaggi diprogrammazione ad alto livello– ALGOL, COBOL,FORTRAN

33

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Alcune considerazioni su..I linguaggi di programmazione

• I linguaggi di programmazione:– non legati alla architettura della macchina

• astrazione del processo• portabilità

– di uso più semplice per il programmatore– necessità di traduzione (compilazione)– linguaggi orientati alle applicazioni

• Sistemi operativi: necessari per– l’accesso alle risorse della macchina– l’uso efficiente delle risorse

34

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

III Generazione: i circuiti integrati

• 1967: i primi circuiti integratirealizzano su un unico chipcentinaia di transistor

• Fairchild Corporation:– unità aritmetica a 8 bit

– un accumulatore

35

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

III Generazione: i circuiti integrati

• Sistemi operativi: multitasking

• IBM 360: famiglia di sistemi– 6 computer e 40 periferiche

compatibili

– upgrade Software Hardware

• Nasce la Digital EquipmentCorporation con i primi mini :– PDP-8 e PDP-11

36

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

IV Generazione: i circuiti integrati VLSI

• Very Large Scale Integration (VLSI)

• Migliaia di transistor su chip (anni 70)

• IBM System/370

• VAX 11/780 DEC

• Cray X/MP (supercomputer)

• Sistemi Operativi:– VMS di Digital

– UNIX di AT&T, BELL Lab.

Page 7: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

7

37

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

L’era dei Microcomputer (1)

• (1969) Intel realizza il 4004:– primo chip a racchiudere un

processore intero– progettato da Federico Faggin

(con altri)– 2250 transistor– parola a 4 bit– 60,000 operazioni al secondo– progenitore di 8008, 8080,

8086 e 8088

38

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

L’era dei Microcomputer (2)

• Mentre la Intel realizza il 4004:– La Motorola realizza il 6800,

– La Zylog lo Z80

• Steve Jobs costruisce l’Apple I– (assemblato nel garage) è il primo PC

• La DEC crea il CP/M, sistema operativoper microcomputer basati su 8080 e Z80

39

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

L’era dei Microcomputer (3)

• 1981: IBM crea il suo Personal Computerbasato su 8088.

• Commissiona il sistema operativo ad unapiccola società: la Microsoft che crea MS-DOS.

• Il PC IBM si impone sul mercato che siconverte agli “IBM compatibili”

• L’unico concorrente rimane la Apple

40

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

L’era dei Microcomputer (4)

• 1984: la Apple lancia il Macintosh– basato su Motorola 68000

– innovativa ed intuitiva interfaccia grafica

– la nuova filosofia:• “User Friendly”

• WYSIWYG: “What you see is what you get”

• 1987: la Microsoft– leader a causa dell’uso universale di MS.-DOS

– risponde con Windows 1.0, 2.0, 3.0

41

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

L’era dell’Informatica Distribuita

• Le motivazioni:– i mainframe sono costosi da mantenere

– potenza di calcolo disponibile su scrivania

– evoluzione delle reti locali e geografiche

• La rivoluzione:– da un mainframe con terminali “stupidi”

– ad una rete di PC collegati ad un minicomputer

Il modello Client-Server

42

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

L’era di Internet

• Rete mondiale che connette milioni dicalcolatori

• Servizi:– e-mail (posta elettronica)

– World Wide Web: sistema ipertestuale per ilreperimento di informazioni

• Integrazione tra la rete ed il WWW ed ilpersonal computer

Page 8: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

8

43

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Una Classificazione di Elaboratori

Personal Digital Assistant

Network Computer

Notebook

Personal Computer

Workstation

Mini-computer

Mainframe

Supercomputer

DimensioneCapacità

Costo

Facilità d’usoGenericità

44

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Personal Digital Assistant (PDA)

� schermo da 3 a 6 pollici; peso ~200g� senza tastiera (palmari) o con tastiera mini

(hand-held)� alimentazione a batteria� Sistema Operativo ridotto� input tramite penna e riconoscimento scrittura� interfaccia a raggi infrarossi per collegamento� Esempi:

� Apple Newton, PalmPilot, Psion, Sharp 5800,Philips Velo1, etc.

45

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Network Computers

• Recente introduzione

• Capacità di calcolo simili ad un PersonalComputer

• scarica il proprio Sistema Operativo da rete– a seconda del S.O. caricato assumono

funzionalità diverse

• utile per piattaforma di calcolo eterogeneo

46

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Computer Notebook

� Dimensioni di un agenda formato A4

� Peso da 1 Kg fino a 4-5 Kg.

� Alimentazione a rete ed a batteria(ricaricabile)

� Prestazioni simili ad un Personal Computerma ad un costo più elevato.

� Dotati di dispositivi interscambiabili

� Esempi:� Apple Powerbook, Toshiba Notebook, etc.

47

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Personal Computer

� Detto anche microcomputer

� “nato” nel 1981 dalla IBM

� anche se 77 la Commodore presentava il PET...

� architettura a processore unico

� oggetto della evoluzione più rapida

� Due piattaforme:

� Wintel (WIN dows + InTEL )

� Apple PowerPC48

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Workstation

� Stazioni di lavoro individuali dall’elevatacapacità di calcolo;

� Potenti processori dedicati per la grafica

� Utilizzati nella:

� progettazione CAD (Computer AidedDesign)

� grafica computerizzata (video)

� simulazione di processi complessi

Page 9: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

9

49

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Mini e Supermini Computer

� Calcolatori dipartimentali

� Supportano decine di utenti ed utenze coninteressi specifici

� Potenze di calcolo elevate

� Ambiente multi-utente

� Software Applicativo particolare

� Dotati (spesso) di multiprocessore

50

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

I “grossi calibri”...

� Mainframe� Supportano centinaia di utenti

� Elevata capacità di gestione dati

� Costo e gestione elevata e complessa.

� Supercomputer� Estremamente veloci (multiprocessore)

� Alto grado di parallelismo interno

� Usati in campo scientifico o tecnico per:� elaborazione di dati atmosferici inviati da satellite

� simulazione di voli spaziali, etc…

51

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Le Componenti di un Calcolatore

• Hardware (HW):– il calcolatore (circuiti elettronici)

• Software (SW):– programmi (istruzioni per l’hardware)

• Firmware– Componenti HW pre-programmate per

realizzare specifiche funzionalità.

52

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Architettura Generale di un Elaboratore

Bus di Interconnessione

Processore Memoria Centrale

Controller dispositivi I/Oe comunicazione

CabinetMe

mor

ie d

i Ma

ssa

Memorie di massa esterne

Dispositivi di comunicazione

Video Stampante

53

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Il Processore

Bus di Interconnessione

Processore Memoria Centrale

Controller dispositivi I/Oe comunicazione

CabinetMe

mor

ie d

i Ma

ssa

Memorie di massa esterne

Dispositivi di comunicazione

Video Stampante

54

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Il Processore

• Central Processing Unit (CPU)

• Effettua la computazione:– controllata dalle istruzioni prelevate dalla

memoria

• Circuiti integrati– integra (milioni di) transistor

Page 10: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

10

55

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Un confronto: numero di transistors

19 81 19 82 19 85

19 89

19 93

19 97

19 98

0

1 .0 00 .00 0

2 .0 00 .00 0

3 .0 00 .00 0

4 .0 00 .00 0

5 .0 00 .00 0

6 .0 00 .00 0

7 .0 00 .00 0

8 .0 00 .00 0

80

86

80

28

6

80

38

6

80

48

6

Pe

ntiu

m

P.

MM

X

Pe

ntiu

m I

I

56

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La Memoria Centrale

Bus di Interconnessione

Processore Memoria Centrale

Controller dispositivi I/Oe comunicazione

CabinetMe

mor

ie d

i Ma

ssa

Memorie di massa esterne

Dispositivi di comunicazione

Video Stampante

57

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La Memoria Centrale

• Contiene:– dati

– programmi

• Random Access Memory (RAM)

• Memoria volatile– necessita di alimentazione elettrica

58

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Un confronto di memorie: la dimensione

6 4K b 2 56 K b 1 M b 4 M b1 6M b

6 4M b

2 56 M b

0

5 00 00

1 00 00 0

1 50 00 0

2 00 00 0

2 50 00 0

3 00 00 0

1 98 4 1 98 5 1 98 6 1 98 8 1 98 9 1 99 2 1 99 4

Dimensione (#transistors)

59

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Un confronto di memorie: la velocità

150

120

7060

50 5040

0

20

40

60

80

100

120

140

160

1984 1985 1986 1988 1989 1992 1994

Velocità (in ns)

60

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La Memoria di Massa

Bus di Interconnessione

Processore Memoria Centrale

Controller dispositivi I/Oe comunicazione

CabinetMe

mor

ie d

i Ma

ssa

Memorie di massa esterne

Dispositivi di comunicazione

Video Stampante

Page 11: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

11

61

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La Memoria di Massa

• Contengono in maniera permanente:– dati

– programmi

• Memoria secondaria (Secondary Storage)

• Dischi magnetici:– interni/esterni

– rigidi (hard disk)

– floppy disk (removibili)

62

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

I dispositivi di Input/Output

Bus di Interconnessione

Processore Memoria Centrale

Controller dispositivi I/Oe comunicazione

CabinetMe

mor

ie d

i Ma

ssa

Memorie di massa esterne

Dispositivi di comunicazione

Video Stampante

63

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

I dispositivi di Input/Output

• Permettono la comunicazione con utenti:– per inserire di dati/programmi

– per fornire risultati

– (in generale) per il controllo

• La postazione di lavoro:– monitor, tastiera, mouse

• Stampanti

64

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Altri elementi...

Bus di Interconnessione

Processore Memoria Centrale

Controller dispositivi I/Oe comunicazione

CabinetMe

mor

ie d

i Ma

ssa

Memorie di massa esterne

Dispositivi di comunicazione

Video Stampante

65

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Altri elementi...

• Bus di comunicazione– permette la comunicazione tra i componenti

– facilita la connessione (standard)

• Dispositivi di comunicazione:– verso rete geografica (modem)

– verso rete locale (scheda di rete)

66

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La creazione di un programma

• Un processo composto di fasi diverse

• Necessario:– Identificare il problema

– Conoscere la soluzione

– Implementare ed eseguire la soluzione

• Ciclo di vita del software– debugging

– maintenance

Page 12: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

12

67

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Il processo: una vista informale

Analisi

Stesura di unadescrizione

Interpretazione

Esecuzione

Soluzione

Descrizione

Descrizioneinterpretata

Soluzione

Problema

68

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Il processo in dettaglio

Analisi

Formalizzazione

Programmazione

Compilazione

Soluzioneinformale

Soluzione formale

Programma in linguaggioad alto livello

Programma inLinguaggioMacchina

ProblemaAlgoritmo

Esecuzione

69

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Gli Algoritmi

• Algoritmo:Sequenza finita di istruzioni che, se eseguite,

svolgono un particolare compito.

• Caratteristiche di un algoritmo:– non ambiguità– effettivo (esecuzioni eseguibili)– finito (terminazione)

• Studio della complessità di un algoritmo

70

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Il processo in dettaglio

Analisi

Formalizzazione

Programmazione

Compilazione

Soluzioneinformale

Soluzione formale

Programma in linguaggioad alto livello

Programma inLinguaggioMacchina

Problema

Esecuzione

Codifica

71

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Codifica di un algoritmo

• Trasformazione della sequenza di passi(astratti) in un linguaggio diprogrammazione ad alto livello

• Linguaggi ad alto livello:– indipendenti dalla piattaforma (quasi…)

– Esempi:• Fortran, Pascal, Basic, Cobol, C, C++, Java etc.

72

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Il processo in dettaglio

Analisi

Formalizzazione

Programmazione

Compilazione

Soluzioneinformale

Soluzione formale

Programma in linguaggioad alto livello

Programma inLinguaggioMacchina

Problema

Esecuzione

Page 13: Laboratorio di Informatica Ivitsca/LAB/2000-2001/lezione01.pdf · 2000-10-04 · Laboratorio di Informatica I 6 31 Laboratorio di Informatica 2000-2001 Vi.ttorio Scarano I Generazione:

Laboratorio di Informatica I

13

73

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

La compilazione

• Traduce il linguaggio ad alto livello in linguaggiomacchina (compreso dal processore)

• Effettuata dal compilatore e dal linker

file sorgente

fileoggetto

librerie

file eseguibile

compilatore

linker

74

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano

Una gerarchia di “Macchine” logiche

Software ApplicativoLinguaggi ad Alto livello

Hardware/FirmwareComponenti Elettronici, Collegamenti fisici

Software di BaseSistema Operativo, Utilità, Software Comunicazione

Utilizzatori:

75

Lab

ora

torio

di I

nfo

rma

tica

200

0-2

00

1

Vi.t

torio

Sca

rano Calcolatori Programmabili

Una review...

Input - Elaborazione - Output

Programmazione e debugging

Rappresentazione binaria

Memorizzazione comune di dati e programmi

Linguaggi di programmazione e sistemi operativi