Introduzione alla programmazione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Introduzione alla programmazione"

Transcript

1 Introduzione alla programmazione Cosa è l'informatica? La parola deriva dalla fusione di INFORMAZIONE e di AUTOMATICA L'informatica è la scienza della gestione automatizzata dell'informazione

2 Introduzione alla programmazione L'informatica è la scienza che studia la gestione automatizzata dell'informazione Il computer è lo strumento principale con il quale vengono messi in atto le idee e i metodi dell'informatica Programmare significa utilizzare le idee dell'informatica attraverso lo strumento che abbiamo a disposizione: il computer

3 Storia La parola 'ALGORITMO' deriva dal nome del matematico Muhammad ibn Musa alkhwarizmi (persiano, ) che pubblica un libro sulla aritmetica e uno sull algebra Il termine nel medioevo indicava i procedimenti di calcolo numerico fondati sull'uso delle cifre arabe, quelle che usiamo tutti i giorni e che all'epoca vennero introdotte in europa

4 Storia La gestione dell'informazione è naturalmente iniziata nella notte dei tempi, ma la gestione 'automatica' richiede, almeno nell'uso comune del termine, la presenza di una macchina, di uno strumento, di qualcosa che renda possibile un procedimento di qualche tipo senza l'intervento dell'uomo

5 Storia Il sogno di costruire macchine capaci di effettuare calcoli automatici affonda le radici nel pensiero filosofico del 600 Nel 1642 Blaise Pascal, matematico e filosofo francese, creò la Pascalina Una macchina che precorreva le moderne calcolatrici permettendo il calcolo automatico di somme e sottrazioni

6 Storia Nel 1671 Gottfried Wilhelm Leibniz progettò la prima macchina capace di eseguire le quattro operazioni ma, a causa dei limiti tecnologici dell'epoca, non riuscì a realizzarla Leibniz fu anche il creatore del sistema binario Nel 1820 Charles Xavier Thomas de Colmar riuscì nell'intento inventando l'arithmometer che restò in produzione fino alla prima guerra mondiale

7 Storia Intanto nel 1805 Joseph Marie Jacquard aiutato da Jean Antoine Breton costruisce la prima macchina programmabile nella quale un telaio meccanico per la tessitura viene governato da un programma perforato su schede Questa idea delle schede perforate fu ripresa da Charles Babbage nel suo progetto della 'Macchina Analitica', un vero e proprio calcolatore meccanico che, seppur mai realizzato, contribuisce a dare forma all'idea di calcolatore

8 La macchina analitica

9 Storia La macchina analitica di Babbage in particolare solleva la curiosità di Augusta Ada King contessa di Lovelace che traduce una descrizione della macchina scritta dall'italiano Luigi Menabrea e aggiunge delle note che costituiscono i primi esempi di programma per computer pubblicati

10 Storia Nel 1936 Konrad Zuse inizia a costruire la Z1, una macchina calcolatrice digitale programmabile in cui si realizzano le idee nate in precedenza (l aritmetica binaria di Leibniz, il controllo eseguito da programma di Babbage, il formato delle istruzioni con indirizzi numerici di Ludgate e la rappresentazione dei numeri in virgola mobile di Torres y Quevedo) Nello stesso anno Alan Mathison Turing ( ) pubblica l articolo 'On Computable Numbers with an Application to the Entscheidungsproblem'; che introduce la macchina di Turing e fornisce il concetto definitivo di algoritmo

11 Storia Con la seconda guerra mondiale la necessità di sicurezza delle comunicazioni produce la tedesca 'Enigma', una macchina per la cifratura automatica La cifratura venne forzata da tre matematici polacchi: Marian Rejewski, Jerzy Różycki e Henryk Zygalski che, visti gli sviluppi della guerra, passarono tutte le informazioni agli alleati insieme ad un apparato automatico che permetteva il lavoro di decifrazione (bomba)

12 Storia Gli alleati per decifrare l'enorme mole di messaggi svilupparono l'idea polacca di un sistema automatico per la decifrazione producendo Colossus: il primo computer elettronico programmabile nella storia dell'informatica Colossus venne progettato dal matematico Max Newman, basandosi sui concetti della macchina di Turing universale Alan Turing faceva parte del gruppo di decifrazione e utilizzò Colossus

13 Storia Nel 1945 Von Neumann scrive 'First Draft of a Report on the EDVAC' in cui sono riassunte le idee emerse nelle riunioni di lavoro fra le persone che avevano contribuito alla costruzione della macchina ENIAC e in cui viene descritta l'architettura (detta poi di Von Neumann): programma e dati sono memorizzati in modo uniforme e quindi le istruzioni possono essere modificate al pari dei dati

14 Storia A questo punto 'si sapeva come fare' Altre tappe fondamentali sono: L'invenzione del transistor (1947) L'invenzione del circuito integrato (1969) Da quel momento in poi si è assistito ad un'escalation che dura fino ai giorni nostri e non accenna a terminare

15 Introduzione alla programmazione Architettura del calcolatore

16 Architettura di Von Neumann L'architettura dei moderni calcolatori è basata su quella che Von Neumann pubblicò nel 1945 all'interno 'First Draft of a Report on the EDVAC' Rappresenta lo schema base che descrive: I componenti e i loro principi di funzionamento Le interazioni tra le componenti e come queste rendono possibile le operazioni di calcolo

17 Architettura di Von Neumann

