G. Amodeo, C. Gaibisso Programmazione di Calcolatori Lezione VII Il compilatore e le sue opzioni Programmazione di Calcolatori: il compilatore e le sue.

Slides:



Advertisements
Presentazioni simili
Informatica Generale Marzia Buscemi
Advertisements

La struttura fisica e logica di un elaboratore
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
Procedure In assembler.
Organizzazione della memoria
Definizione e tipi di implementazione
Elaboratore e Sistemi Operativo
Massa Laura Mela Enrica
Prova di completamento: selezione di domande
Architettura di un sistema informatico Hardware
Dr. Francesco Fabozzi Corso di Informatica
Architetture dei Calcolatori (Lettere j-z) Il Processore (2)
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)
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L’attività di.
Struttura dei sistemi operativi (panoramica)
Il Linguaggio Macchina
Codifica di algoritmi linguaggio macchina vs programmazione strutturata Lab Programmazione - turno /2006.
Unità Didattica 2 I Linguaggi di Programmazione
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
Fondamenti di Informatica1 Software di base Tra il linguaggio macchina (basso livello) e i linguaggi evoluti (alto livello) esiste uno strato di software.
Espressioni condizionali
La macchina di von Neumann
Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Architettura dell’elaboratore
Il Modello logico funzionale dell’elaboratore
ARCHITETTURA DEGLI ELABORATORI
Architettura degli Elaboratori II (canale P-Z) Linguaggi e moduli
Introduzione al linguaggio assembly del microprocessore a parte
Introduzione al linguaggio assemby del microprocessore a parte
Lezione 1 Linguaggi di programmazione – Algoritmi –Istruzioni
Architettura del calcolatore
Dimitri Caruso Classe 2^ Beat ISIS G. Meroni Anno Scolastico 2007/08
Lo sviluppo del software e i linguaggi di programmazione
G. Amodeo, C. Gaibisso Programmazione di Calcolatori Lezione X Ingresso/Uscita di Interi Programmazione di Calcolatori: Ingresso/Uscita 1.
Unità centrale di processo
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Architettura di una CPU
ORGANIZZAZIONE DI UN SISTEMA DI ELABORAZIONE
Informatica A.A. 2009/2010 Parte 2 L’Elaboratore Corso A: Prof. Stefano Berardi Corso B: Prof. Ugo de’ Liguoro
Calcolatori Elettronici Il Processore
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Calcolatori Elettronici Il Processore (2)
CALCOLATORI ELETTRONICI
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.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
L’esecuzione dei programmi
Informatica Generale Marzia Buscemi
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
FI - Algoritmi e Programmazione 1 Variabili Consentono di aumentare notevolmente la potenza espressiva. Una variabile è caratterizzata da:  Un nome 
1 Laboratorio di Programmazione di Sistema - C Susanna Pelagatti Ricevimento: Me ,
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Informatica Lezione 4 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
Come esegue le istruzioni il microprocessore Un’istruzione è sempre composta da più operazioni elementari.
Il Processore Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale L’elaborazione avviene eseguedo.
Presentazione di sistemi Ambrosio Federica Anna Esposito 3C inf.
Click to add text L’ Unità di Elaborazione. Struttura : Unità di controllo: coordina attività CPU ALU: unità aritmetico-logica, esegue operazioni tra.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Programmazione e Laboratorio di Programmazione
Programmazione e Laboratorio di Programmazione
Transcript della presentazione:

G. Amodeo, C. Gaibisso Programmazione di Calcolatori Lezione VII Il compilatore e le sue opzioni Programmazione di Calcolatori: il compilatore e le sue opzioni 1

G. Amodeo, C. Gaibisso I passi della compilazione 1.Preprocessing 1.1rimozione dei commenti 1.2interpretazione delle direttive per il preprocessore 2.Compilazione 2.1Generazione del codice assembler 2.2Generazione dei moduli oggetto 3.Linking Programmazione di Calcolatori: il compilatore e le sue opzioni2

G. Amodeo, C. Gaibisso Il preprocessing Programmazione di Calcolatori: il compilatore e le sue opzioni3 rimozione dei commenti interpretazione delle direttive per il preprocessore

G. Amodeo, C. Gaibisso Compilazione Programmazione di Calcolatori: il compilatore e le sue opzioni4 Generazione del codice assembler: traduzione del codice sorgente ricevuto dal preprocessore in linguaggio assembler

