Lezione n.9. Introduzione al linguaggio macchina

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Lezione n.9. Introduzione al linguaggio macchina"

Transcript

1 Lezione n.9 Autore:Luca Orrù 1

2 Sommario Esecuzione delle istruzioni Architettura interna ed esterna Linguaggio assembler e modi d indirizzamento Consideriamo ora la singola istruzione e la scomponiamo nei passi principali. Passi elementari per l esecuzione di un istruzione: 1. AR:=PC Trasferimento del contenuto del PC in AR (Address Register) 2. DR:=M(AR) lettura dell istruzione dalla memoria. Questa operazione richiede due unità di tempo. 3. IR:=DR(OP): trasferisce il codice operativo nel registro istruzioni; PC:=PC+1: Incremento del Program Counter per predisporre la macchina ad eseguire l istruzione successiva; 4. decodifica dell istruzione Queste 4 operazioni implementano la fase di fetch Le operazioni specifiche di esecuzione sono invece: 5. AR:=DR(ADR): l indirizzo dell operando viene posto in AR 6. lettura degli operandi dalla memoria (2 unità di tempo) 7. svolgimento dell operazione (somma, and, or, scorrimento, etc). I primi 4 passi sono uguali per qualunque istruzione. I restanti passi variano da istruzione ad istruzione. Si noti come le operazioni di lettura e scrittura richiedono 2 unità di tempo. Il tempo per eseguire l operazione non è sempre uguale. In particolare, le operazioni di lettura e scrittura richiedono un tempo superiore perché fanno riferimento ad operazioni di lettura/scrittura in memoria e tipicamente gli accessi alla memoria richiedono più tempo rispetto alle operazioni riguardanti accessi a registri interni alla CPU. In totale l esecuzione dell istruzione più complessa, in questa semplice CPU, richiede 8 unità di tempo. Infatti, si richiedono 2 unità di tempo per svolgere le operazioni di lettura e scrittura. Questo significa che la lettura dell operando richiede 2 unità di tempo e la lettura dell istruzione richiede altre due unità di tempo, quindi 4 unità di tempo in totale. Ci sono poi altre 4 fasi, che richiedono ciascuna 1 unità di tempo per un totale di altre 4 unità di tempo che sommate alle 4 precedenti fanno 8 unità di tempo. Autore:Luca Orrù 2

3 Consideriamo ora le varie istruzioni e vediamo quali sono le operazioni svolte. LOAD X: legge il dato da M(X) e lo mette in AC LOAD X (fase di fetch) 1. AR:=PC (richiede 1 unità di tempo) 2. DR:=M(AR):Lettura in memoria dell istruzione da eseguire (2 unità di tempo) 3. PC:=PC+1; IR:=DR(OP) (carica il codice operativo dell istruzione nell Instruction Register); Decodifica del codice operativo (1 unità di tempo) Questi 3 passi costituiscono la fase di fetch dell istruzione Load. L ultimo passo della fase di fetch, pur essendo costituito da tre operazioni diverse, richiede una sola unità di tempo perché le tre operazioni possono essere svolte in parallelo in quanto interessano registri diversi. Fase di esecuzione: 4. AR:=DR(ADR) (1 unità di tempo): Dopo la fase di fetch in DR è presente l istruzione da eseguire che ha un campo Cod.Operativo e uno o più campi indirizzo. L operazione riporta in AR l indirizzo X del dato (operando) che si vuole caricare all interno della CPU, per predisporre l architettura alla successiva operazione di lettura in memoria; 5. DR:=M(AR): lettura in memoria (2 unità di tempo); carica il dato nel Data Register (DR) 6. AC:=DR (1 unità di tempo): il contenuto di DR viene caricato nell accumulatore. ADD(X) AC:=AC+DR (fase di fetch che è uguale per ciascuna istruzione) AR:=PC (1 unità di tempo) DR:=M(AR): lettura in memoria dell istruzione (2 unità di tempo) PC:=PC+1; IR:=DR(OP); Decodifica del codice operativo (1 unità di tempo) Fase di esecuzione: AR:=DR(ADR) (1 unità di tempo): legge l indirizzo X del dato e lo mette in AR DR:=M(AR) (2 unità di tempo): lettura in memoria, in pratica legge il dato dalla locazione di memoria specificata da AR AC:=AC+DR (1 unità di tempo): svolge l operazione di somma tra il dato contenuto in AC e il contenuto del registro dati e lo pone nell accumulatore. Autore:Luca Orrù 3

4 JUMP X ( istruzione di salto da un punto all altro di un programma PC:=X) Fase di fetch: 1. AR:=PC 2. DR:=M(AR): lettura in memoria 3. PC:=PC+1; IR:=DR(OP); Decodifica del codice operativo (1 unità di tempo). Per l istruzione JUMP l operazione PC:=PC+1 è inutile perché in questo caso viene caricato l indirizzo dell istruzione successiva nel PC, ma essendo un istruzione di salto condizionato non è detto che l istruzione da eseguire sia la successiva. Fase di esecuzione: 4. PC:=DR(ADR): carica nel PC l indirizzo dell istruzione successiva da eseguire Esecuzione istruzioni Dal diagramma di flusso di controllo, cioè dall elenco delle operazioni viste per ogni istruzione, si ricavano i segnali da attivare per ogni istruzione in ogni fase. Esempio: C3 (read): DR:=M(AR): quando C3=1 (segnale attivo), viene forzata la lettura in memoria; in pratica il dato posto nella locazione di memoria individuata dall indirizzo contenuto in AR viene trasferito in DR. L operazione di lettura viene eseguita in due occasioni. Nella fase F2 (secondo passo della fase di fetch), sempre e nella fase F6 in occasione delle istruzioni LOAD, ADD, e AND. Si può fare la stessa analisi per tutti gli altri segnali di controllo per vedere quando vengono attivate le singole operazioni. Farlo come esercizio. In generale ogni segnale di controllo è definito dalla seguente espressione: C = i ( Fj Im) j m Fj identifica la fase j; esempio: Fj=F6 e m=3 con I1=Load; I2=ADD;I3=AND Im somma istruzioni in cui il segnale di controllo, in quella fase, è attivato m Autore:Luca Orrù 4