18 Architettura di Von Neumann L'architettura identifica quattro tipi di componenti La CPU che esegue le istruzioni di calcolo e controlla l'andamento delle operazioni La MEMORIA che contiene e dati e le istruzioni necessarie al calcolo Le Unità Periferiche (memorie di massa come i dischi, unità di input quali tastiere e mouse, unità di output quali stampanti e monitor) Il BUS sul quale viaggiano i dati e istruzioni in trasferimento tra le varie componenti

19 Architettura di Von Neumann Il BUS di sistema È il canale di comunicazione tra le componenti interne del calcolatore (CPU, memoria, periferiche) In ogni momento una sola componente trasmette e una sola riceve La CPU decide quale è la comunicazione da attivare e ordina il trasferimento dei dati

20 Architettura di Von Neumann I dati che il bus trasporta si possono dividere in DATI esempio: due numeri da sommare INDIRIZZI DI MEMORIA esempio: dove sono i numeri COMANDI esempio: copia il risultato

21 Architettura di Von Neumann Per ottimizzare il flusso delle comunicazioni sono definite delle linee separate per le diverse tipologie di traffico BUS dati Trasferisce (in ambedue le direzioni) dati tra: - memoria di sistema - periferiche CPU registro dati della CPU

22 Architettura di Von Neumann BUS Indirizzi Trasferisce il contenuto del registro indirizzi della CPU alla memoria o a una periferica È unidirezionale, in pratica la CPU informa quale cella di memoria sarà oggetto della prossima operazione È quindi unidirezionale BUS Comandi Invia comandi dalla CPU alla memoria o a una periferica

23 Architettura di Von Neumann La CPU è il cuore del sistema e comprende - Unità di controllo - Unità Logico-Aritmetica (ALU) - Registri Una moderna CPU può arrivare ad avere 5 miliardi di transistor e fino a 18 sotto - CPU (core) su un singolo circuito integrato

24 Architettura di Von Neumann

25 Architettura di Von Neumann Funzioni delle componenti della CPU Unità di controllo: decide quali istruzioni eseguire e ne orchestra l'esecuzione comandando lo spostamento dei dati e l'istante di esecuzione Unita aritmetico logica (ALU): esegue le operazioni aritmetiche (+, -, *, /,, ), di confronto (>,, =, ) e logiche (and, or, ) Registri: sono memorie ad alta velocità usate per immagazinamento temporaneo dei dati/risultati e istruzioni Ci sono registri generici e altri dedicati a informazioni di particolare importanza per le operazioni La dimensione in bit di un registro è fissa

26 Registri Registri dedicati PC (program counter): contiene l'indirizzo della prossima istruzione da eseguire IR (instruction register): contiene l'istruzione in esecuzione PSW (program status word): contiene un valore codificato che indica l'esito dell'ultima istruzione (esempio: successo, errore n 11,)

27 Registri Registri dedicati (continua) MAR (memory address register): contiene l'indirizzo (un numero) della cella di memoria da cui leggere o scrivere MDR (memory data register): dato che è stato letto o scritto

28 Registri Ci sono poi i registri generali per memorizzare gli operandi delle operazioni di cui la ALU si occupa e il relativo risultato (ad esempio gli addendi di una somma e il risultato) Una moderna CPU ha in genere un numero di registri intorno a 16, con punte di CPU con 32 registri

29 ALU L'Unità Aritmetico-Logica (ALU) è formata da un insieme di blocchi operazionali, ognuno dedicato ad un particolare tipo di operazione L'operazione da eseguire è selezionata dall'unità di controllo La ALU legge gli operandi e scrive il risultato dai registri Riporta l'esito nel registro PSW

30 Ciclo Fetch-Decode-Execute Le fasi del ciclo di esecuzione della CPU

31 Ciclo Fetch-Decode-Execute FETCH Si accede all'istruzione residente in memoria centrale e indirizzata dal registro PC (program counter) L'istruzione viene copiata nel registro IR (instruction register) (Il tutto utilizzando il registro MDR)

32 Ciclo Fetch-Decode-Execute DECODE Si decodifica l'istruzione cioè si verifica che sia un'operazione ammessa e la si identifica Si trasferiscono i dati nei registri opportuni