G. Amodeo, C. Gaibisso Compilazione Programmazione di Calcolatori: il compilatore e le sue opzioni5 MOV AL, #61h Esempio: memorizza il valore esadecimale 61 nel registro di nome AL Linguaggio assembler: linguaggio di basso livello che fornisce un minimo livello di astrazione (utilizzo di codici mnemonici in luogo di codici numerici) rispetto alle istruzioni eseguibili dal microprocessore

G. Amodeo, C. Gaibisso Compilazione Programmazione di Calcolatori: il compilatore e le sue opzioni6 Esempio: #61hMOV AL Generazione dei moduli oggetto : traduzione del codice assembler in una sequenza di istruzioni macchina non ancora eseguibili a causa, anche, di riferimenti esterni MOV AL, #61h

G. Amodeo, C. Gaibisso Compilazione Programmazione di Calcolatori: il compilatore e le sue opzioni7 Riferimenti esterni: minnieMOV AL MOV AL, minnie ???????? riferimento esterno al modulo

G. Amodeo, C. Gaibisso CPU: larchitettura Architettura Hw dei sistemi8 Program Counter (16 bit) +1 Buffer Indirizzi (16 bit) Buffer Dati (8 bit) W (8 bit) Z (8 bit) Circuiti di Controllo Registro Istruzione (8 bit) CU Registro Aritmetico ARegistro Aritmetico B ALU Sommatore Memoria Contiene lindirizzo in memoria dellistruzione in esecuzione Registro contenente lindirizzo della locazione interessata dalla prossima operazione di lettura/scrittura Memorizza: 1.Il risultato di una elaborazione da parte della ALU 2.Il risultato di unoperazione di lettura 3.Un dato da memorizzare Contiene il codice operativo dellistruzione in esecuzione Memorizzano dati o indirizzi durante le operazioni interne

G. Amodeo, C. Gaibisso Linking Programmazione di Calcolatori: il compilatore e le sue opzioni9 Linker: programma che combina uno o più moduli oggetto generati durante la fase di compilazione in un unico file eseguibile Problema: esistenza allinterno dei moduli oggetto di riferimenti ad altri moduli (chiamate di funzioni, salti, variabili, …)

G. Amodeo, C. Gaibisso Riconoscere i file Programmazione di Calcolatori: il compilatore e le sue opzioni10 EstensioneDescrizione.cfile sorgente.h file generalmente copiato dal preprocessore allinterno di un file sorgente.o modulo oggetto

G. Amodeo, C. Gaibisso Opzioni del compilatore Programmazione di Calcolatori: il compilatore e le sue opzioni11 Determinare la versione del compilatore : gcc -v

G. Amodeo, C. Gaibisso Opzioni del compilatore Programmazione di Calcolatori: il compilatore e le sue opzioni12 Assegnare un nome al file eseguibile: gcc nome_sorgente –o nome_eseguibile

G. Amodeo, C. Gaibisso Opzioni del compilatore Programmazione di Calcolatori: il compilatore e le sue opzioni13 Generazione modulo oggetto: gcc –c nome_sorgente

G. Amodeo, C. Gaibisso Opzioni del compilatore Programmazione di Calcolatori: il compilatore e le sue opzioni14 Chiamare il preprocessore gcc –E nome_sorgente –o nome_destinazione

G. Amodeo, C. Gaibisso Contenuto di stdio.h Opzioni del compilatore Programmazione di Calcolatori: il compilatore e le sue opzioni15

G. Amodeo, C. Gaibisso Messaggi del compilatore Programmazione di Calcolatori: il compilatore e le sue opzioni16 1.Messaggi di errore: indicativi di errori che impediscono la generazione delleseguibile interrompono la compilazione 2.Warning: indicativi di condizioni che potrebbero, tra laltro, inficiare la portabilità del codice non interrompono la compilazione

G. Amodeo, C. Gaibisso Messaggi di errore Programmazione di Calcolatori: il compilatore e le sue opzioni17

G. Amodeo, C. Gaibisso Warning Programmazione di Calcolatori: il compilatore e le sue opzioni18 Utilizzare il massimo livello di warning: gcc –Wall nome_sorgente

G. Amodeo, C. Gaibisso Warning Programmazione di Calcolatori: il compilatore e le sue opzioni19 Utilizzare il massimo livello di warning: gcc –Wall nome_sorgente

G. Amodeo, C. Gaibisso Warning Programmazione di Calcolatori: il compilatore e le sue opzioni20

G. Amodeo, C. Gaibisso Warning Programmazione di Calcolatori: il compilatore e le sue opzioni21