5 Esempio C0(ADD X )AC:=AC+DR; C0 viene attivato nella fase F8 della ADDX Indichiamo il tutto con C0=F8(ADD) Altro esempio: C11(IR:=DR(OP)) C11=F4 sempre, cioè C11 è sempre attivato nella fase F4 (terzo passo della fase di fetch) Micro-operazioni necessarie per l esecuzione di un istruzione Supponendo che lo schema a blocchi seguente rappresenti l architettura di un processore, si elencano di seguito le operazioni necessarie per l esecuzione di alcune semplici istruzioni. Segnali di controllo... Decodificatore delle Istruzioni IR R 0... R n TEMP Bus della CPU PC MAR MDR Y Linee di indirizzo Linee di dato Bus della memoria Add Sub XOR... ALU CarryIn Z Ogni registro Ri connesso al bus possiede un interfaccia controllata da due segnali: Ri in che abilita il trasferimento del dato presente sul bus nel registro Ri (carica il valore presente sul bus in Ri) Ri out che abilita il trasferimento del contenuto del registro Ri sul bus o essendo il bus condiviso, per un corretto funzionamento del bus uno solo dei segnali Ri out è attivato alla volta Autore:Luca Orrù 5

6 Esempio di trasferimento dati: CALCOLATORI ELETTRONICI Si supponga di dover trasferire il contenuto del registro R1 nel registro R2. In tal caso si deve: Attivare R1 out che permette di trasferire il valore contenuto in R1 sul bus Attivare R2 in che permette di memorizzare il valore presente sul bus nel registro R2 Primo esempio di operazione Si vuole eseguire la seguente somma: ADD R3,R1,R2 che somma il contenuto di R1 al contenuto di R2 e pone il risultato in R3. Le operazioni da compiere e i segnali da attivare sono: Operazione MAR:=PC MDR:=M(MAR) IR:=MDR(OP); PC:=PC+1; decodifica dell istruzione Y:=R1 (carica R1 nell accumulatore Y) Z:=ADD R2, Y R3:=Z Fase di fetch Segnali di controllo attivati PC out, MAR in Read (segnale di controllo per leggere dalla memoria); MDRin MDR out, IR in, PC in Fase di esecuzione Il codice operativo presente in IR viene decodificato R1 out trasferisce il contenuto di R1 sul bus; Y in carica il contenuto del bus nel registro Y; R2 out trasferisce il contenuto di R2 sul bus; ADD; permette di sommare il contenuto del bus al contenuto di Y Y out Z in permette di caricare la somma nel registro Z Z out, trasferisce il contenuto di Z sul bus; R3 in carica il contenuto del bus in R3 Autore:Luca Orrù 6

7 Secondo esempio di operazione Si vuole eseguire l istruzione ADD (R3), R1 che somma al contenuto del registro R1, il contenuto della cella di memoria il cui indirizzo è posto in R3 e mette il risultato in R1. Operazione MAR:=PC MDR:=M(MAR) IR:=MDR(OP); PC:=PC+1; decodifica dell istruzione MAR:=R3 (carica l indirizzo presente in R3 nell Address Register) MDR:=M(MAR) Y:=R1 Z:=ADD(Y,MDR) R1:=Z Fase di fetch Segnali di controllo attivati PC out, MAR in Read (segnale di controllo per leggere dalla memoria); MDRin MDR out, IR in,pc in Fase di esecuzione Decodifica del codice operativo presente in IR R3 out trasferisce il contenuto di R3 sul bus; MAR in carica il contenuto del bus nel registro MAR; Read lettura dalla memoria; MARout; MDRin R1 out trasferisce il contenuto di R1 sul bus Y in carica Y con il dato presente sul bus MDRout carica il contenuto del MDR (che è il valore di R3) sul bus; Yout carica il valore di Y nella ALU: ADD attiva l operazione di somma tra il contenuto de bus e il contenuto di Y; Zin carica Z con la somma tra MDR e Y Z out trasferisce il contenuto di Z sul bus; R1 in carica R1 con il dato presente sul bus Autore:Luca Orrù 7

8 Terzo esempio di operazione: Si vuole eseguire l istruzione JMP lab che esegue il salto all istruzione posta all indirizzo lab Operazione MAR:=PC MDR:=M(MAR) IR:=MDR(OP); PC:=PC+1; decodifica dell istruzione MAR:=PC; MDR:=M(MAR) PC:=MDR Fase di fetch Segnali di controllo attivati PC out, MAR in Read (segnale di controllo per leggere dalla memoria); MARout; MDRin MDR out, IR in, PC in Fase di esecuzione Decodifica del codice operativo presente in IR PC out ; MAR in Read (segnale di controllo per leggere in memoria); MAR out ; MDR in MDR out ; PC in carica l indirizzo LAB presente sul bus, nel PC; Esempio di progetto di architettura di controllo START CLOCK Generatore di fasi modulo 8 F1 F2 F3 F8 LOAD Decodifica Istruzioni STORE ADD Circuito di controllo AND C1 C2 C3 C4 Cn IR Segnali di controllo Registro istruzioni che immagazzina il codice operativo dell istruzione Autore:Luca Orrù 8