33 Ciclo Fetch-Decode-Execute EXECUTE Si incrementa il valore del registro PC (in assenza di modifiche da parte dell'istruzione che stiamo per eseguire la prossima istruzione è la successiva in memoria) L'Unitá di Controllo richiede le azioni opportune a ciascun componente

34 Ciclo Fetch-Decode-Execute Il ciclo appena visto è naturalmente uno schema di massima suscettibile di essere implementato in modo diverso all'interno dei vari modelli di processore

35 Linguaggio Macchina La CPU accetta istruzioni in 'Linguaggio Macchina' Si tratta di numeri binari destinati ad essere memorizzati nei registri, in particolare PC e IR Anche se ogni tipo e variante commerciale di CPU ha le sue istruzioni, si possono individuare quelle di base presenti sempre

36 Istruzioni base Istruzioni per l'elaborazione dei dati Aritmetiche (+, -, *, /,, ) Booleane (AND, OR, NOT) Di confronto (=, <,, )

37 Istruzioni base Istruzioni di controllo dell'esecuzione Normalmente le istruzioni di un programma sono eseguite in sequenza ma sulla base di un risultato intermedio può essere necessario cambiare il flusso dell'esecuzione Jump condizionato: vai ad un dato punto del programma in caso che (es: test di uscita) Jump incodizionato: vai ad un dato punto del programma (es: fine subroutine) Sono dette anche istruzioni di 'BRANCH'

38 Istruzioni base Istruzioni per il trasferimento dei dati Istruzioni per trasferire dati o altre istruzioni tra la CPU e la memoria centrale Istruzioni per comunicare con le periferiche

39 Architettura di Von Neumann La memoria centrale (RAM) Serve ad immagazzinare i dati e le sequenze di istruzioni che formano i programmi È la memoria che la CPU 'vede', e che serve da punto di passaggio per le altre (es: dischi) La memoria è formata da celle o locazioni Ogni locazione contiene un numero fisso di bit

40 Memoria Ogni locazione di memoria (un byte) ha Un indirizzo, cioè un valore numerico che la identifica univocamente Un valore, cioè la lista dei bit memorizzata Una locazione di memoria si può Leggere, recuperando il dato immagazzinato Scrivere, modificando il dato immagazzinato

41 Memoria La CPU utilizza I registri 'MAR': memory address register 'MDR': memory data register per le operazioni di lettura e scrittura Si noti che la dimensione del registro 'MAR' in bit definisce la dimensione massima della memoria Se 'MAR' ha due bit gli indirizzi di memoria possibili sono '00', '01', '10' e '11' Oggi un normale PC ha registri di 64 bit, smartphone e tablet, di norma, a 32 bit

42 Memoria Operazioni sulla RAM LOAD: (lettura)viene copiato nel registro 'MDR' il contenuto della cella di memoria indirizzata dal registro 'MAR' STORE: (scrittura) il contenuto del registro 'MDR' viene copiato nella cella di memoria indirizzata nel registro 'MAR' Le operazione vengono di norma effettuate per blocchi di byte corrispondenti alla dimensione dei registri (quindi 32bit 4byte di lettura/scrittura)

43 Esecuzione di un programma Vediamo un semplice esempio di programma e seguiamone l'esecuzione Il nostro programma ha come scopo di scrivere il valore '0' zero in memoria RAM a partire da un indirizzo di RAM dato e per un numero di volte dato Si assume che l'indirizzo iniziale sia corretto e che il numero di scritture da effettuare sia maggiore di zero

44 Esecuzione di un programma All'inizio poniamo nel registro R0 la locazione di memoria che contiene il valore dell'indirizzo da cui cominciare ad azzerare e in R1 la locazione di memoria che contiene il numero di scritture da effettuare RAM CPU R0 0x80 R1 0x84 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136

45 Esecuzione di un programma PSEUDO CODICE DEL NOSTRO PROGRAMMA R0 = 0x80 (indirizzo di partenza per l'azzeramento) R1 = 0x84 (indirizzo del numero di scritture) R0 = ram[r0] (indirizzo da dove cominciare a azzerare) R1 = ram[r1] (numero di scritture da effettuare) R2 = 0x0 (il valore 0, lo copio per azzerare) R3 = 0x4 (il valore constante 4, #byte di registro) R4 = 0x0 (numero di scritture effettuate finora) R5 = 0x1 (il valore constante 1) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a 'STORE R2 '

46 Flow-Chart R0 = 0x80 R1 = 0x84 R0 = ram[r0] carica in R0/R1 il contenuto dell'indirizzo di RAM che trovi in R0/R1 stesso Aggiungi a R0 il contenuto di R3 R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 Copia nell'indirizzo di RAM indicato da R0 il contenuto di R2 Carica: R2: il valore costante 0 R3: il valore costante 4 R4: il valore 0 R5: il valore costante 1 Aggiungi a R4 il contenuto di R5 R5 = 0x1 STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a 'STORE R2 in ram[r0]' Vale R4!= R1? NO STOP SI

47 Simulazione: passi 1,2 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x80 R1 0x84 R2 - R3 - R4 - R5 - RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136

48 Simulazione: passi 3,4 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x120 R1 0x3 R2 R3 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 R4 R5

49 Simulazione: passi 5,6,7,8 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x120 R1 0x3 R2 0x0 R3 0x4 R4 0x0 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136

50 Simulazione: passo 9 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x120 R1 0x3 R2 0x0 R3 0x4 R4 0x0 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0

51 Simulazione: passo 10 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x124 R1 0x3 R2 0x0 R3 0x4 R4 0x1 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0

52 Simulazione: passo 11 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x124 R1 0x3 R2 0x0 R3 0x4 R4 0x1 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0

53 Simulazione: passo 12 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x124 R1 0x3 R2 0x0 R3 0x4 R4 0x1 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0 0x0

54 Simulazione: passo 13 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x128 R1 0x3 R2 0x0 R3 0x4 R4 0x2 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0 0x0

55 Simulazione: passo 14 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x128 R1 0x3 R2 0x0 R3 0x4 R4 0x2 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0 0x0

56 Simulazione: passo 15 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x128 R1 0x3 R2 0x0 R3 0x4 R4 0x2 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0 0x0 0x0

57 Simulazione: passo 16 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) REG VAL R0 0x132 R1 0x3 R2 0x0 R3 0x4 R4 0x3 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0 0x0 0x0

58 Simulazione: passo 17 R0 = 0x80 R1 = 0x84 R0 = ram[r0] R1 = ram[r1] R2 = 0x0 R3 = 0x4 R4 = 0x0 R5 = 0x1 (*) STORE R2 in ram[r0] R0 = R0 + R3 R4 = R4 + R5 SE (R4!= R1) JUMP a (*) STOP REG VAL R0 0x132 R1 0x3 R2 0x0 R3 0x4 R4 0x3 R5 0x1 RAM 0x80 0x84 0x120 0x3 0x120 0x124 0x128 0x132 0x136 0x0 0x0 0x0

59 Dove risiede il programma? In questa esecuzione abbiamo dato per scontato che il programma fosse disponibile e presente nella CPU In effetti il programma è immagazzinato anch'esso nella RAM Il registro PC (program counter) contiene l'indirizzo in RAM della prossima operazione da eseguire Il caricamento dei programmi nella RAM e la loro esecuzione è una delle principali attivita` del SO

60 Gerarchia delle memorie Nell'architettura di Von Neumann è solo accennata l'idea della gerarchia delle memorie essendo proposte solo la RAM e la memoria di massa Nella realtà esiste una organizzazione basata sull'idea di fondo che più una memoria è piccola e 'vicina' alla CPU più questa è veloce e costosa da realizzare

61 Gerarchia delle memorie I calcolatori di cui faremo uso comprendono una serie di dispositivi ulteriori Tra quelli fondamentali vi sono le memorie che di differenziano per: Dimensione e velocità Temporanee e permanenti

62 Gerarchia delle memorie

63 Memorie: registri Alla sommità del nostro schema della struttura della memoria troviamo i registri, abbiamo visto come siano le aree di memoria cui accedono direttamente le componenti della CPU per effettuare le elaborazioni Normalmente una CPU dispone di qualche decina di registri al massimo

64 Memorie: cache La cache è una memoria intermedia tra la RAM e i registri Ha velocità intermedia tra quella della RAM e quella dei registri Può essere sia costruita come parte del chip che ospita la CPU o esternamente in un chip a parte (con prestazioni inferiori)

65 Memorie: cache Quando la CPU richiede accesso ad un dato in RAM viene prima verificato che non sia già presente in cache (se si allora il dato è recuperato velocemente) altrimenti viene copiato dalla RAM alla cache e quindi passato alla CPU Normalmente il software tende ad accedere ripetutamente alle stesse locazioni di memoria, risulta quindi evidente il vantaggio di avere una cache

66 Memorie: cache In generale, nei computer moderni, ogni dispositivo di memorizzazione implementa una qualche forma di cache, ad esempio i dischi fissi Il concetto è spesso applicato in sequenza nel senso che si può creare la cache della cache, basta avere un sistema di memoria di prestazioni adeguate Ci sono quindi le cache di primo livello (le più vicine ai registri), quelle di secondo livello, ecc

67 Memorie: memoria virtuale La memoria virtuale serve ad estendere la capacità nominale di memoria RAM Spesso la RAM è insufficiente per le attività in corso Utilizzando una parte di una memoria più lenta (tipicamente un hard disk) come se fosse una RAM la velocità ne soffre ma è possibile mantenere in attività un maggior numero di programmi e questo è un vantaggio per l'utilizzatore La scelta di quale parte della memoria localizzare in RAM e quale nella memoria virtuale è affidata al sistema di paginazione, una componente software affiancata ad un elemento hardware: la memory management unit (MMU)

68 Memorie: dischi fissi I dischi fissi (hard disk) sono il principale sistema di memorizzazione permanente negli odierni computer Normalmente sono costituiti da piatti di materiale magnetico in veloce rotazione che una testina simile a quella di un giradischi e` in grado di leggere e scrivere Negli ultimi anni si sono affermati sul mercato sistemi a stato solido (SSD), quindi senza parti in movimento e che garantiscono velocità superiori

69 Memorie: dischi fissi I dischi fissi per motivi meccanici sono indirizzati attraverso: C: traccia / cilindro S: settore (uno spicchio) CS: settore di una traccia H: i dischi sono molti, ognuno letto da una particolare testina (head) L'indirizzamento prende l'acronimo CHS (Cilinder, Head, Sector)

70 Memorie: dischi fissi Un disco fisso è pensato per memorizzare file, le strutture di base di memorizzazione di un computer Si tratta di lunghe serie di byte che normalmente vengono lette sequenzialmente, cioè dall'inizio alla fine come se fossero su un nastro (ad esempio un testo scritto) Nondimeno un disco fisso è in grado di leggere e scrivere in ogni locazione di memoria sulla base dell'indirizzo fornito (traccia, settore, cilindro) per accesso diretto ad un indirizzo (CHS)

71 Memorie: unità di rete Nei computer odierni esiste la possibilità di accedere ad archivi e file attraverso la rete trascendendo in questo modo le limitazioni di una singola macchina in termini di dimensione dello spazio di archiviazione disponibile e pagando un prezzo in termini di velocità di trasferimento dei dati

72 Introduzione alla programmazione Cosa abbiamo visto finora?

73 Introduzione alla programmazione Cosa funziona là fuori?

Architettura del Calcolatore

Architettura del Calcolatore Giuseppe Manco Lezione 3 17 Ottobre 2003 Architettura del calcolatore Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle informazioni un calcolatore

Dettagli

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus Architettura del calcolatore Calcolatori (1) Introdotti all'inizio degli anni 1940 Costruiti assemblano componenti elettronici elementari per memorizzare informazioni ed eseguire programmi informazioni

Dettagli

Algoritmo: procedimento non ambiguo che in un numero finito di passi risolve un problema (o una classe di problemi)

Algoritmo: procedimento non ambiguo che in un numero finito di passi risolve un problema (o una classe di problemi) LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 2 LA MACCHINA DI VON NEUMANN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Cenni sull architettura del calcolatore

Cenni sull architettura del calcolatore Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 2016-2017 Cenni sull architettura del calcolatore Pietro Di Lena - pietro.dilena@unibo.it hard-ware /h :dwe9 r / n. The part of the computer

Dettagli

La macchina di Von Neumann. UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA CORSO DI "PROGRAMMAZIONE I"

La macchina di Von Neumann. UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA CORSO DI PROGRAMMAZIONE I 23/11/218 UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA La macchina di Von Neumann Unità periferiche Memoria Centrale CPU CORSO DI "PROGRAMMAZIONE I" Bus Dati Bus Indirizzi

Dettagli

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione

Dettagli

Abilità Informatiche e Telematiche

Abilità Informatiche e Telematiche Abilità Informatiche e Telematiche (Laurea Triennale + Laurea Magistrale) Marco Pedicini mailto:marco.pedicini@uniroma3.it Corso di Laurea in Scienze della Comunicazione, Università Roma Tre 12 Dicembre

Dettagli

Fondamenti di Informatica e Programmazione. P ro f. G i a n n i D A n g e l o

Fondamenti di Informatica e Programmazione. P ro f. G i a n n i D A n g e l o Fondamenti di Informatica e Programmazione CPU e Linguag gio Macchina P ro f. G i a n n i D A n g e l o Email: giadangelo@unisa.it A.A. 2018/19 Elaborazione dell Informazione L'elaborazione delle informazioni

Dettagli

Abilità Informatiche e Telematiche

Abilità Informatiche e Telematiche Abilità Informatiche e Telematiche (Laurea Triennale + Laurea Magistrale) Marco Pedicini mailto:marco.pedicini@uniroma3.it Corso di Laurea Magistrale in Informazione, Editoria e Giornalismo, Università

Dettagli

Architettura di von Neumann

Architettura di von Neumann Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Architettura di von Neumann Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università

Dettagli

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O L ARCHITETTURA DEI CALCOLATORI Il processore La memoria centrale La memoria di massa Le periferiche di I/O Caratteristiche dell architettura 2 Flessibilità adatta a svolgere diverse tipologie di compiti

Dettagli

Struttura di un elaboratore

Struttura di un elaboratore Struttura di un elaboratore Fondamenti di Informatica 1 Modello architetturale di un computer Ogni computer è costituito da un insieme di blocchi funzionali tra loro interconnessi da sistemi di comunicazioni,

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura

Dettagli

Architettura dell elaboratore

Architettura dell elaboratore Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati

Dettagli

Architettura dell elaboratore

Architettura dell elaboratore Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati

Dettagli

Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche

Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche ELABORAZIONE Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche operazioni relazionali (confronto tra dati) operazioni booleane altre

Dettagli

Il modello di Von Neumann

Il modello di Von Neumann Il modello di Von Neumann Appunti di STA per le classi seconde ind. informatiche Page 1 Il modello architetturale Per modello architetturale, si intende la descrizione delle parti del sistema e la loro

Dettagli

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! MACCHINA DI VON NEUMANN! UNITÀ FUNZIONALI fondamentali! Processore

Dettagli

Architettura del Calcolatore

Architettura del Calcolatore Francesco Folino FUNZIONI DI UN CALCOLATORE Elaborazione Memorizzazione Trasferimento Controllo MACCHINA DI VON NEUMANN TRASFERIMENTO Obiettivo: permettere lo scambio di informazioni tra le varie componenti

Dettagli

Architettura del computer

Architettura del computer Architettura del computer Il computer digitale e' una macchina in grado di risolvere problemi eseguendo istruzioni appositamente specificate Una sequenza di istruzioni che descrive come eseguire questo

Dettagli

Informatica di base 4 crediti 32 ore!!

Informatica di base 4 crediti 32 ore!! Informatica di base 4 crediti 32 ore!! Programma Architettura dei computer L informazione ed il computer Le reti dei calcolatori I sistemi operativi La programmazione Informazioni utili Utilizzo dei computer

Dettagli

ARCHITETTURA DEL CALCOLATORE

ARCHITETTURA DEL CALCOLATORE ARCHITETTURA DEL CALCOLATORE AVVERTENZE Questi appunti non vogliono essere degni sostituti di un buon libro di testo e hanno il solo scopo di aiutare gli studenti dei corsi di informatica che affrontano

Dettagli

Il processore - CPU (CENTRAL PROCESSING UNIT)

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

Dettagli

INFORMATICA & BIOINFORMATICA. INFORMATICA BIOINFORMATICA Lezioni 16 ore 8 ore

INFORMATICA & BIOINFORMATICA. INFORMATICA BIOINFORMATICA Lezioni 16 ore 8 ore INFORMATICA & BIOINFORMATICA INFORMATICA BIOINFORMATICA Lezioni 16 ore 8 ore Venerdi 9.30-11.15 Giovedi 9.30-10.15 Laboratori 16 ore 16 ore Frequenza obbligatoria Ricevimento Dipartimento di Psicologia

Dettagli

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II) 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 La inserita nella architettura dell elaboratore Informatica Facoltà di Medicina Veterinaria a.a.

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Cos'è un computer? 3 Cos'è un computer? È un dispositivo in grado di Elaborare

