Evoluzione dei linguaggi di programmazione

Slides:



Advertisements
Presentazioni simili
Linguaggio C e C++.
Advertisements

C C++ &.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F1 Primi programmi.
I Linguaggi di programmazione
Traduzione ed Interpretazione
Informatica Generale Marzia Buscemi
Sistema operativo MS-DOS
Il Software.
Software di base: Linguaggi di Programmazione
Analisi e progettazione
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E1 Dallanalisi del problema alla definizione dellalgoritmo.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
Linguaggi algoritmici
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A1 Introduzione a Java.
Dalla scrittura all’esecuzione
Recupero debito quarto anno Primo incontro
I linguaggi di programmazione
Inizio… Linguaggi Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi Formali Linguaggi.
Algoritmi e Programmazione
Generalità Linguaggio e Macchina Astratta
3. Programmazione strutturata (testo di riferimento: Bellini-Guidi)
3. Programmazione strutturata (testo di riferimento: Bellini-Guidi)
Dr. Francesco Fabozzi Corso di Informatica
I Linguaggi Di Luca Brugnone 13/11/2007
Anno Accademico Corso di Informatica Informatica per Scienze Biologiche e Biotecnologie Anno Accademico
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Corso di Informatica (Programmazione)
Unità Didattica 2 I Linguaggi di Programmazione
Fondamenti di Informatica
Labortaorio informatica 2003 Prof. Giovanni Raho 1 INFORMATICA Termini e concetti principali.
Da Problema a Programmazione
PROGRAMMAZIONE: linguaggi
Introduzione al linguaggio assembly del microprocessore a parte
Introduzione al linguaggio assemby del microprocessore a parte
Lezione 1 Linguaggi di programmazione – Algoritmi –Istruzioni
Le basi della programmazione
Lo sviluppo del software e i linguaggi di programmazione
Implementazione di un linguaggio ad alto livello (con riferimento a Java)
R. Grande - Corso di Informatica '07
Algebra Booleana Come per la rappresentazione dell’informazione e la sua memorizzazione anche per la logica di elaborazione i computer digitali utilizzano.
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
ECDL Patente europea del computer
Linguaggi per COMUNICARE
Generalità Software1Luglio 2004 Generalità Software Luglio 2004.
DAmb Sergio Lovrinich 28 Settembre Descrizione Questo Software si propone di eseguire una Analisi del Codice Sorgente, mettendo a disposizione Strumenti.
Dal problema all’ algoritmo
la traduzione dei programmi
Elettronica Digitale (II Parte) 10-11_5 1 ELETTRONICA DIGITALE II (5) 6/12 Il processo di assemblaggio.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Circuiti logici.
LINGUAGGI DI PROGRAMMAZIONE Per comunicare comandi e dati ad un computer occorre un particolare linguaggio detto LINGUAGGIO MACCHINA, che è un insieme.
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma “La Sapienza”
Programmazione Attività di progettazione ed implementazione di programmi I programmi permettono di realizzare funzioni complesse su un hardware in grado.
Corso di Architetetture degli Elaboratori, A.A. 2004/ Architettura degli Elaboratori Elisa B.P. Tiezzi Orario ricevimento: Giovedì, ( Il materiale.
L’esecuzione dei programmi
Interpreti e compilatori
Concetti Fondamentali sulla Programmazione
1 Macchine astratte, linguaggi, interpretazione, compilazione.
Il software Claudia Raibulet
Informatica e Informatica di Base
Problemi, algoritmi e programmazione
Corsi di Laurea in Biotecnologie
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
Programmazione dei Calcolatori Elettronici
I linguaggi di programmazione -GALBIATI ALBERTO -ESPOSITO MATTIA.
LINGUAGGI DI PROGRAMMAZIONE E' un linguaggio formale dotato di una sintassi ben definita che viene utilizzato per scrivere programmi che realizzano algoritmi.
Unità di apprendimento 6
ALGORITMI, LINGUAGGI E PROGRAMMI Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Transcript della presentazione:

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

© 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 © 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. © 2007 SEI-Società Editrice Internazionale, Apogeo

© 2007 SEI-Società Editrice Internazionale, Apogeo Linguaggi macchina Il linguaggio che un computer è in grado di eseguire direttamente è il linguaggio macchina all’interno 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 un’operazione direttamente eseguibile dal processore. Le istruzioni sono strettamente legate all’architettura dell’elaboratore Ogni istruzione è costituita da un codice operativo e dagli operandi. Le istruzioni sono difficili da interpretare per l’uomo, ma facili per la macchina © 2007 SEI-Società Editrice Internazionale, Apogeo

© 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. © 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 dell’uomo 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. © 2007 SEI-Società Editrice Internazionale, Apogeo

Linguaggi ad alto livello (esempio) Nei linguaggi ad alto livello come il C un’istruzione 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. © 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 l’uomo, 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. © 2007 SEI-Società Editrice Internazionale, Apogeo

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

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

© 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 © 2007 SEI-Società Editrice Internazionale, Apogeo

© 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 l’effetto 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. © 2007 SEI-Società Editrice Internazionale, Apogeo

© 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. © 2007 SEI-Società Editrice Internazionale, Apogeo