9 Il generatore di fasi genera 8 fasi perché 8 sono le fasi di un istruzione (4 unità di tempo nella fase di fetch e 4 nella fase di esecuzione). Secondo l operazione da eseguire, in uscita dal blocco decodifica istruzioni ci sarà un 1 in corrispondenza dell istruzione da eseguire. Se, per esempio, viene decodificata la LOAD, sarà posta a livello logico alto (1 logico) la linea LOAD e tutte le altre linee saranno a livello logico 0. Il circuito di controllo genera i segnali di controllo in funzione delle fasi e delle operazioni da eseguire che riceverà in input. Abbiamo visto la semplice architettura RTL di una CPU e le varie operazioni che compongono ogni istruzione. Vediamo ora quali sono e quali possono essere le istruzioni che la CPU può eseguire. Introduciamo prima alcuni concetti fondamentali. Architettura interna ed esterna Architettura interna: struttura interna della CPU. Migliore compromesso possibile tra prestazioni e costi. Il vincolo è la tecnologia. In pratica, a partire dalla tecnologia disponibile si cerca di realizzare una CPU con struttura interna che faccia riferimento ad un compromesso fra costi e prestazioni. Architettura esterna: identifica come il processore è visto da chi lo deve programmare. Insieme delle istruzioni, dei registri, dei modi d indirizzamento, cioè i meccanismi d accesso ai dati, e dei tipi di dato ammessi dalle istruzioni. Per tipo di dato s intende se un operazione/istruzione può essere eseguita sui dati interi, reali etc. Si possono avere CPU con architetture esterne equivalenti e questo deve essere rispettato in modo che CPU diverse possano eseguire gli stessi programmi. L architettura interna può essere invece diversa, perché la tecnologia è per esempio cambiata oppure perché i progettisti sono diversi. L architettura interna non fa altro che implementare le funzioni richieste e questa implementazione può essere diversa. Il collegamento tra le architetture interna ed esterna Attraverso livelli d interpretazione si realizzano le funzioni definite all esterno I passi usati per effettuare le fasi d interpretazione sono: o Il linguaggio macchina ( o assembler) che definisce le funzioni sull architettura esterna. o Questo linguaggio macchina viene poi tradotto in linguaggio di microprogramma (segnali di controllo) o Il linguaggio di microprogramma viene tradotto in comandi diretti alla parte operativa. Autore:Luca Orrù 9

10 Semplificando possiamo dire che: Il linguaggio assembler permette di definire le istruzioni del programma in un codice mnemonico (es. ADD, MOVE, LOAD, STORE). Il programma in linguaggio assembler viene poi tradotto in linguaggio macchina (sequenza di 0 e 1) attraverso l uso di un programma specifico chiamato assemblatore, che è a sua volta memorizzato come una sequenza di istruzioni macchina (sequenza di 0 e 1) nella memoria principale del calcolatore. Non appena il programma scritto dal programmatore viene eseguito, il programma assemblatore lo converte nel corrispondente programma in linguaggio macchina costituito da sequenze di cifre binarie che specificano le varie istruzioni. Il programma dell utente è detto programma sorgente, mentre il programma in linguaggio macchina è chiamato programma oggetto. Il programma assemblatore oltre che tradurre le istruzioni in codice macchina, ha il compito di rimuovere i commenti e associare ogni variabile del programma sorgente ad una determinata locazione di memoria. Una volta che il programma sorgente è stato convertito in programma oggetto dal programma assemblatore intervengono altri due programmi: Il linker che crea il file eseguibile a partire da uno o più file oggetto. Il file eseguibile creato dal linker risiede su disco e quindi per poter essere eseguito deve essere caricato in memoria. Il loader, che fa parte del sistema operativo, ha il compito di caricare il codice eseguibile residente su disco, in memoria. Il loader deve conoscere la lunghezza del programma e l indirizzo di memoria a partire dal quale verrà memorizzato il programma stesso. Queste informazioni vengono passate dal programma assemblatore, che pone tali informazioni in un blocco d intestazione a cui si da il nome di header. Linguaggio macchina (assembler) di una CPU Definisce le risorse disponibili e la loro utilizzazione Definisce inoltre le operazioni possibili La maggior parte delle istruzioni assembler è del tipo seguente: X1:=f(X1,X2,X3,.Xn) con n=1 o n=2 o raramente n=3 Questa istruzione trasferisce nel registro X1 il risultato della funzione f applicata ai registri da X1 a Xn. La funzione ricorda quella del comportamento dell architettura RTL. In quel caso però, X1, X2,..Xn erano elementi fisici (registri) dove venivano trasferiti i dati. In questo caso invece stiamo parlando di architettura esterna e non interna. Siamo ad un livello di astrazione superiore, ciò significa che X1,X2,Xn possono essere viste come variabili. E probabile, anzi è sicuro, che questi registri abbiano una loro implementazione fisica. Questi registri ora saranno quelli visibili/disponibili dall architettura esterna. Autore:Luca Orrù 10

11 Funzioni complesse sono realizzate sfruttando i livelli d interpretazione senza modificare l architettura interna, ma usando parti semplici dell architettura interna. C è una corrente di pensiero che dice che le funzioni a livello macchina debbano essere molto semplici. Ogni istruzione in linguaggio macchina è definita da: Un codice macchina o codice orientato alla macchina. Esempio: è un codice memorizzato all interno della memoria Un codice mnemonico o codice orientato al programmatore, che viene usato dal programmatore per programmare la CPU. Esempio: MOVE A,B significa A:=B in pratica sposta il contenuto di B in A, con A e B registri interni alla CPU. I due codici sono in corrispondenza 1 a 1. Questo significa che se abbiamo il codice mnemonico possiamo ricavare il codice macchina e viceversa perché c è una corrispondenza biunivoca tra essi. L insieme delle istruzioni espresse come codice mnemonico rappresenta il linguaggio assembler. Ogni istruzione in linguaggio macchina deve inoltre definire: L operazione da svolgere, per esempio ADD, AND, JUMP, OR. La posizione (indirizzo) dell istruzione successiva. Questa viene considerata spesso in modo implicito perché si presuppone che sia la successiva in memoria (PC:=PC+1). Con l istruzione di JUMP, questo non è vero e quindi in questo caso occorre specificare in modo esplicito l indirizzo dell istruzione successiva. Gli operandi coinvolti. Vediamo ora come vengono indicate queste informazioni all interno di una semplice istruzione. Autore:Luca Orrù 11

12 In generale è diviso in campi: CALCOLATORI ELETTRONICI Il codice macchina Codice operativo Primo operando Secondo operando Ennesimo operando L istruzione contiene un campo codice operativo e uno o più campi operandi Codice operativo: è il codice dell istruzione, in pratica il codice binario associato all istruzione. Esempio codice della ADD I campi operandi individuano gli operandi necessari per svolgere l istruzione o ADD A,B : operazione di ADD che coinvolge gli operandi A e B Il codice mnemonico rispecchia la struttura del codice macchina, quindi il codice mnemonico ADD verrà inserito nel campo codice operativo dopo essere stato codificato in codice macchina. Analogamente i due operandi A e B saranno inseriti nei due campi operandi dopo essere stati codificati in codice macchina. Numero di operandi di un istruzione A seconda del tipo di processore si possono avere istruzioni a: 0 operandi 1 operando 2 operandi 3 operandi Spesso si fa una classificazione dei processori proprio in base al numero di operandi. Minore è il numero di operandi, minore è il tempo richiesto per decodificare l istruzione e minore è anche la memoria richiesta per memorizzare il codice dell istruzione stessa. Questo vantaggio si paga in un maggior numero di istruzioni di trasferimento dati tra registri, istruzioni necessarie per eseguire una determinata operazione. Vediamo i vari casi uno per uno. Autore:Luca Orrù 12

