Non a caso viene definito linguaggio macchina. di Cassino. C. De Stefano Corso di Fondamenti di Informatica Università degli Studi

Documenti analoghi
Corso di Fondamenti di Informatica Linguaggi di Programmazione

Corso di Fondamenti di Informatica Linguaggi di Programmazione

Corso di Fondamenti di Informatica Linguaggi di Programmazione

Linguaggi di programmazione

Corso di Calcolatori Elettronici I (fino al 23/11) Corso di Calcolatori Elettronici

Introduzione alla programmazione

3. Programmi e algoritmi

Linguaggi, Traduttori e le Basi della Programmazione

Linguaggi di Programmazione

1. Un array è: A. Un simbolo usato nel linguaggio C per rappresentare un numero non specificato di variabili B. Un insieme di indirizzi di memoria

Sommario Linguaggi, messaggi e comunicazione. Introduzione ai Linguaggi di Programmazione. Linguaggio (1) Linguaggio (2)

La formalizzazione dell informazione: Dati e Diagrammi di Flusso

Sommario Linguaggi, messaggi e comunicazione. Introduzione ai Linguaggi di Programmazione. Linguaggio. Messaggio

Elementi di programmazione

Informatica Problema Algoritmo Programma

Introduzione al Linguaggio C Corso di Informatica Laurea in Fisica

Linguaggi, messaggi e comunicazione Traduzione di programmi Interpreti e compilatori Introduzione al processo di compilazione

DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione

Linguaggi di Programmazione

Elementi di programmazione

Teoria dell Informazione

Il Software programmabili programma algoritmo

Introduzione alla programmazione strutturata

Scrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica

Sommario Obiettivo della programmazione e ciclo di sviluppo di programmi. Programmi. Ciclo di sviluppo di programmi. Obiettivo

Pag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi

Architettura degli Elaboratori 01-Introduzione Introduzione

Lezione n. 2i Informatica e tecnologia informatica Sistema di elaborazione Algoritmo Linguaggi di programmazione Realizzazione di un programma

Computer. Capitolo 2. 05/04/2012 continuazione 1

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1

Informatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione

INFORmazione+autoMATICA. Perché saperne di piu? Le fasi della programmazione. Cosa intendiamo per programmazione

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

Concetti di base dell ICT

I Linguaggi di Programmazione

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

Linguaggi di Programmazione e Paradigmi. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Informatica 3. Informatica 3. Lezione 1- Modulo 1. LEZIONE 1: Introduzione. Concetti di linguaggi di programmazione. Introduzione

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

FONDAMENTI DI INFORMATICA

Linguaggi di programmazione

Il linguaggio di programmazione Python

Le fasi della programmazione

Lezione 1. Problemi Algoritmi Programmi

Algoritmi e Linguaggi

Programmazione. Dipartimento di Matematica. Ing. Cristiano Gregnanin. 29 febbraio Corso di laurea in Matematica

Il linguaggio macchina

PROBLEMI E ALGORITMI

CONCETTI FONDAMENTALI

Introduzione al funzionamento di un calcolatore elettronico

Introduzione all informatica

Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria. Docente : Ing. Secondulfo Giovanni Anno Accademico

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

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

C++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI

Linguaggi di alto livello. Barriera di astrazione. Pascal. Cobol. Fortran. Basic. Modula-2. Lisp. Simula67 Scheme. Smalltalk C++ Prolog AN

Unità Didattica 2 I Linguaggi di Programmazione

Traduzione e interpretazione

LINGUAGGI DI ALTO LIVELLO

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

Cosa è l Informatica?

Dall algoritmo al calcolatore: concetti introduttivi. Fondamenti di Programmazione

Linguaggi di programmazione

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

Architettura di Von Neumann

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

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

Lezione 1. Problemi Algoritmi Programmi

Laboratorio di Informatica. Introduzione

Linguaggi, compilatori e interpreti

Introduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17

o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori

Linguaggi di programmazione

ITI M. FARADAY. Programmazione a. s

Introduzione. Informatica B. Daniele Loiacono

Salvatore Cuomo Prolusione

Linguaggi, compilatori e interpreti

Il software: dall algoritmo al linguaggio macchina

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

Linguaggi di Programmazione

INFORMATICA. L informatica comprende:

permette di utilizzare lo stesso programma su CPU diverse (con opportuni traduttori)

FONDAMENTI DI INFORMATICA

Marco Tarini - Università dell'insubria A.A. 2016/17. Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate

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

DISPENSE DI PROGRAMMAZIONE LINGUAGGI A TIPIZZAZIONE FORTE: IL COSTRUTTO DI TIPO. TIPI SEMPLICI: TIPI PRE-DEFINITI E TIPI DEFINITI DAL PROGRAMMATORE.

Elementi di programmazione

LINGUAGGI DI ALTO LIVELLO

Fondamenti VBA. Che cos è VBA

Informatica Generale Andrea Corradini I linguaggi di programmazione

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 20 ottobre Corso di laurea in Economia

Programmazione. Andrea Passerini Informatica. Programmazione

Linguaggi di programmazione e astrazione

Introduzione alla programmazione. Walter Didimo

Transcript:

Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore che realizzano un particolare algoritmo, ma ma quali sono le caratteristiche di tale linguaggio? è codificato tramite sequenze di bit accede ai dati tramite gli indirizzi di memoria o i registri interni della CPU ogni istruzione può compiere solo azioni molto semplici non gestisce direttamente i tipi di dati di interesse è strettamente legato alla particolare macchina su cui è definito Non a caso viene definito linguaggio macchina

Se si volesse implementare un dato algoritmo attraverso la scrittura di un programma sarebbe quindi necessario: conoscere dettagliatamente tutti i codici operativi e la loro codifica decidere in quali registri (di memoria o interni alla CPU) vadano memorizzati i dati determinare, per ogni singola operazione richiesta dall algoritmo, la sequenza di istruzioni in linguaggio macchina che la realizzano definire un opportuna tecnica di codifica per ogni tipo di dati considerato limitarsi a utilizzare solo i calcolatori per cui esista una tale competenza, tenendo comunque presente che il programma scritto per un certo calcolatore non è eseguibile su altre macchine Impresa difficile, ma non impossibile

Esecutore umano linguaggio naturale gestione completa dei tipi istruzioni semanticamente ricche Calcolatore linguaggio rigido e complicato gestione dei tipi quasi nulla istruzioni estremamente semplici

Esecutore umano linguaggio naturale gestione completa dei tipi istruzioni semanticamente ricche, a volte ambigue orientato al problema Linguaggio di programmazione linguaggio formale, con costrutti precisi per la definizione dei dati e delle operazioni gestione completa dei tipi fondamentali; possibilità di definire tipi strutturati istruzioni che realizzano le principali azioni elaborative richieste orientato alla macchina Calcolatore linguaggio rigido e complicato gestione dei tipi quasi nulla istruzioni estremamente semplici

L uso di un linguaggio di programmazione permette di : realizzare un programma che implementa l algoritmo in maniera precisa ed in un linguaggio ad alto livello trascurare tutti i dettagli relativi alla rappresentazione dei dati nei registri definire un programma che non dipende dal particolare calcolatore su cui è stato realizzato In effetti, l utente non deve interagire con la macchina reale e le sue limitazioni, ma vede una macchina virtuale che nasconde le particolarità della macchina reale e con la quale è molto più agevole interagire.

Dal programma in linguaggio di programmazione al programma in linguaggio macchina I linguaggi di programmazione sono linguaggi formali, che rispettano delle regole rigide, riguardanti sia il lessico che la sintassi del linguaggio. In tal modo viene eliminata l ambiguità e le ridondanze tipiche del linguaggio naturale ed è possibile realizzare in modo automatico l analisi di un programma scritto in un linguaggio di programmazione e la sua traduzione in linguaggio macchina. I programmi che svolgonoquesto compito sono detti traduttori e si dividono in due categorie: compilatori interpreti

Le fasi per la realizzazione di un programma che possa essere eseguito da un calcolatore sono quindi: definizione dell algoritmo e dei dati implementazione dell algoritmo tramite un programma in un linguaggio ad alto livello traduzione in linguaggio macchina esecuzione del programma in linguaggio macchina

Nelle varie fasi c è l ausilio di opportuni programmi per: la scrittura del programma in linguaggio ad alto livello (text editors) la traduzione (compilatori o interpreti) la verifica in esecuzione (debuggers) Editor Traduttore esecuzione Linguaggio ad alto livello Linguaggio macchina