Dettagli

Architettura del calcolatore (Seconda parte)

Architettura del calcolatore (Seconda parte) Architettura del calcolatore (Seconda parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin LINGUAGGIO E ORGANIZZAZIONE DEL CALCOLATORE Linguaggio assembly

Dettagli

Introduzione all'architettura dei Calcolatori. Maurizio Palesi

Introduzione all'architettura dei Calcolatori. Maurizio Palesi Introduzione all'architettura dei Calcolatori Maurizio Palesi 1 Agenda Architettura generale di un Sistema di Elaborazione La memoria principale Il sottosistema di comunicazione La CPU Miglioramento delle

Dettagli

Tecniche della Programmazione, , Parte1

Tecniche della Programmazione, , Parte1 Tecniche della Programmazione, 2017-18, Parte1 Per alcune slide di questa lezione ho tratto spunto, o brutalmente usato, quelle della raccolta dei proff. F.Frati e C.Limongelli, che ringrazio Tecniche

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come

Dettagli

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante A.A. 2018/2019 Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Architettura di Von Neumann Modello concettuale di un architettura di computer che permette di rappresentare,

Dettagli

Corso di Fondamenti di Informatica Elementi di Architettura

Corso di Fondamenti di Informatica Elementi di Architettura di Cassino e del Lazio Meridionale Corso di Informatica Elementi di Architettura Anno Accademico 2016/2017 Francesco Tortorella Modello di von Neumann Bus di sistema CPU Memoria Centrale Interfaccia Periferica

Dettagli

CPU. ALU e Registri della CPU. Elementi della CPU. CPU e programmazione (Parte 1) Central Processing Unit, processore

CPU. ALU e Registri della CPU. Elementi della CPU. CPU e programmazione (Parte 1) Central Processing Unit, processore CPU CPU e programmazione (Parte 1) La CPU (Central Processing Unit) e` in grado di eseguire dei programmi, cioe` sequenze di istruzioni elementari ( istruzioni macchina ) Idea fondamentale dell'architettura

Dettagli

Memoria centrale (RAM) Registri della CPU. Definizioni. Architettura considerata in CPUSim. Programma in linguaggio macchina

Memoria centrale (RAM) Registri della CPU. Definizioni. Architettura considerata in CPUSim. Programma in linguaggio macchina Architettura considerata in CPUSim Linguaggio macchina -- esempio in CPUSim Manuale di CPU Sim Memoria con 128 celle Indirizzi da 12 bit Registri usuali per un architettura di Von Neumann (, IR,, ) Un

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come

Dettagli

Architettura di un calcolatore: primi cenni introduttivi. Calcolatore: sottosistemi

Architettura di un calcolatore: primi cenni introduttivi. Calcolatore: sottosistemi Corso di Calcolatori Elettronici I A.A. 2011-2012 Architettura di un calcolatore: primi cenni introduttivi Lezione 1 (seconda parte) Prof. Roberto Canonico Università degli Studi di Napoli Federico II

Dettagli

Fondamenti di Informatica A. A / 1 9

Fondamenti di Informatica A. A / 1 9 Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 1 8 / 1 9 Architettura di Von Neumann Architettura di Von Neumann: l Unità di Elaborazione L Unità di Elaborazione L unità di elaborazione (CPU) contiene

Dettagli

Architettura di un calcolatore: primi cenni introduttivi

Architettura di un calcolatore: primi cenni introduttivi Corso di Calcolatori Elettronici I Architettura di un calcolatore: primi cenni introduttivi ing. Alessandro Cilardo Corso di Laurea in Ingegneria Biomedica Architettura di un calcolatore Cosa significa

Dettagli

Introduzione al Personal Computer

Introduzione al Personal Computer Introduzione al 1. Monitor 2. CPU 3. Scheda Madre (Motherboard) 4. Memoria Volatile (RAM) 5. Schede di espansione (PCI, ) 6. Alimentazione 7. Supporto ottico 8. Memoria di mass (Hard disk) 9. Tastiera

Dettagli

La memoria principale

La memoria principale La memoria principale DRAM (Dynamic RAM) il contenuto viene memorizzato per pochissimo tempo per cui deve essere aggiornato centinaia di volte al secondo (FPM, EDO, SDRAM, RDRAM) SRAM (Static RAM) veloce

Dettagli

Lezione 1: L hardware

Lezione 1: L hardware Architettura del calcolatore Lezione 1: L hardware Architettura Componenti e funzionamento Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle

Dettagli

Architettura di von Neumann

Architettura di von Neumann Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Architettura di von Neumann Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università

Dettagli

Architettura di von Neumann

Architettura di von Neumann Fondamenti di Informatica per la Sicurezza a.a. 2007/08 Architettura di von Neumann Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università

Dettagli

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile) Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) La macchina di Von Neumann Le periferiche Software (tutto ciò che non e tangibile) Il sistema operativo I programmi applicativi