13 Istruzione a 3 operandi In questo caso l istruzione contiene l indicazione dei due operandi sorgente e destinazione e dell operando risultato. Supponiamo di dover eseguire l operazione di somma C=A+B. In codice mnemonico questa può essere rappresentata dall istruzione ADD C,A,B che somma il contenuto del registro A al contenuto del registro B e pone il risultato nel registro C. Istruzione a 2 operandi L operazione C=A+B viene eseguita tramite l istruzione ADD A,B che somma il contenuto di A al contenuto di B e pone il risultato in A. In questo caso il registro sorgente A funge anche da registro risultato. Istruzione a 1 operando In questo caso il secondo operando e il risultato sono posti nel registro accumulatore L istruzione corrispondente all operazione C=A+B è ADD A che somma al contenuto di A il contenuto dell accumulatore e pone il risultato nell accumulatore. L accumulatore contiene inizialmente l operando B e alla fine contiene C. Le istruzioni base necessarie ad eseguire la somma sono le seguenti: 1. LOAD B che carica B nell accumulatore AC 2. ADD A che somma ad AC il contenuto di A e pone il risultato in AC 3. STORE C che trasferisce il contenuto dell accumulatore nel registro C Istruzione a 0 operandi Gli operandi necessari per eseguire una determinata operazione sono memorizzati nello stack. Lo stack è una parte della memoria che viene usata per memorizzare gli indirizzi di ritorno di una procedura, i parametri di una procedura, le variabili temporanee, etc. Lo stack ha una organizzazione di tipo LIFO (Last In First Output). Il primo elemento inserito è l ultimo ad essere estratto. Ogni istruzione mette i due operandi nello stack tramite due operazioni di PUSH e memorizza il risultato in un registro tramite un operazione di POP. Autore:Luca Orrù 13

14 Nel caso dell operazione C=A+B le istruzioni necessarie sono: 1. PUSH A inserisce l operando A nello stack 2. PUSH B inserisce l operando B nello stack 3. ADD esegue la somma tra i due operandi posti nello stack 4. POP C estrae il dato in cima allo stack, che corrisponde ad A+B, e lo pone nel registro C Schema grafico A+B B B B A A A A STACK dopo PUSH A STACK dopo PUSH B STACK dopo ADD STACK dopo POP C C A+B Nella prossima lezione si parlerà dei modi d accesso ai dati, vale a dire dei modi d indirizzamento. Autore:Luca Orrù 14

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale

Dettagli

Lezione 3: Architettura del calcolatore

Lezione 3: Architettura del calcolatore Lezione 3: Architettura del calcolatore Architettura di Von Neumann BUS, CPU e Memoria centrale Ciclo di esecuzione delle istruzioni Architettura del calcolatore Il calcolatore è: uno strumento programmabile

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni LEZIONE 2 (HARDWARE) a.a. 2011/2012 Francesco Fontanella Tre concetti Fondamentali Algoritmo; Automa (o anche macchina); Calcolo; 2 Calcolatore MACCHINA

Dettagli

