LINGUAGGI DI PROGRAMMAZIONE E CODIFICA PROGRAMMI

Documenti analoghi
DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione

Linguaggi di programmazione

Introduzione alla programmazione. Walter Didimo

Il linguaggio di programmazione Python

LINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware

LINGUAGGI DI ALTO LIVELLO

Unità di apprendimento 6. Il software: dal linguaggio alla applicazione

Algoritmi, linguaggi e programmi. Emilio Di Giacomo e Walter Didimo

Informatica. Terzo anno Prof. A. Longheu

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori

Linguaggi di programmazione

FONDAMENTI DI INFORMATICA

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Struttura del calcolatore

Concetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri

Linguaggi di Programmazione

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

la traduzione dei programmi ed introduzione a Java

Rappresentazione con i diagrammi di flusso (Flow - chart)

Programmazione C Massimo Callisto De Donato

Marta Capiluppi Dipartimento di Informatica Università di Verona

Linguaggi di programmazione e astrazione

Linguaggi per COMUNICARE. Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni

Algoritmo Linguaggio macchina Linguaggi simbolici Compilatori ed Interpreti

Linguaggi di alto livello, compilatori e interpreti

Sommario. Linguaggi per la rappresentazione di algoritmi. Linguaggi formali. Sintassi e semantica: esempio. Linguaggio naturale: sintassi

Concetti di base dell ICT

Formalismi per la descrizione di algoritmi

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Concetti Introduttivi. Il Computer

Fondamenti di programmazione e Laboratorio di introduzione alla programmazione (modulo 1)

Il linguaggio del calcolatore: linguaggio macchina e linguaggio assembly

Il calcolatore. Architettura di un calcolatore (Hardware)

Capitolo 3 L elaborazione e la strutturazione dell informazione

Algoritmi e Linguaggi

Prof.Claudio Maccherani 1995

Cosa è l Informatica?

Programmazione strutturata

PROBLEMI ALGORITMI E PROGRAMMAZIONE

Programmazione: Sommario

Fondamenti di Algoritmi

; programma MOV AX, DATO_1. ; somma al contenuto dell' accumulatore il contenuto del registro B

Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1

STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER

Linguaggi e moduli. Dott. Franco Liberati

Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni

Cos è. In un linguaggio di programmazione si possono distinguere:

La Programmazione. Programmare Macchine Astratte Compilazione / Interpretazione Java. Laboratorio di Programmazione - Luca Tesei

Introduzione al funzionamento di un calcolatore elettronico

Informatica Generale Andrea Corradini I linguaggi di programmazione

Sorgenti di errore. Laboratorio di Informatica 1

Corso di Informatica di Base

Corso di Linguaggi di Programmazione + Laboratorio

programmazione A.A Elementi di Informatica ( Lezione VI ) Linguaggi di programmazione Prof. Giovanni Gallo Dr.

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

Unità Didattica 2 I Linguaggi di Programmazione

Algoritmi e Programmi

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema

Introduzione al software. Maurizio Gabbrielli Università di Bologna

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

Programmazione di INFORMATICA e Laboratorio

Elementi di informatica

È una notazione con cui è possibile descrivere gli algoritmi.

Risoluzione di problemi con l uso dell elaboratore elettronico

Linguaggi di Programmazione

Laboratorio di Programmazione

LABORATORIO di INFORMATICA

Fasi della programmazione. Gabriella Trucco

A proposito di informatica

Corso di Architettura (Prof. Scarano) 09/04/2002

Introduzione alla Programmazione. Giselda De Vita

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi

SEZIONE 1.0 Fondamenti

Linguaggi di programmazione

Corso di Fondamenti di Informatica Linguaggi di Programmazione

DESCRIZIONI RIGOROSE c7

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica

Traduzione ed Interpretazione

E una notazione per descrivere gli algoritmi.

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Calcolatori Elettronici Parte VIII: linguaggi assemblativi

Introduzione alla Programmazione ad. Oggetti (OOP)

Orario del corso. Contenuti del corso. Modalità d esame. Analisi Numerica 1 a.a. 2011/2012

Macchine astratte, linguaggi, interpretazione, compilazione

Informatica. Come si risolve un problema?

Linguaggi, compilatori e interpreti

Introduzione alla programmazione

La Rappresentazione Dell informazione

Lezione 1. Problemi Algoritmi Programmi

LA CODIFICA DELLE INFORMAZIONI

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione

Esempio di Patto Formativo per la classe terza

Lezione 8. Soluzione di un problema Problema. Soluzione di un problema. Comprensione del Problema. Analisi. Introduzione agli algoritmi

n Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

Elementi di programmazione Algoritmi Flow Chart, Fasi della programmazione Linguaggi Elementi di programmazione ad oggetti

Teoria dell Informazione

Transcript:

LINGUAGGI DI PROGRAMMAZIONE E CODIFICA PROGRAMMI Giacomo Piscitelli pag. 1/10

