La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E3 Evoluzione dei linguaggi di programmazione.

Presentazioni simili


Presentazione sul tema: "© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E3 Evoluzione dei linguaggi di programmazione."— Transcript della presentazione:

1 © 2007 SEI-Società Editrice Internazionale, Apogeo Unità E3 Evoluzione dei linguaggi di programmazione

2 © 2007 SEI-Società Editrice Internazionale, Apogeo Obiettivi Conoscere le diverse categorie in cui si dividono i linguaggi di programmazione (linguaggi macchina, linguaggi assembler, linguaggi ad alto livello, linguaggi orientati agli oggetti) Conoscere i concetti di base dei traduttori, compilatori e interpreti

3 © 2007 SEI-Società Editrice Internazionale, Apogeo I linguaggi di programmazione I linguaggi di programmazione sono linguaggi formali in cui i singoli elementi e le regole di costruzione sintattica sono definiti in una grammatica, e possono essere classificati in base alla loro vicinanza al pensiero umano.

4 © 2007 SEI-Società Editrice Internazionale, Apogeo Linguaggi macchina Il linguaggio che un computer è in grado di eseguire direttamente è il linguaggio macchina allinterno del quale i programmi, il codice oggetto, sono costituiti da una sequenza di cifre binarie che codificano le istruzioni e i dati. A ogni istruzione in linguaggio macchina corrisponde unoperazione direttamente eseguibile dal processore. Le istruzioni sono strettamente legate allarchitettura dellelaboratore Ogni istruzione è costituita da un codice operativo e dagli operandi. Le istruzioni sono difficili da interpretare per luomo, ma facili per la macchina

5 © 2007 SEI-Società Editrice Internazionale, Apogeo Linguaggi Assembler Le istruzioni sono ancora legate alla macchina, ma sono rappresentate in un codice mnemonico, più facilmente leggibile dal programmatore. I programmi assembler, per essere eseguiti, devono essere tradotti in linguaggio macchina.

6 © 2007 SEI-Società Editrice Internazionale, Apogeo Linguaggi ad alto livello Hanno una sintassi precisa ma le loro istruzioni utilizzano simboli matematici e seguono il modo di ragionare e di esprimersi delluomo Per essere eseguiti dalla macchina devono essere tradotti in linguaggio macchina. Tra i più famosi linguaggi ad alto livello troviamo: COBOL, Fortran, Pascal e C.

7 © 2007 SEI-Società Editrice Internazionale, Apogeo Linguaggi ad alto livello (esempio) Nei linguaggi ad alto livello come il C unistruzione che somma due valori si scrive nel modo seguente: –a = a+b; Con a e b non si fa riferimento a locazioni fisiche della memoria del computer ma a variabili identificate da un nome e alle quali possono essere assegnati valori.

8 © 2007 SEI-Società Editrice Internazionale, Apogeo Linguaggi orientati agli oggetti C++ e Java sono linguaggi per la programmazione orientata agli oggetti (OOP, Object Oriented Programming). I linguaggi a oggetti si differenziano dagli altri linguaggi ad alto livello soprattutto perché consentono di modellare, in modo più naturale per luomo, gli elementi della realtà che deve essere rappresentata nella soluzione dei problemi. Un oggetto è un elemento concreto definito dalle sue caratteristiche e dai suoi comportamenti.

9 © 2007 SEI-Società Editrice Internazionale, Apogeo Traduttori Tutti i programmi non scritti in linguaggio macchina per essere eseguiti devono essere tradotti. Loperazione di traduzione viene eseguita in modo automatico da programmi traduttori resi disponibili spesso dalle stesse case costruttrici dei computer.

10 © 2007 SEI-Società Editrice Internazionale, Apogeo Assemblatori Un programma assembler per essere eseguito viene tradotto in linguaggio macchina da appositi programmi detti assemblatori

11 © 2007 SEI-Società Editrice Internazionale, Apogeo Compilatori Un programma in un linguaggio ad alto livello, (codice sorgente) per essere eseguito deve essere tradotto in linguaggio macchina: questo compito viene svolto da appositi programmi detti compilatori

12 © 2007 SEI-Società Editrice Internazionale, Apogeo Fasi Sono presenti due fasi distinte: compilazione ed esecuzione. Nel momento in cui si sta realizzando e provando il programma sarà necessario ripetere le due fasi, in modo da verificare leffetto delle modifiche apportate al codice. Successivamente il programma verrà utilizzato ed eseguito direttamente in codice oggetto. Una nuova traduzione sarà necessaria soltanto se verranno effettuate modifiche al programma originario.

13 © 2007 SEI-Società Editrice Internazionale, Apogeo Interpreti Per alcuni linguaggi le fasi di compilazione ed esecuzione non sono distinte, ma ogni istruzione del codice sorgente viene tradotta e poi eseguita. Anche se il codice sorgente non è stato modificato, tutte le volte che si esegue il programma in realtà lo si traduce e lo si esegue. Nel primo caso si parla di linguaggi compilati nel secondo di linguaggi interpretati.


Scaricare ppt "© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E3 Evoluzione dei linguaggi di programmazione."

Presentazioni simili


Annunci Google