Dettagli

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Il processore. Istituzionii di Informatica -- Rossano Gaeta Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). La macchiana di Von Neumann: Non distingueva fra RAM

Dettagli

Esame di INFORMATICA ARCHITETTURA DI VON NEUMANN. Lezione 4 ARCHITETTURA DI VON NEUMANN

Esame di INFORMATICA ARCHITETTURA DI VON NEUMANN. Lezione 4 ARCHITETTURA DI VON NEUMANN Università degli Studi di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA A.A. 2008/09 Lezione 4 ARCHITETTURA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE memoria centrale Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). John von Neumann (Neumann János) (December 28, 1903

Dettagli

Laboratorio di Informatica L-A 1

Laboratorio di Informatica L-A 1 ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). La macchina di Von Neumann: Non distingueva fra RAM

Dettagli

Architettura hardware

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

Dettagli

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno. Trasferimento Ambiente esterno Controllo Informatica Mario Pavone - Dept. Mathematics & Computer Science - University of Catania mpavone@dmi.unict.it Rappresentazione dell Informazione L informazione viene

Dettagli

Sistemi di numerazione

Sistemi di numerazione SOMMARIO Sistemi di numerazione...2 Sistema decimale (o a base 10)...2 Sistema binario...2 Operazioni sui numeri binari...3 Espressioni logiche...4 Definizione...4 Prodotto Logico : AND...4 Somma Logica

