Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Corso di Informatica Applicata Lezione 3 Università degli studi di Cassino Corso di.

Slides:



Advertisements
Presentazioni simili
Traduzione ed Interpretazione
Advertisements

Informatica Generale Marzia Buscemi
Classe III A A.s – 2011 Sistemi di Elaborazione e Trasmissione dell’Informazione 4 ore settimanali (2 laboratorio) Docenti Prof. Alberto Ferrari.
Dalla scrittura all’esecuzione
Evoluzione dei linguaggi di programmazione
Università degli Studi di Napoli Federico II Facoltà di Ingegneria Dipartimento di Informatica e Sistemistica Corso di Sistemi ad elevate prestazioni –
Generazione di Codice Intermedio
Architettura di un sistema informatico Hardware
3. Programmazione strutturata (testo di riferimento: Bellini-Guidi)
Programmazione Procedurale in Linguaggio C++
Laboratorio di informatica: ASSEMBLER
Algoritmi Paralleli e Distribuiti a.a. 2008/09
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Corso di Informatica (Programmazione)
Corso di Informatica Applicata - © 2005 Saverio De Vito Corso di Informatica Applicata Esercitazione Università degli studi di Cassino Corso di Laurea.
Corso di Informatica Applicata Lezione 6
Il Linguaggio Macchina
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
Estensioni allarchitettura di Von Neumann Vito Perrone Corso di Informatica A per Gestionali.
Fondamenti di Informatica1 Software di base Tra il linguaggio macchina (basso livello) e i linguaggi evoluti (alto livello) esiste uno strato di software.
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per lambiente e il territorio Il calcolatore Stefano Cagnoni e Monica Mordonini Dipartimento.
L’Architettura del Sistema di Elaborazione
Architettura di Calcolo
L' ARCHITETTURA DI VON NEUMANN
Introduzione al linguaggio assembly del microprocessore a parte
Introduzione al linguaggio assemby del microprocessore a parte
INFORMAZIONI GENERALI Web site: Att. DidatticaIns. UniversitarioA.A PROGRAMMA.
INFORMAZIONI GENERALI Web site: Att. DidatticaIns. UniversitarioA.A PROGRAMMA.
Architetture di Calcolo per le TLC
Architetture dei Calcolatori (Lettere j-z ) Il Processore
Architettura del calcolatore
Lo sviluppo del software e i linguaggi di programmazione
Introduzione al linguaggio assembly del microprocessore a parte
Unità centrale di processo

Sistemi ad elevate prestazioni Lezione 1
Architettura di una CPU
Prova intermedia Si rappresentino i seguenti numeri, espressi in decimale, in valore assoluto (con 8 bit), in complemento a 2 (con 8 bit), in complemento.
WATCHDOG TIMER E’ un oscillatore interno al  C, ma indipendente dal resto dei circuiti, il cui scopo è quello di rilevare eventuali blocchi della CPU.
Calcolatori Elettronici Il Processore
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
1 M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Rebaudengo - M. Sonza Reorda L’Assembler 8086 Istruzioni per.
CALCOLATORI ELETTRONICI
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali
Corso di Laurea in Informatica Architettura degli elaboratori a.a La macchina programmata Instruction Set Architecture (2) Istruzioni I-type Indirizzamento.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma “La Sapienza”
Architettura di un calcolatore e linguaggio macchina.
Sistema operativo Il Sistema Operativo gestisce le risorse hw e sw del sistema di elaborazione Facilita l'interazione tra utente e sistema Esistono diversi.
L’esecuzione dei programmi
Informatica Generale Marzia Buscemi
Fondamenti di Informatica1 Linguaggi Diversi tipi di linguaggi: –Imperativi –Funzionali –Dichiarativi Tutti basati sulla traduzione nell'unico linguaggio.
Il calcolatore Stefano Cagnoni e Monica Mordonini
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
 Il modello a memoria comunque trova impiego nelle architetture in cui esiste un’unica memoria a tutti i processi,per esempio macchine monoprocessore.