che vengano generati nell ordine corretto i sistema (es., la memoria, l unità aritmetico-

che vengano generati nell ordine corretto i sistema (es., la memoria, l unità aritmetico- Principi di architetture dei calcolatori: l unità di controllo Mariagiovanna Sami L unità di controllo Per eseguire le istruzioni di macchina, occorre che vengano generati nell ordine corretto i segnali

Dettagli

Laboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008

Laboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008 Laboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 11/01/08 Nota Questi lucidi sono

Dettagli

CPU. Maurizio Palesi

CPU. Maurizio Palesi CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore

Dettagli

Ing. Paolo Domenici PREFAZIONE

Ing. Paolo Domenici PREFAZIONE Ing. Paolo Domenici SISTEMI A MICROPROCESSORE PREFAZIONE Il corso ha lo scopo di fornire i concetti fondamentali dei sistemi a microprocessore in modo semplice e interattivo. È costituito da una parte

Dettagli

Programmazione dello Z80

Programmazione dello Z80 Il microprocessore si incarica di: gestire il programma e i suoi dati di eseguire i calcoli richiesti. Le azioni appena elencate rendono necessario che il microprocessore abbia da qualche parte, al suo

Dettagli

ARCHITETTURE MICROPROGRAMMATE. 1. Necessità di un architettura microprogrammata 1. Cos è un architettura microprogrammata? 4

ARCHITETTURE MICROPROGRAMMATE. 1. Necessità di un architettura microprogrammata 1. Cos è un architettura microprogrammata? 4 ARCHITETTURE MICROPROGRAMMATE. 1 Necessità di un architettura microprogrammata 1 Cos è un architettura microprogrammata? 4 Struttura di una microistruzione. 5 Esempi di microprogrammi 9 Esempio 1 9 Esempio

Dettagli

ARCHITETTURA DI UN SISTEMA A MICROPROCESSORE

ARCHITETTURA DI UN SISTEMA A MICROPROCESSORE ARCHITETTURA DI UN SISTEMA A MICROPROCESSORE 1. INTRODUZIONE In questo capitolo viene presentata la struttura, sia interna che esterna, di un microprocessore generico riprendendo i concetti esposti nella

Dettagli

L architettura di riferimento

L architettura di riferimento Architetture degli elaboratori e delle reti Lezione 10 L architettura di riferimento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 10 1/27

Dettagli

Struttura del calcolatore

Struttura del calcolatore Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.6. Unità di controllo microprogrammata

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.6. Unità di controllo microprogrammata Lezione n.6 Unità di controllo microprogrammata 1 Sommario Unità di controllo microprogrammata Ottimizzazione, per ottimizzare lo spazio di memoria occupato Il moltiplicatore binario Esempio di architettura

Dettagli

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

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Interpreti e compilatori La macchina di Von Neumann

Interpreti e compilatori La macchina di Von Neumann Interpreti e compilatori La macchina di Von Neumann Informatica@Matematica Simone Martini a.a. 2014-2015 1 / 38 Parte I Interpreti e compilatori 2 / 38 Macchine astratte Una macchina astratta è un esecutore

Dettagli

Von Neumann. John Von Neumann (1903-1957)

Von Neumann. John Von Neumann (1903-1957) Linguaggio macchina Von Neumann John Von Neumann (1903-1957) Inventore dell EDVAC (Electronic Discrete Variables AutomaFc Computer), la prima macchina digitale programmabile tramite un soiware basata su

Dettagli

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

Architettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica. prof. ing. Corrado Santoro Architettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica prof. ing. Corrado Santoro Schema a blocchi di una CPU Arithmetic Logic Unit Control Unit Register File BUS Control

Dettagli

Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18

Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18 Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Calcolatore: sottosistemi Processore o CPU (Central Processing

Dettagli

Architettura hw. La memoria e la cpu

Architettura hw. La memoria e la cpu Architettura hw La memoria e la cpu La memoria centrale e la CPU Bus controllo Bus indirizzi Bus dati Bus di collegamento con la cpu indirizzi controllo dati Bus Indirizzi 11 Bus controllo Leggi/scrivi

Dettagli

Il processore - CPU. PDF created with pdffactory trial version www.pdffactory.com

Il processore - CPU. PDF created with pdffactory trial version www.pdffactory.com Il processore - CPU (CENTRAL PROCESSING UNIT) Funzionamento o Programmi e dati risiedono in file memorizzati in memoria secondaria. o Per essere eseguiti (i programmi) e usati (i dati) vengono copiati

Dettagli

L unità di controllo. Il processore: unità di controllo. Le macchine a stati finiti. Struttura della macchina a stati finiti

L unità di controllo. Il processore: unità di controllo. Le macchine a stati finiti. Struttura della macchina a stati finiti Il processore: unità di lo Architetture dei Calcolatori (lettere A-I) L unità di lo L unità di lo è responsabile della generazione dei segnali di lo che vengono inviati all unità di elaborazione Alcune

Dettagli

Calcolo numerico e programmazione Architettura dei calcolatori

Calcolo numerico e programmazione Architettura dei calcolatori Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:

Dettagli

Architettura di un calcolatore: introduzione

Architettura di un calcolatore: introduzione Corso di Calcolatori Elettronici I Architettura di un calcolatore: introduzione Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie

Dettagli

Il Processore: i registri

Il Processore: i registri Il Processore: i registri Il processore contiene al suo interno un certo numero di registri (unità di memoria estremamente veloci) Le dimensioni di un registro sono di pochi byte (4, 8) I registri contengono

Dettagli

Macchina di von Neumann

Macchina di von Neumann Il processore PD32 Macchina di von Neumann Unità di Ingresso Memoria di lavoro Unità di Uscita Unità di Calcolo Unità di Controllo Suddivisione SCA-SCO Unità di Ingresso Memoria di lavoro Unità di Uscita

Dettagli

Parte II.2 Elaboratore

Parte II.2 Elaboratore Parte II.2 Elaboratore Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 1, 2015 Elisabetta Elisabetta Ronchieri II Software Argomenti

Dettagli

CALCOLATORI ELETTRONICI

CALCOLATORI ELETTRONICI CALCOLATORI ELETTRONICI Giuseppe Coldani Tel. 0382 985678 e-mail: giuseppe.coldani@unipv.it giuseppe.coldani@tin.it orario delle lezioni: Mercoledì 14.00-18.00 orario di ricevimento: su appuntamento 1

Dettagli

AXO Achitettura dei Calcolatori e Sistema Operativo. Instruction Set Architecture (ISA) e 68000

AXO Achitettura dei Calcolatori e Sistema Operativo. Instruction Set Architecture (ISA) e 68000 AXO Achitettura dei Calcolatori e Sistema Operativo Instruction Set Architecture (ISA) e 68000 introduzione a ISA ISA - Instruction Set Architecture insieme delle istruzioni (instruction set) che possono

Dettagli

Architettura di un Elaboratore

Architettura di un Elaboratore Architettura di un Elaboratore Fabio Massimo Zanzotto Ricapitoliamo puntate precedenti Cosa abbiamo a disposizione: Concetto di algoritmo (con eventuale parametrizzazione) Rappresentazione dell informazione

Dettagli

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

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU Lezione n.7 Il moltiplicatore binario e il ciclo di base di una CPU 1 SOMMARIO Architettura del moltiplicatore Architettura di base di una CPU Ciclo principale di base di una CPU Riprendiamo l analisi

Dettagli

Introduzione all'architettura dei Calcolatori

Introduzione all'architettura dei Calcolatori Introduzione all'architettura dei Calcolatori Introduzione Che cos è un calcolatore? Come funziona un calcolatore? è possibile rispondere a queste domande in molti modi, ciascuno relativo a un diverso

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Architettura dei calcolatori Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it http://www.dii.unisi.it/~rigutini/

Dettagli

L architettura del calcolatore (Prima parte)

L architettura del calcolatore (Prima parte) L architettura del calcolatore (Prima parte) Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Calcolatore astratto e reale Concetto astratto

Dettagli

Fondamenti di Informatica PROBLEMI E ALGORITMI. Fondamenti di Informatica - D. Talia - UNICAL 1

Fondamenti di Informatica PROBLEMI E ALGORITMI. Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica PROBLEMI E ALGORITMI Fondamenti di Informatica - D. Talia - UNICAL 1 Specifica di un algoritmo Primo approccio, scrittura diretta del programma: la soluzione coincide con la codifica

Dettagli

Elementi di Informatica e Programmazione. # Memoria di massa. Problema: comprare un PC. Architettura del calcolatore. Architettura di Von Neumann

Elementi di Informatica e Programmazione. # Memoria di massa. Problema: comprare un PC. Architettura del calcolatore. Architettura di Von Neumann Elementi di Informatica e Programmazione Architettura del calcolatore (prima parte) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Problema:

Dettagli

Il processore - CPU (CENTRAL PROCESSING UNIT)

Il processore - CPU (CENTRAL PROCESSING UNIT) Il processore - CPU (CENTRAL PROCESSING UNIT) Funzionamento Programmi e dati risiedono in file memorizzati in memoria secondaria. Per essere eseguiti (i programmi) e usati (i dati) vengono copiati nella

Dettagli

La Macchina Virtuale

La Macchina Virtuale Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore

Dettagli

3. Programmazione strutturata (testo di riferimento: Bellini-Guidi)

3. Programmazione strutturata (testo di riferimento: Bellini-Guidi) Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Meccanica (A-K) 3. (testo di riferimento: Bellini-Guidi) Ing. Agnese Pinto 1 di 28 Linguaggi di programmazione Un programma è un algoritmo

Dettagli

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

Il calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Il calcolatore elettronico Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Introduzione Un calcolatore elettronico è un sistema elettronico digitale programmabile Sistema: composto da

Dettagli

Prelievo di un istruzione. Istruzioni macchina. Tipi di istruzioni. Registri principali della CPU e loro ruolo

Prelievo di un istruzione. Istruzioni macchina. Tipi di istruzioni. Registri principali della CPU e loro ruolo Registri principali della CPU e loro ruolo CPU e linguaggio macchina domande ed esercizi PC: indirizzo prossima IR: corrente MAR: indirizzo cella di M da leggere/scrivere MBR: contenuto cella di M letta

Dettagli

Ciclo di Istruzione. Ciclo di Istruzione. Controllo. Ciclo di Istruzione (diagramma di flusso) Lezione 5 e 6

Ciclo di Istruzione. Ciclo di Istruzione. Controllo. Ciclo di Istruzione (diagramma di flusso) Lezione 5 e 6 Ciclo di Istruzione Può essere suddiviso in 4 tipi di sequenze di microoperazioni (cioè attività di calcolo aritmetico/logico, trasferimento e memorizzazione dei dati), non tutte necessariamente da realizzare

Dettagli

Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014

Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014 Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014 Ricorda... Il ciclo di esecuzione di un istruzione è composto da sei fasi: FETCH DECODE ADDRESS

Dettagli

Anatomia e fisiologia del computer: l architettura del calcolatore

Anatomia e fisiologia del computer: l architettura del calcolatore Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 01 Anatomia e fisiologia del computer: l architettura del calcolatore Marzo 2009 L architettura del calcolatore 1 Nota bene Alcune parti

Dettagli

Programmazione per Bioinformatica Il Calcolatore e la Programmazione. Dr Damiano Macedonio Università di Verona

Programmazione per Bioinformatica Il Calcolatore e la Programmazione. Dr Damiano Macedonio Università di Verona Programmazione per Bioinformatica Il Calcolatore e la Programmazione Dr Damiano Macedonio Università di Verona Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macrocomponenti:

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica 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:

Dettagli

La macchina programmata Instruction Set Architecture (1)

La macchina programmata Instruction Set Architecture (1) Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un

Dettagli

Architettura di una CPU

Architettura di una CPU Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1

Dettagli

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore Dispensa di Fondamenti di Informatica Architettura di un calcolatore Hardware e software La prima decomposizione di un calcolatore è relativa ai seguenti macro-componenti hardware la struttura fisica del

Dettagli

Architettura (10/9/2003) Pag. 1/6. Cognome e Nome (in stampatello):

Architettura (10/9/2003) Pag. 1/6. Cognome e Nome (in stampatello): Architettura (10/9003) Pag. 1/6 Esame di Architettura (matr.0-1) del 10/9003 Per Fondamenti di Architettura NON rispondere Per le domande a risposta multipla cerchiare la risposta scelta. Non alle domande

Dettagli

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

UNITÀ DI ELABORAZIONE (CPU) UNITÀ DI ELABORAZIONE (CPU) Opcode OpCode Operazione RCHITETTUR DI UN ELORTORE MCCHIN DI VON NEUMNN Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). UNITÀ FUNZIONLI fondamentali Processore (CPU) Centrale

Dettagli

Software Applicativo. Hardware. Sistema Operativo Software di Base Traduttori e Linguaggi

Software Applicativo. Hardware. Sistema Operativo Software di Base Traduttori e Linguaggi : di base e applicativo L HardWare (monitor, tastiera, circuiti, stampante, ) è il nucleo fondamentale del calcolatore ma da solo non serve a nulla. Bisogna utilizzare il software per poterlo fare funzionare.

Dettagli

Architettura del computer (C.Busso)

Architettura del computer (C.Busso) Architettura del computer (C.Busso) Il computer nacque quando fu possibile costruire circuiti abbastanza complessi in logica programmata da una parte e, dall altra, pensare, ( questo è dovuto a Von Neumann)

Dettagli

E una notazione per descrivere gli algoritmi.

E una notazione per descrivere gli algoritmi. Linguaggio di Programmazione E una notazione per descrivere gli algoritmi. Programma:: e la rappresentazione di un algoritmo in un particolare linguaggio di programmazione. In generale, ogni linguaggio

Dettagli

Le componenti fisiche di un computer: l hardware

Le componenti fisiche di un computer: l hardware Le componenti fisiche di un computer: l hardware In questa sezione ci occuperemo di come è strutturato e come funziona l hardware di un computer. In particolare, nella Sezione ci occuperemo del punto di

Dettagli

Unità Periferiche. Rete Di Controllo

Unità Periferiche. Rete Di Controllo MODELLO LOGICO-FUNZIONALE DI UN ELABORATORE Centrale di canale Periferiche CPU Memoria centrale ALU CU Memoria Locale ALU = Aritmetic Logic Unit CU = Registri CU ISTRUZIONE Decodificatore Rete Di Controllo

Dettagli

C. P. U. MEMORIA CENTRALE

C. P. U. MEMORIA CENTRALE C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato

Dettagli

Esercitazione sulle CPU pipeline

Esercitazione sulle CPU pipeline Esercitazione sulle CPU pipeline Una CPU a ciclo singolo come pure una CPU multi ciclo eseguono una sola istruzione alla volta. Durante l esecuzione parte dell hardware della CPU rimane inutilizzato perché

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Lezione 16: L architettura LC-3

Lezione 16: L architettura LC-3 Lezione 16: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 15 Maggio 2013 Ricorda... Il ciclo di esecuzione di un istruzione è composto da sei fasi: FETCH DECODE ADDRESS

Dettagli

CAP. 4: Aspetti generali del Sistema Operativo Linux. l http://home.dei.polimi.it/silvano/acso.htm

CAP. 4: Aspetti generali del Sistema Operativo Linux. l http://home.dei.polimi.it/silvano/acso.htm Struttura interna del sistema Operativo Linux CAP. 4: Aspetti generali del Sistema Operativo Linux CAP. 5: Funzionalità del calcolatore l http://home.dei.polimi.it/silvano/acso.htm Funzionalità del Sistema

Dettagli

I sistemi di elaborazione

I sistemi di elaborazione 2 I sistemi di elaborazione 2.0 I sistemi di elaborazione c Diego Calvanese Fondamenti di Informatica Corso di Laurea in Ingegneria Elettronica A.A. 2001/2002 2.0 0 2 I sistemi di elaborazione Architettura

Dettagli

SISTEMI OPERATIVI. Gestione della memoria Domande di verifica. Luca Orrù Centro Multimediale Montiferru 18/06/2007

SISTEMI OPERATIVI. Gestione della memoria Domande di verifica. Luca Orrù Centro Multimediale Montiferru 18/06/2007 2007 SISTEMI OPERATIVI Gestione della memoria Domande di verifica Luca Orrù Centro Multimediale Montiferru 18/06/2007 Gestione della memoria 1. Si descriva il concetto di memoria virtuale (esame del 19-06-2006)

Dettagli

FONDAMENTI DI INFORMATICA Prof. Lorenzo Mezzalira

FONDAMENTI DI INFORMATICA Prof. Lorenzo Mezzalira FONDAMENTI DI INFORMATICA Prof. Lorenzo Mezzalira Appunti del corso di Fondamenti di informatica Fascicolo integrativo - 2 - Architettura e funzionalità del calcolatore Architettura tipica dei calcolatori

Dettagli

Architettura del calcolatore e rappresentazione dell informazione

Architettura del calcolatore e rappresentazione dell informazione Corso di Laurea in Ingegneria Elettronica Complementi al corso di Fondamenti di Informatica Architettura del calcolatore e rappresentazione dell informazione Daniela D Aloisi Anno Accademico 2001-2002

Dettagli

Architettura degli elaboratori (A)

Architettura degli elaboratori (A) Laurea in Informatica a.a. 2010-2011 Laboratorio del corso di Architettura degli elaboratori (A) Modulo 1: l Architettura dell 8086 Valeria Carofiglio Linguaggi a vari livelli e loro relazioni Programma

Dettagli

Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.

Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine. Quinto Homework 1) Si vuole progettare una cache a mappatura diretta per un sistema a 32 bit per una memoria da 2 GB (quindi sono solo 31 i bit utili per gli indirizzi) e blocchi di 64 byte. Rispondere

Dettagli

La macchina di Von Neumann. Central Processing Unit (CPU) Elementi base. Architettura computer. Bus di sistema MEMORIA CENTRALE PERIFERICHE A B INTR

La macchina di Von Neumann. Central Processing Unit (CPU) Elementi base. Architettura computer. Bus di sistema MEMORIA CENTRALE PERIFERICHE A B INTR Architettura di un computer La macchina di Von Neumann Architettura organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton.

Dettagli

1.4a: Hardware (Processore)

1.4a: Hardware (Processore) 1.4a: Hardware (Processore) 2 23 nov 2011 Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Ediz. Fino alla III : cap. 3.8, 3.9 IV ediz.: cap. 2.6, 2.7 Questi lucidi 23 nov 2011

Dettagli

La microarchitettura. Didattica della strumentazione digitale e sistemi a microprocessore anno accademico 2006 2007 pagina 1

La microarchitettura. Didattica della strumentazione digitale e sistemi a microprocessore anno accademico 2006 2007 pagina 1 La microarchitettura. anno accademico 2006 2007 pagina 1 Integer Java virtual machine Ogni microprocessore può avere una microarchitettura diversa, ma la modalità di funzionamento per certi aspetti è generale.

Dettagli

Versione A: caricamento ed esecuzione del codice

Versione A: caricamento ed esecuzione del codice Versione A: caricamento ed esecuzione del codice «Nella sua prima versione, la CPU si compone soltanto di registri utili ad accedere alla memoria per leggere il codice operativo da eseguire, come di vede

Dettagli

Architettura di un computer

Architettura di un computer Architettura di un computer Modulo di Informatica Dott.sa Sara Zuppiroli A.A. 2012-2013 Modulo di Informatica () Architettura A.A. 2012-2013 1 / 36 La tecnologia Cerchiamo di capire alcuni concetti su

Dettagli

La Macchina RAM Shepherdson e Sturgis (1963)

La Macchina RAM Shepherdson e Sturgis (1963) La Macchina RAM Shepherdson e Sturgis (963) Nastro di ingresso.......... PROGRAM COUNTER Nastro di uscita PROGRAMMA ACCUMULATORE UNITA' ARITMETICA............... 2 3 4 M E M O R I A Formato delle Istruzioni

Dettagli

Architettura di tipo registro-registro (load/store)

Architettura di tipo registro-registro (load/store) Caratteristiche principali dell architettura del processore MIPS E un architettura RISC (Reduced Instruction Set Computer) Esegue soltanto istruzioni con un ciclo base ridotto, cioè costituito da poche

Dettagli

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad Principi di architetture dei calcolatori: l architettura ARM. Mariagiovanna Sami Che cosa è ARM In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline

Dettagli

Architettura di un calcolatore

Architettura di un calcolatore 2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) 7 Architettura di un calcolatore Lez. 7 1 Modello di Von Neumann Il termine modello di Von Neumann (o macchina di Von

Dettagli

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

INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO PROGRAMMA Descrizione funzionale di un calcolatore elementare, COS'E' UN ELETTRONICO HARDWARE SOFTWARE HARDWARE

Dettagli

ARCHITETTURA DEL CALCOLATORE

ARCHITETTURA DEL CALCOLATORE Orologio di sistema (Clock) UNITÀ UNITÀ DI DI INGRESSO Schema a blocchi di un calcolatore REGISTRI CONTROLLO BUS DEL SISTEMA MEMORIA DI DI MASSA Hard Hard Disk Disk MEMORIA CENTRALE Ram Ram ALU CPU UNITÀ

Dettagli

Informatica di Base - 6 c.f.u.

Informatica di Base - 6 c.f.u. Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Architettura dei calcolatori I parte Introduzione,

Dettagli

Programmi. Algoritmi scritti in un linguaggio di programmazione

Programmi. Algoritmi scritti in un linguaggio di programmazione Programmi Algoritmi scritti in un linguaggio di programmazione Sistema operativo:programma supervisore che coordina tutte le operazioni del calcolatore Programmi applicativi esistenti Sistemi di videoscrittura

Dettagli

CALCOLATORI ELETTRONICI II

CALCOLATORI ELETTRONICI II CALCOLATORI ELETTRONICI II ARCHITETTURA DEL PROCESSORE 886 PARTE (II) Argomenti della lezione Architettura del processore 886 parte (II) Stack Stack I/O Lo stack Lo stack L'886 prevede alcune strutture

Dettagli

INFORMATICA E COMPUTER : INTRODUZIONE

INFORMATICA E COMPUTER : INTRODUZIONE INFORMATICA E COMPUTER : INTRODUZIONE! Informatica: dal francese, informatique informat(ion) (automat)ique [termine coniato dall'ingegnere francese Philippe Dreyfus nel 1962] è la scienza che studia i

Dettagli

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

Contenuti. Visione macroscopica Hardware Software. 1 Introduzione. 2 Rappresentazione dell informazione. 3 Architettura del calcolatore Contenuti Introduzione 1 Introduzione 2 3 4 5 71/104 Il Calcolatore Introduzione Un computer...... è una macchina in grado di 1 acquisire informazioni (input) dall esterno 2 manipolare tali informazioni

Dettagli

Programma ARCHITETTURA DI UN ELABORATORE MACCHINA DI VON NEUMANN CPU & MEMORIA UNITÀ DI ELABORAZIONE (CPU) Questa settimana:

Programma ARCHITETTURA DI UN ELABORATORE MACCHINA DI VON NEUMANN CPU & MEMORIA UNITÀ DI ELABORAZIONE (CPU) Questa settimana: Progma La settimana scorsa: cos è l informatica? cos è un algoritmo? cos è un progma? come si descrive un algoritmo? di cosa si compone un? che cos è il software? a cosa serve? Questa settimana: qual è

Dettagli

Corso di Informatica Applicata. Lezione 3. Università degli studi di Cassino

Corso di Informatica Applicata. Lezione 3. Università degli studi di Cassino Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 3 Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39

Dettagli

CALCOLATORI ELETTRONICI 29 giugno 2011

CALCOLATORI ELETTRONICI 29 giugno 2011 CALCOLATORI ELETTRONICI 29 giugno 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di una PLA la funzione combinatoria (a 3 ingressi e due uscite)

Dettagli

Richiami di informatica e programmazione

Richiami di informatica e programmazione Richiami di informatica e programmazione Il calcolatore E una macchina usata per Analizzare Elaborare Collezionare precisamente e velocemente una grande quantità di informazioni. Non è creativo Occorre

Dettagli

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO Lezione di informatica del 31 marzo 2008 (appunti prelevati sulla rete) - Paolo Latella ARCHITETTURA DI UN CALCOLATORE ELETTRONICO Per architettura di un calcolatore elettronico si intende l'insieme delle

Dettagli

Integer Java Virtual Machine (IJVM)

Integer Java Virtual Machine (IJVM) Integer Java Virtual Machine (IJVM) Calcolatori Elettronici II Prof. Antonino Mazzeo mazzeo@unina.it Ing. Luigi Romano Ing. Alessandro Cilardo Ing. Luigi Coppolino lrom@unina.it acilardo@unina.it lcoppoli@unina.it

Dettagli

Realizzazione del controllo

Realizzazione del controllo Realizzazione del controllo La generazione della corretta sequenza di segnali di controllo per l esecuzione di una data istruzione avviene da parte dell Unità di Controllo. La sequenza generata è funzione:

Dettagli

Le infrastrutture Hardware: architettura

Le infrastrutture Hardware: architettura Le infrastrutture Hardware: architettura Corso di Informatica CdL: Chimica Claudia d'amato claudia.damato@di.uniba.it Il calcolatore: modello concettuale 1. Elaborazione 2. Memorizzazione Interconnessione

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto ARCHITETTURA DEI CALCOLATORI

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Programmazione L attività con cui si predispone l elaboratore ad eseguire un particolare insieme di azioni su particolari dati, allo scopo di risolvere un problema Dati Input

Dettagli

Calcolatori Elettronici L-A

Calcolatori Elettronici L-A 1 Calcolatori Elettronici L-A Obiettivo del modulo è lo studio dei seguenti aspetti dell hardware dei calcolatori: l architettura i principi di funzionamento le tecniche di progettazione l impatto dell'architettura

Dettagli

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA Lezione n.11 n.11 Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di base relativi

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici ISA di riferimento: MIPS Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello funzionale Livello logico Livello circuitale Livello del layout istruzioni macchina, ISA Reti logiche:

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

Elaborazione dei dati

Elaborazione dei dati Elaborazione dei dati Architettura dei computer Esploreremo i fondamenti dell architettura dei computer. Vedremo come un computer elabora i dati e comunica con periferiche come stampanti e tastiere. Linguaggio

Dettagli

Microprocessori, Microcontrollori e DSP (Digital Signal Processors)

Microprocessori, Microcontrollori e DSP (Digital Signal Processors) Microprocessori, Microcontrollori e DSP (Digital Signal Processors) Il microprocessore è un dispositivo integrato digitale che può essere programmato con una serie di istruzioni per effettuare una specifica

Dettagli