Dettagli

ARCHITETTURA DI UN ELABORATORE. Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).

ARCHITETTURA DI UN ELABORATORE. Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). ARCHITETTURA DI UN ELABORATORE Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). MACCHINA DI VON NEUMANN UNITÀ FUNZIONALI fondamentali Processore (CPU)

Dettagli

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi Corso di Calcolatori Elettronici I A.A. 2012-2013 Architettura di un calcolatore: introduzione Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Architettura dei calcolatori Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Architettura dei calcolatori 2 Cos'è un computer?

Dettagli

Il primo elaboratore moderno

Il primo elaboratore moderno Il primo elaboratore moderno Quando ha avuto inizio la travolgente evoluzione tecnologica che ha portato agli attuali computer? A parte le dimensioni e le prestazioni (e altri dettagli), l ENIAC (1946)

Dettagli

Architettura di un elaboratore. Il modello di von Neumann

Architettura di un elaboratore. Il modello di von Neumann Architettura di un elaboratore Il modello di von Neumann 4(5) componenti fondamentali unita di elaborazione: CPU memoria centrale: RAM periferiche (memoria di massa) bus di sistema bus di sistema CPU RAM

Dettagli

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo. Corso integrato di Sistemi di Elaborazione odulo I Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Il Processore (CPU) 2 rchitettura del processore CPU Unità di Controllo Unità ritmetica Logica egistri