Corso di Informatica Applicata - Lezione I - © Saverio De Vito Corso di Informatica Applicata Introduzione Università degli studi di Cassino Corso.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Il sistema di elaborazione Marco D. Santambrogio – Ver. aggiornata al 15 Maggio.
Il Processore Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale L’elaborazione avviene eseguedo.
“ Pseudocodice ” Un programma per computer lavorerà su in insieme di “ variabili ” contenenti i dati del problema, soluzioni intermedie, soluzioni finali.
Click to add text L’ Unità di Elaborazione. Struttura : Unità di controllo: coordina attività CPU ALU: unità aritmetico-logica, esegue operazioni tra.
Corso di Informatica Applicata - Lezione 4 - © 2005 Saverio De Vito Corso di Informatica Applicata Introduzione Università degli studi di Cassino Corso.
Corso di Informatica Applicata Introduzione Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Ing. Saverio De.
© 2016 Giorgio Porcu - Aggiornamennto 18/03/2016 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Il Sistema Operativo Concorrenza e Grafi.
HARDWARE (2). MEMORIE Due classi di memoria MEMORIA CENTRALE –media capacità - ottima velocità MEMORIA DI MASSA elevata capacità - bassa velocità.
ALGORITMI, LINGUAGGI E PROGRAMMI Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Transcript della presentazione:

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Corso di Informatica Applicata Lezione 3 Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Ing. Saverio De Vito Tel.:

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Abbiamo inquadrato il processore nell ambito di architetture von Neumann-like; –Architettura di Von Neumann –Ciclo di Von Neumann Il processore come esecutore continuo di –istruzioni- –L istruzione è l operazione atomica eseguibile dalla macchina processore –Il set di istruzioni processore (ISA) definisce la macchina virtuale standard –Dualismo CISC-RISC, chi vince –In realtà, le istruzioni a livello macchina standard sono, in molti casi, microprogrammate ossia eseguite da una macchina virtuale sottostante detta Microprogramma Breve Riepilogo - Il processore

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Esecuzione Parallela Architetture SIMD [Single Instruction Multiple Data (flows)] –Es.: Architetture con ALU vettoriali +

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Esecuzione Parallela Architetture MIMD –Es.: Architetture multiprocessore Conflitti di accesso in memoria CPU MEM BUS Caching : CPU MEM BUS Shared MEM

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Pipelines Questa strategia viene adottata per ottenere una sorta di parallelismo in macchine di tipo SIMD: –L esecuzione della singola istruzione viene assegnata a parti specializzate del processore che possono essere alimentate (nella maggior parte dei casi) in maniera autonoma Prelevamento Istruzioni Analizzatore Calcolo Indirizzi Prelevamento Dati Esecuzione Istruzioni t T

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Istruzioni Macchina Le istruzioni macchina sono tipicamente costituite da stringhe binarie che codificano sostanzialmente: –La tipologia di istruzione –Gli operandi (Registri interni, Registri di Memoria, etc.) –La modalità di indirizzamento (semantica degli operandi) Le istruzioni della macchina possono essere definite mediante un linguaggio Assembly, molto vicino al livello macchina standard ma più semplice da trattare per un operatore umano La vicinanza alla macchina standard fanno sì che il linguaggio assembly risulti fortemente dipendente dalla macchina standard pur garantendo un certo carattere di generalità Durante questa unità didattica cercheremo di estrarre le caratteristiche generali di un linguaggio Assembly

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Linguaggio Assembly Il set di istruzioni Assembly, unito al – formato del programma, –alle modalità di specifica dette direttive, Definisce il linguaggio Assembly Il linguaggio assembly può essere associato però a macchine virtuali leggermente differenti dalla macchina standard

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Formato Istruzione Assembly ADD MOV JNZ MnemonicoOperando 1 REGA, [REGA], [REGA+REGC], (Operando 2) REGB codice operativo Modalità di Indirizzamento Numero di Operandi

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Programma Assembly Un programma assembly è tipicamente formato da sequenze di istruzioni di formato simile a quello precedentemente esposto. Le istruzioni possono essere etichettate per delimitare dei riferimenti lungo il Codice Le stesse istruzioni possono essere seguite da commenti che vengono ignorate in fase di traduzione verso il linguaggio della macchina standard Il codice vero e proprio viene tipicamente preceduto da direttive che specificano il processo di traduzione implementato dall Assemblatore

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Esempio label MnemonicoOperandiCommento Sequenza di caratteri alfanumerici Codice operativo o pseudocodice Operandi separati da virgole Ignorato dallassemblatore loop:lb $t1,0($a0)# Carica un carattere in $t1 beqz $t1,brk addi $a0,$a0,1 b loop Modi di indirizzamento

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Modalità di indirizzamento Gli operandi di una istruzione assembly descrivono in maniera sintetica gli oggetti della computazione effettuata dalla macchina virtuale associata. L operando, eventualmente un numero o un codice mnemonico relativo ad un registro, può di volta in volta assumere il valore semantico di un numero su cui effettuare la computazione, un registro contenente il valore, una locazione di memoria contenente il valore, un registro contenente l indirizzo di una locazione di memoria ecc. La semantica dell operando viene attribuita attraverso particolari codici (parentesi quadre, $ etc.)

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Indirizzamento Immediato La semantica più semplice per i codici operando è data dall utilizzo dell indirizzamento immediato. In questo caso il codice operando (numerico) è esso stesso il valore su cui si effettuerà la computazione Nell istruzione macchina corrispondente sarà incluso il valore dell operando. Non sarà necessario un ulteriore accesso alla memoria, una volta prelevata l istruzione dalla memoria il processore avrà a disposizione tutte le informazioini necessarie all esecuzione dell istruzione Es.: ADD AX, 1 (dove AX è un registro accumulatore)

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Indirizzamento Diretto Leggermente più complesso è il caso dell indirizzamento diretto dove il codice operando rappresenta l indirizzo del registro di memoria che contiene il valore necessario all esecuzione dell istruzione Ipotizzando di avere & come specificatore di indirizzamento diretto avremo: ADD AX,&A12E

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Indirizzamento tramite registri Concettualmente simile all indirizzamento diretto: Il valore dell operando è contenuto nel registro specificato: ADD AX, BX (BX è un secondo registro dell architettura ipotetica cui ci riferiamo)

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Indirizzamento Indiretto In questa modalità l indirizzo specifica quale parola contiene l indirizzo del valore cercato e non il valore stesso come avveniva nell indirizzamento diretto. ADD AX, [BX]

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Modalità di indirizzamento (2) Le modalità di indirizzamento presentate possono essere definite come principali. Esistono altri schemi di indirizzamento particolari che non tratteremo, ed altri come l indirizzamento tramite indice che analizzeremo più avanti. Gli schemi di indirizzamento supportati sono fortemente dipendenti dalla macchina.Ogni processore possiede un proprio insieme di schemi di indirizzamento che differisce da quello di altre architetture.

Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Istruzione Macchina (2) L istruzione macchina sarà quindi una stringa di bit di formato generale: COD. OperativoCampo Indirizzamento 1Campo Indirizzamento 2 (?) Le dimensioni in bit dei campi suddetti possono variare: Ad es. il campo di indirizzamento nel caso l operando sia un registro (indirizzamento diretto tramite registri) conterrà un numero di bit atto a codificare il numero di registri della macchina in esame. Il formato specifico delle istruzioni macchina è variabile con la tipologia di istruzione ed lo schema di indirizzamento