Laboratorio di Informatica



Похожие документы
LEZIONE 2 Il processore e la memoria centrale

Architettura hardware

C. P. U. MEMORIA CENTRALE

Esame di INFORMATICA

CPU. Maurizio Palesi

Architettura del calcolatore

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

I componenti di un Sistema di elaborazione. CPU (central process unit)

Struttura del calcolatore

Lezione 3: Architettura del calcolatore

Introduzione all'architettura dei Calcolatori

Architettura dei calcolatori I parte Introduzione, CPU

ARCHITETTURA DEL CALCOLATORE

Laboratorio di Informatica

- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN

Parte II.2 Elaboratore

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

Calcolo numerico e programmazione Architettura dei calcolatori

Vari tipi di computer

Il Processore: i registri

Dispensa di Informatica I.1

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

Unità di Misura Corso di Abilità Informatiche Laurea in Fisica. prof. Corrado Santoro

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

1.4b: Hardware. (Memoria Centrale)

INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO

Architettura di un calcolatore: introduzione

ARCHITETTURA DELL ELABORATORE

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

Architettura di un computer

Fondamenti di Informatica INFORMATICA ED UNITA DI MISURA

Contenuti. Visione macroscopica Hardware Software. 1 Introduzione. 2 Rappresentazione dell informazione. 3 Architettura del calcolatore

La memoria centrale (RAM)

Corso di Calcolatori Elettronici I A.A Il processore Lezione 18

Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA

Architettura dei calcolatori II parte Memorie

Concetti fondamentali della Tecnologia Dell informazione Parte prima

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

Architettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica. prof. ing. Corrado Santoro

Architettura di un calcolatore

Informatica - A.A. 2010/11

NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE

Il processore - CPU (CENTRAL PROCESSING UNIT)

L Unità Centrale di Elaborazione

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

Informatica per la comunicazione" - lezione 7 -

Organizzazione della memoria

Fondamenti di informatica: un po di storia

MODULO 01. Come è fatto un computer

L architettura del calcolatore (Prima parte)

Sistemi operativi. Esempi di sistemi operativi

Introduzione all uso del Personal Computer

INFORMATICA. Il Sistema Operativo. di Roberta Molinari

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

Il processore - CPU. PDF created with pdffactory trial version

CONCETTI BASE dell'informatica Cose che non si possono non sapere!

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

MODULO 01. Come è fatto un computer

Laboratorio di Informatica

03 L architettura del computer e la CPU (parte 2) Dott.ssa Ramona Congiu

ARCHITETTURA DI UN PERSONAL COMPUTER

LABORATORIO DI SISTEMI

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Architettura dei computer

Architettura del computer (C.Busso)

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

Organizzazione della memoria principale Il bus

Corso di Sistemi di Elaborazione delle informazioni

Informazione analogica e digitale

Tecnologia dell Informazione

Anatomia e fisiologia del computer: l architettura del calcolatore

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Memoria Secondaria o di Massa