Dettagli

Componenti e connessioni. Capitolo 3

Componenti e connessioni. Capitolo 3 Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura

Dettagli

Elementi di Informatica Chiara Epifanio

Elementi di Informatica Chiara Epifanio epifanio@math.unipa.it Informatica Informatica Informatica INFORMATICA = INFORMAzione + automatica Scienza che studia le informazioni e il loro trattamento automatizzato Insieme delle teorie, dei processi

Dettagli

Programmazione per BioInformatica Introduzione. Docente. Programma del corso. Nicola Drago

Programmazione per BioInformatica Introduzione. Docente. Programma del corso. Nicola Drago Programmazione per BioInformatica Introduzione Nicola Drago nicoladrago@univrit Dipartimento di Informatica Università di Verona Docente Nicola Drago Dip Di Informatica e-mail: nicoladrago@univrit Programma

Dettagli

LABORATORIO DI INFORMATICA

LABORATORIO DI INFORMATICA LABORATORIO DI INFORMATICA Corso di laurea in Scienze della Formazione Primaria a.a.2014/2015 A cura del Prof. Sergio Miranda LEZIONE N.3 Architettura di Von Neumann PREMESSA Caratteristica fondamentale

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2016/2017 1 Programma del corso Informatica di

Dettagli

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria

Dettagli

Esame di INFORMATICA Lezione 4

Esame di INFORMATICA Lezione 4 Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Il sottosistema di memorizzazione (memoria) contiene dati + istruzioni, inseriti inizialmente tramite

Dettagli

Note sull architettura del calcolatore

Note sull architettura del calcolatore Note sull architettura del calcolatore 1 Algoritmo Problema Preparazione di una torta Programmazione del VCR MCD tra due numeri Algoritmo Sequenza ordinata di istruzioni che risolve il problema specifico

Dettagli

Lezione 15. L elaboratore Elettronico

Lezione 15. L elaboratore Elettronico Lezione 15 Architettura di un calcolatore L elaboratore Elettronico Un elaboratore elettronico è una macchina elettronica in grado di elaborare dati secondo le specifiche fornite da un algoritmo Internamente

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Il Processore (CPU) 2 rchitettura del processore CPU Unità di Controllo Unità ritmetica Logica

Dettagli

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) Computer elaboratore di informazione riceve informazione in ingresso (input) elabora questa informazione restituisce informazione ottenuta elaborando

Dettagli

L architettura del calcolatore (Seconda parte)

L architettura del calcolatore (Seconda parte) L architettura del calcolatore (Seconda parte) Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin ORGANIZZAZIONE DEL CALCOLATORE: RICHIAMI

Dettagli

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente

Dettagli

architettura degli elaboratori Alberto Ferrari Alberto Ferrari Informatica e Laboratorio di Programmazione

architettura degli elaboratori Alberto Ferrari Alberto Ferrari Informatica e Laboratorio di Programmazione architettura degli elaboratori Alberto Ferrari architettura la macchina di von Neumann memorie Input / Output canali di comunicazione CPU registri istruzioni struttura dell elaboratore o la struttura dei

Dettagli

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno. Trasferimento Ambiente esterno Controllo Informatica Mario Pavone - Dept. Mathematics & Computer Science - University of Catania mpavone@dmi.unict.it Architettura di Von Neumann PC$ Registri$ ALU$ Memoria$di$

Dettagli

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann Architettura Corso di Laurea in Ingegneria Biomedica aa 2003/2004 Ing. Antonio Coronato 1 Argomenti Modello di Von Neumann, Bus, Memoria centrale e dispositivi Data Path delle architetture di Von Neumann