Dall Algoritmo al Programma Metodo risolutivo problema algoritmo Linguaggio programma Individuazione di un metodo risolutivo Scomposizione del procedimento in un insieme ordinato di passi Rappresentazione dei dati e dell algoritmo attraverso un formalismo comprensibile dal calcolatore Giacomo Piscitelli pag. 2/10

Riflessioni Perché l esecutore sia il calcolatore, è necessario che l algoritmo sia descritto unicamente ricorrendo alle operazioni che il calcolatore conosce e sa eseguire. È necessario che le operazioni siano formulate nel suo linguaggio. LINGUAGGIO DI PROGRAMMAZIONE Linguaggio per descrivere gli algoritmi in forma comprensibile (e quindi eseguibile) da un calcolatore. Giacomo Piscitelli pag. 3/10

Dalla descrizione alla codifica di un algoritmo descrive l'algoritmo Il risolutore del problema a > < b che viene codificato da Il programmatore if a!=b {...} else {...} e il codice viene eseguito da Il calcolatore Giacomo Piscitelli pag. 4/10

NOTA STORICA SUI LINGUAGGI DI PROGRAMMAZIONE All inizio (negli anni 40)... i linguaggi di programmazione prevedono che l uomo descriva le operazioni costituenti l algoritmo direttamente nella forma (numerica) comprensibile alla macchina. LINGUAGGIO DI PROGRAMMAZIONE LINGUAGGIO DI MACCHINA codice operativo operando 1 operando 2 modo indirizzamento istruzione di macchina l uomo deve direttamente conoscere il linguaggio di macchina le operazioni sono espresse in forma numerica il sistema di numerazione è quello binario il modo di indirizzamento va specificato per ciascun operando Giacomo Piscitelli pag. 5/10

NOTA STORICA SUI LINGUAGGI DI PROGRAMMAZIONE continua Successivamente (all inizio degli anni 50)... vengono introdotti linguaggi di programmazione che prevedono operazioni descritte tramite simboli mnemonici. LINGUAGGIO SIMBOLICO LINGUAGGIO DI MACCHINA TEST LA REG1, ALFA etichetta codice operativo operandi istruzione di un linguaggio di programmazione simbolico le operazioni sono sempre elementari, ma un po più vicine al linguaggio naturale. vengono introdotte le macro-operazioni. viene introdotto un particolare programma che traduce dal linguaggio di programmazione simbolico al linguaggio di macchina (assemblatore) Giacomo Piscitelli pag. 6/10

Poi (alla fine degli anni 50) NOTA STORICA SUI LINGUAGGI DI PROGRAMMAZIONE continua... il linguaggio di programmazione prevede operazioni di più alto livello, descritte tramite frasi del linguaggio naturale. LINGUAGGIO DI ALTO LIVELLO >> LINGUAGGIO DI MACCHINA IF ((alfa*beta - gamma) 20, 10, 10 10 IF (gamma) 20, 20, 15 15 delta = delta + gamma alfa = alfa - gamma GOTO 30 20 delta = delta - gamma alfa = alfa + gamma 30 CONTINUE istruzioni di un linguaggio di programmazione di alto livello I linguaggi di alto livello : FORTRAN, COBOL, PL1,... Giacomo Piscitelli pag. 7/10

Quindi (negli anni 70) NOTA STORICA SUI LINGUAGGI DI PROGRAMMAZIONE continua... il linguaggio di programmazione viene sempre più rigorosamente basato sui principi, che intanto vengono meglio definiti, alla base di una corretta programmazione. IF ((alfa*beta >= gamma) AND (gamma>0)) THEN delta = delta + gamma; alfa = alfa - gamma; ELSE delta = delta - gamma; alfa = alfa + gamma; esempio di istruzione di un linguaggio formale di alto livello I linguaggi formali di alto livello: ALGOL, PASCAL, C, ADA,... le operazioni sono descritte quasi in linguaggio naturale. vengono introdotti i sotto-programmi. il programma di traduzione diviene più articolato e complesso. Giacomo Piscitelli pag. 8/10

I linguaggi di programmazione sono classificati in linguaggi di basso livello (linguaggi macchina e linguaggi assembler), e linguaggi di alto livello come il C. Giacomo Piscitelli pag. 9/10

Recentemente (all inizio degli anni 90) NOTA STORICA SUI LINGUAGGI DI PROGRAMMAZIONE continua... il linguaggio di programmazione tende a basarsi sulla descrizione di come interagiscono gli oggetti che costituiscono una applicazione. I linguaggi di programmazione ad oggetti: C++, EIFFEL, SMALLTALK, JAVA... il linguaggio di programmazione è basato sul concetto matematico di funzione I linguaggi funzionali: LISP... il linguaggio è basato sui paradigmi della logica matematica I linguaggi logici: PROLOG... il linguaggio è basato su elementi descrittivi e grafici I linguaggi per il web: HTTP, XML Giacomo Piscitelli pag. 10/10