La macchina di Von Neumann. Archite(ura di un calcolatore. L unità di elaborazione (CPU) Sequenza di le(ura. Il bus di sistema

4 3 4 = 4 x x x 10 0 aaa

CALCOLATORI ELETTRONICI

UNITÀ DI ELABORAZIONE (CPU) UNITÀ DI ELABORAZIONE (CPU) Opcode OpCode Operazione

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai

Il software. la parte contro cui si può solo imprecare. Il software

Corsi Speciali Abilitanti Indirizzo 2: Fisico-Matematico Modulo Didattico: Elementi di Informatica Classi: 48/A TEST D INGRESSO

Il calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi

Componenti di base di un computer

Ing. Paolo Domenici PREFAZIONE

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

Unità Periferiche. Rete Di Controllo

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU

PLC Programmable Logic Controller

23/02/2014. Dalla scorsa lezione. La Macchina di Von Neumann. Uomo come esecutore di algoritmi

processore case Le casse acustiche

Conoscere il computer ed il software di base. Concetti base dell ICT TIPI DI COMPUTER. Prof. Francesco Procida

Транскрипт:

per chimica industriale e chimica applicata e ambientale LEZIONE 4 La CPU e l esecuzione dei programmi 1 Nelle lezioni precedenti abbiamo detto che Un computer è costituito da 3 principali componenti: Il processore La memoria Le periferiche Interconnesse attraverso il bus 2 1

Struttura logica processore (CPU: Central Processing Unit) memoria centrale ad accesso diretto (RAM: Random Access Memory) Canale di comunicazione (bus) Periferiche 3 Struttura fisica RAM CPU bus Interfccia alle periferiche 4 2

PROGRAMMI e LINGUAGGIO MACCHINA 5 Programmi I programmi sono sequenze di istruzioni. I programmi eseguibili da un computer devono essere scritti usando un linguaggio (di programmazione) che il computer è in grado di comprendere. 6 3

Computer = macchina che svolge rapidamente operazioni elementari Programma = insieme di istruzioni che indicano come svolgere operazioni complesse su dei dati attraverso successioni di operazioni elementari specificate in un linguaggio comprensibile dal computer. Dato = informazione da elaborare rappresentata in un formato che consenta al programma di operare su di essa 7 LA CPU 8 4

Il processore - chip Il processore è l unità di elaborazione centrale (CPU: central processing unit) del computer. Oggi le CPU sono costituite da circuiti che contengono milioni di microscopici interruttori acceso/spento (i transistor) collegati tra loro da sottilissimi fili. I circuiti vengono stampati su una sottile lamina di silicio. Il chip che corrisponde a una CPU ha una superficie dell ordine dei mm 2. 9 Il processore - chip Pertanto oggi si parla di microprocessore costituito da circuiti integrati: milioni di elementi tra loro collegati contenuti in una superficie quasi microscopica. 10 5

Il processore 11 Il linguaggio macchina Il processore è in grado di riconoscere (e quindi di eseguire) solo programmi scritti in un proprio linguaggio (linguaggio macchina) Ogni modello di processore (es: Intel, Pentium, Motorola, PowerPC) ha un proprio linguaggio macchina diverso da quello degli altri processori 12 6

Il processore - clock In corrispondenza di ogni istruzione espressa nel linguaggio macchina il processore svolge una serie di operazioni elementari (il ciclo della macchina). Il numero operazioni elementari svolte per ogni istruzione dipende dal tipo di processore (tra le 7 e le 10). 13 Il processore - clock Il tempo impiegato dal processore per eseguire una operazione elementare è detto durata del ciclo di clock Il numero di operazioni elementari svolte dal processore in una unità di tempo (cioè il numero di cicli di clock al secondo) è la frequenza di clock 14 7

Il processore - clock Frequenza di clock = Quindi: 1 Durata di un ciclo di clock E un indicatore della velocità del processore nell eseguire i programmi. Oggi si misura in Mhz (MegaHertz). 1 Mhz = 1 milione di cicli al secondo. 15 Il processore - clock Dati due processori con lo stesso linguaggio macchina sarà più veloce quello con frequenza di clock maggiore Non è possibile fare un confronto tra processori con linguaggi macchina diversi 16 8

Il processore - clock Esempio Computer A Clock : 500MHz Linguaggio macchina richiede 10 operazioni elementari per istruzione Computer B Clock : 400MHz Linguaggio macchina richiede 6 operazioni elementari per istruzione Devono eseguire un programma di 100M istruzioni macchina A impiegherà 2 sec. B impiegherà 1,5 sec. 17 Il processore - registri Per eseguire le operazioni elementari il processore ha bisogno di utilizzare delle memorie (di piccole dimensioni) alle quale accedere in modo veloce (es: una zona che contiene l indirizzo dell istruzione da eseguire, una per i dati su cui l istruzione opera) Queste memorie, che fisicamente sono contenute nel chip, sono chiamate registri del processore 18 9

Memoria processore registro registro registro Interfccia alle periferiche 19 Sistemi con più processori I co-processori A seconda del tipo di uso che l utente fa del computer, per velocizzarne le prestazioni si possono aggiungere dei co-processori. Questi sono processori specializzati nell esecuzione di compiti specifici (es: gestione dello schermo) che operano sotto il controllo della CPU. 20 10

Memoria processore registro registro registro co-processore Interfccia alle periferiche 21 Sistemi con più processori Sistemi paralleli I sistemi paralleli sono sistemi con più CPU che operano in modo indipendente e condividono le altre risorse del computer. Il coordinamento dei diversi processori è demandato al sistema operativo. La velocità del computer risulta aumentata ma non moltiplicata, perché non è trascurabile il tempo che il sistema operativo deve dedicare al coordinamento dei processori 22 11

Memoria Interfccia alle periferiche processore processore registro registro registro registro registro registro 23 LA MEMORIA 24 12

La memoria La memoria è la componente che svolge la funzione di magazzino delle informazioni sulle quali opera il processore L unità di informazione minima è il bit (binary unit). Consideriamola come una casella nella quale possiamo scrivere il simbolo 0 oppure il simbolo 1. 25 La memoria-il bit Avendo a disposizione un solo bit si possono rappresentare due elementi diversi: Si assegna al primo elemento la codifica 0 e al secondo la codifica 1 Avendo a disposizione due bit si possono rappresentare quattro elementi diversi, assegnando a ciascuno una codifica diversa: 00, 01, 10, 11 26 13

La memoria-il bit Avendo a disposizione tre bit si possono rappresentare otto elementi diversi.. Avendo a disposizione n bit si possono rappresentare 2 n elementi diversi. 27 La memoria-il byte Agli albori dell informatica c era l esigenza di rappresentare i caratteri stampabili (le lettere dell alfabeto, le cifre da 0 a 9, lo spazio, la virgola etc ) per un numero totale di caratteri compreso tra 90 e 120. Per poter rappresentare 128 elementi diversi servono almeno 7 bit (2 7 =128). E bene avere a disposizione un bit supplementare poter effettuare controlli sulla sequenza 28 14

La memoria-il byte Quindi per rappresentare i caratteri stampabili è necessaria una sequenza di 7+1=8 bit. Una sequenza di 8 bit è detta byte, ed è diventata una unità di misura della occupazione di memoria. 29 La memoria-il byte BYTE 1 0 0 1 0 1 1 1 = b BIT 30 15

Le celle di memoria 31 Le celle di memoria Ogni cella di memoria contiene un byte, ed è contraddistinta da un indirizzo Volendo scrivere o leggere un dato dalla memoria il processore deve sempre specificare l indirizzo della cella alla quale vuole accedere 32 16

La memoria-unità di misura Le dimensioni di una memoria si misurano in: Kbyte (kilo byte)= 2 10 byte = 1024 byte 10 3 byte Mbyte (Mega byte)= 2 10 Kbyte = 1024 Kbyte= 2 20 byte 10 6 byte Gbyte (Giga byte)= 2 10 Mbyte =1024 Mbyte = 2 30 byte 10 9 byte Tbyte (Tera byte)= 2 10 Gbyte =1024 Gbyte = 2 40 byte 10 12 byte 33 L ESECUZIONE DEI PROGRAMMI 34 17

Quando chiediamo al computer di eseguire un programma accade che: Il programma (già scritto in linguaggio macchina) viene trasferito nella memoria di lavoro (la memoria centrale), alla quale il processore può accedere velocemente Per ogni istruzione del programma la CPU esegue tre tipi di operazioni, che costituiscono il ciclo della macchina: 35 Ciclo della macchina Lettura (fetch) il processore reperisce dalla memoria l istruzione da eseguire Decodifica (decode) il processore identifica l istruzione da eseguire Esecuzione (exec) il processore esegue le operazioni corrispondenti all istruzione 36 18

L esecuzione dei programmi La memoria centrale è l area di lavoro: contiene i programmi in esecuzione in quel momento ed i relativi dati in particolare, contiene sempre la parte del sistema operativo che governa l utilizzo delle risorse di calcolo L unità fisica che esegue i programmi in memoria centrale è la CPU 37 L esecuzione dei programmi Si dice che un programma ha il controllo della CPU se la CPU sta eseguendo quel programma; impropriamente, diremo che: un programma P svolge un compito per dire che la CPU svolge quel compito sotto il controllo di P 38 19

L esecuzione dei programmi del Sistema Operativo (SO) Quando il calcolatore è in attesa di comandi, il controllo della CPU è detenuto dal SO, che: gestisce l interfaccia utente accetta i comandi dell utente avvia (lancia) l esecuzione dei programmi applicativi 39 L esecuzione di un programma applicativo La CPU è sotto il controllo del SO, che gestisce l interfaccia utente L utente chiede, tramite l interfaccia, di eseguire, ad esempio, WORD La CPU, sotto il controllo del SO, riconosce la richiesta e carica (trasferisce) WORD in memoria centrale inizia ad eseguire WORD L esecuzione di WORD termina e la CPU riprende ad eseguire il SO; nuovamente sotto il controllo del SO, la CPU è pronta ad accettare nuovi comandi 40 20

Ma la situazione è più complessa In realtà il SO gestisce l esecuzione di più programmi e più utenti, per cui si hanno più processi e il SO concede la CPU a ciascuno di essi, per piccoli intervalli di tempo, a rotazione o secondo altre politiche tutto ciò è trasparente all utente e non ce ne occuperemo in questo corso 41 Funzionamento della CPU RI (Registro Istruzione) registri Memoria centrale PC (Program counter) processore registro dati 1 registro dati k CPU 42 21

La nostra CPU finta Una CPU può leggere/scrivere il contenuto di una sola cella di memoria alla volta, specificandone l indirizzo; contiene inoltre dei registri, come area di lavoro veloce la nostra CPU finta contiene i seguenti registri il registro PC (Program counter) che contiene l indirizzo dell istruzione da reperire il registro RI, (Registro istruzioni) che contiene l istruzione da decodificare ed eseguire 4 registri dati il ciclo di esecuzione, nelle sue fasi, avviene come segue 43 Ciclo della macchina La CPU esegue le istruzioni in memoria centrale ripetendo i seguenti passi (ciclo della macchina): 1) Lettura (fetch) reperisce dalla memoria centrale l istruzione da eseguire e la carica nel registro istruzioni RI 2) Decodifica (decode) riconosce l istruzione presente nel RI; 3) Esecuzione (exec) esegue le operazioni dettate da tale istruzione 4) Torna al passo 1) per la lettura della prossima istruzione 44 22