Dettagli

Componenti di un processore

Componenti di un processore Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria

Dettagli

Calcolatore: sottosistemi

Calcolatore: sottosistemi Calcolatore: sottosistemi Processore o CPU (Central Processing Unit) Memoria centrale Sottosistema di input/output (I/O) CPU I/O Memoria Calcolatore: organizzazione a bus Il processore o CPU Unità di controllo

Dettagli

Terza lezione 21 ottobre 2016

Terza lezione 21 ottobre 2016 Terza lezione 21 ottobre 2016 Condizione per la conversione A/D Il teorema di Shannon (o di Nyquist) fornisce la condizione necessaria affinché un segnale dopo il campionamento possa nuovamente essere

Dettagli

Principi operativi dei computer. Capitolo 7 Fluency Conoscere e usare l informatica

Principi operativi dei computer. Capitolo 7 Fluency Conoscere e usare l informatica Principi operativi dei computer Capitolo 7 Fluency Conoscere e usare l informatica I soliti sospetti Processore Sistema operativo Software Istruzioni Ciclo macchina Memoria Hardware componente Com è fatto

Dettagli

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi G L O S S A R I O BIT: acronimo di Binary Digit. E l unità elementare di informazione. Può assumere solo il valore 0 o 1. CALCOLATORE: macchina che opera la trasformazione dei dati (informazioni) HARDWARE:

Dettagli

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi 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

Componenti principali

Componenti principali Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria

Dettagli

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche 3 tipi di istruzioni macchina Linguaggio macchina e assembler 1) trasferimento tra RAM e registri di calcolo della CPU 2) operazioni aritmetiche: somma, differenza, moltiplicazione e divisione 3) operazioni

Dettagli

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Microelettronica Corso introduttivo di progettazione di sistemi embedded Microelettronica Corso introduttivo di progettazione di sistemi embedded Architettura dei sistemi a microprocessore prof. Stefano Salvatori A.A. 2017/2018 Eccetto dove diversamente specificato, i contenuti

Dettagli

Programmazione A.A Architettura dei Calcolatori. ( Lezione V ) Componenti hardware e loro schema funzionale

Programmazione A.A Architettura dei Calcolatori. ( Lezione V ) Componenti hardware e loro schema funzionale Programmazione A.A. 2002-03 I Architettura dei Calcolatori ( Lezione V ) Componenti hardware e loro schema funzionale Prof. Giovanni Gallo Dr. Gianluca Cincotti Dipartimento di Matematica e Informatica

Dettagli

Il sistema di elaborazione

Il sistema di elaborazione Il sistema di elaborazione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 15 Maggio 2015 Obiettivi Codifica delle istruzioni e dei dati per l esecuzione automatica Architettura dei

Dettagli

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Microelettronica Corso introduttivo di progettazione di sistemi embedded Microelettronica Corso introduttivo di progettazione di sistemi embedded Architettura dei sistemi a microprocessore prof. Stefano Salvatori A.A. 2014/2015 Eccetto dove diversamente specificato, i contenuti

Dettagli

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi Corso di Calcolatori Elettronici I A.A. 2010-2011 Architettura di un calcolatore: introduzione Lezione 18 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso

Dettagli

Capitolo 2. Elaborazione dei dati. Mauro Giacomini Pearson Addison-Wesley. All rights reserved

Capitolo 2. Elaborazione dei dati. Mauro Giacomini Pearson Addison-Wesley. All rights reserved Capitolo 2 Elaborazione dei dati Mauro Giacomini 2007 Pearson Addison-Wesley. All rights reserved Capitolo 2: Elaborazione dei dati 2.1 Architettura del Computer 2.2 Linguaggio macchina 2.3 Esecuzione

Dettagli

Informatica e Bioinformatica anno 2013/2014

Informatica e Bioinformatica anno 2013/2014 Informatica e Bioinformatica anno 2013/2014 Architettura degli Elaboratori Mauro Conti 18 marzo 2014 1/38 Informatica: una Prima Definizione Informatica = Infor mazione automatica Informatica è la scienza

Dettagli

Struttura di un sistema di elaborazione. SDE: basi. Descrizione dei componenti (2) Descrizione delle componenti

Struttura di un sistema di elaborazione. SDE: basi. Descrizione dei componenti (2) Descrizione delle componenti Struttura di un sistema di elaborazione Architettura di Von Neumann Componenti Hardware di un SDE Processo e Processore CPU Memoria Centrale SDE: basi Un SDE è formato da elementi di natura diversa (elettrica,

Dettagli

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO ARCHITETTURA DI UN CALCOLATORE ELETTRONICO Per architettura di un calcolatore elettronico si intende l'insieme delle principali unità funzionali di un calcolatore ed il modo in cui queste interagiscono.

Dettagli

Il modello di von Neumann

Il modello di von Neumann 1 Organizzazione di (quasi) tutti gli elaboratori moderni: personal computer, workstation, portatili, smartphone,... CPU memoria Control Unit I/O ALU 2 Il cuore è la CPU (Control Processing Unit): esegue

Dettagli

L elaboratore. Fondamenti di Informatica S.Badaloni Ing. Aerospaziale A.A. 2003/04

L elaboratore. Fondamenti di Informatica S.Badaloni Ing. Aerospaziale A.A. 2003/04 L elaboratore Fondamenti di Informatica S.Badaloni Ing. Aerospaziale A.A. 2003/04 un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico computazioni risale al 600

Dettagli