Esempio con una CPU finta, che usa la numerazione decimale La nostra CPU finta usa una memoria centrale indirizzata da 2 cifre decimali, cioè di 100 elementi Indirizzi da 00 a 99 00 01 02 03 04 05 06 013005 012006 112310 021006 999999 000120 000080 Celle di memoria di lunghezza 6 cifre decimali... 45 Quando inizio il reperimento il PC contiene l indirizzo dell istruzione da eseguire in quel momento In questo esempio è l istruzione di indirizzo 01 00 01 02 03 04 05 06 013005 012006 112310 021006 999999 000120 000080... PC 01 RI 46 013005 processore CPU registri 0 000000 1 000120 2 000000 3 000000 Nel reperimento: la CPU trasferisce l istruzione da eseguire (di indirizzo 01) nel RI e si ottiene: 23

che RI contiene l istruzione da eseguire 00 01 02 03 04 05 06 013005 012006 112310 021006 999999 000120 000080... PC 02 RI 012006 processore CPU Registri dati 0 000000 1 000120 2 000000 3 000000 il PC punta già alla prossima, di indirizzo 02 ha inizio la decodifica ed esecuzione dell istruzione in RI 47 Decodifica 01 2 0 06 trasferisci nel registro 2 il dato contenuto nella cella di memoria 06 00 01 02 03 04 05 06 011005 012006 112310 021006 999999 000120 000080... PC 02 RI 012006 processore CPU Registri dati 0 000000 1 000120 2 000000 3 000000 L esecuzione trasferisce 000080 nel registro 2 48 24

00 01 02 03 04 05 06 011005 012006 112310 021006 999999 000120 000080... PC 02 RI 012006 processore CPU Registri dati 0 000000 1 000120 2 000080 3 000000 Inizia un nuovo ciclo di esecuzione, che reperisce l istruzione puntata dal PC, ora quella di indirizzo 02, e così via 49 25