Elementi di programmazione
|
|
|
- Corinna Nicolosi
- 8 anni fa
- Просмотров:
Транскрипт
1 Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Elementi di programmazione Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.1/20
2 Macchina virtuale virtuale [vir-tu-à-le] agg. che esiste in potenza ma non si è ancora realizzato; fittizio, non reale. Si usa il termine macchina virtuale per indicare l astrazione della macchina fisica realizzata dal software ai vari livelli. Esempio: periferiche mappate in memoria: si usano delle operazioni che non hanno nulla a che vedere con la realtà fisica, ma facilitano l uso dei dispositivi. Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.2/20
3 Virtualizzazione A livello di utente sistema operativo interfaccia (tira, schiaccia) A livello di programmatore linguaggi paradigmi di programmazione Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.3/20
4 Risoluzione automatica di problemi Dato un problema: specifiche descrizione dei requisiti a cui dovrà soddisfare la soluzione per essere considerata corretta progetto procedimento con cui si individua o si inventa una soluzione soluzione tecnica che consente di risolvere il problema Nell informatica, la soluzione è espressa tramite un algoritmo. Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.4/20
5 Algoritmo Dato un problema e un esecutore, l algoritmo è: una successione finita di passi elementari (direttive) eseguibili senza ambiguità dall esecutore, che risolve il problema dato. Caratteristiche: sequenzialità viene eseguito un passo dopo l altro secondo un ordine specificato (flusso di esecuzione) univocità i passi elementari devono poter essere eseguiti in modo univoco dall esecutore, e quindi devono essere descritti in una forma eseguibile per l esecutore Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.5/20
6 Algoritmo e programmazione Un buon algoritmo deve prevedere tutti i casi significativi che derivano dall esecuzione di ogni passo elementare. La descrizione di un algoritmo per un esecutore automatico deve avere una formulazione generale: la soluzione individuata non deve dipendere solo da valori predefiniti dei dati. Esempio: programma che calcola l area del cerchio di raggio 3 cm (NO) programma che calcola l area del cerchio di raggio dato dall utente (SÌ) Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.6/20
7 Elementi di un algoritmo oggetti Entità su cui opera l algoritmo: vengono generalmente chiamate dati, ma, oltre ai dati iniziali del problema, possono anche essere risultati intermedi. operazioni Interventi che si possono effettuare sugli oggetti, cioè sui dati: calcoli, confronti, assegnamenti, operazioni di I/O. flusso di controllo Indica le possibili evoluzioni dell esecuzione delle operazioni, cioè le possibili successioni dei passi dell algoritmo. Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.7/20
8 Esempi di algoritmi Adatti ad un esecutore umano: ricette di cucina spartiti musicali istruzioni di montaggio di un mobile Generalmente contengono riferimenti a: quantità soggettive descrizioni approssimative informazioni mancanti perché implicite Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.8/20
9 Descrizione di un algoritmo Un algoritmo adatto per un esecutore automatico deve essere descritto tramite un formalismo (linguaggio) rigoroso e non ambiguo costituito da: vocabolario insieme di elementi per la descrizione di oggetti, operazioni e flusso di controllo sintassi insieme di regole per la composizione degli elementi del linguaggio in frasi eseguibili e costrutti di controllo semantica insieme di regole per l interpretazione degli elementi e delle istruzioni sintatticamente corrette Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.9/20
10 Linguaggio di programmazione gli oggetti vengono descritti tramite nomi simbolici (detti anche identificatori) le operazioni vengono descritte tramite operatori, funzioni e procedure il flusso di controllo viene descritto tramite opportuni costrutti di controllo Nota: il flusso di controllo è differente dal flusso di esecuzione flusso di controllo descrive tutte le possibili successioni di operazioni che possono essere realizzate dal programma nella sua esecuzione flusso di esecuzione è la sequenza di operazioni percorsa durante una particolare esecuzione del programma Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.10/20
11 Linguaggi di descrizione Oltre ai linguaggi di programmazione sono stati sviluppati dei linguaggi, detti semiformali, adatti alla fase di sviluppo di algoritmi: essi presentano alcune caratteristiche di formalità tipiche dei linguaggi di programmazione, ma permettono l utilizzo di descrizioni in linguaggio naturale, non rigorose. schemi a blocchi (diagrammi di flusso) blocchi di varie forme geometriche connessi da archi orientati. La direzione degli archi indica il flusso di controllo, mentre la forma dei blocchi indica la natura del blocco stesso (operazione, confronto, operazione di I/O) pseudocodice strutture di controllo di un linguaggio di programmazione e operazioni descritte in linguaggio naturale Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.11/20
12 Sottoprogrammi Programmi complessi vengono progettati seguendo uno schema gerarchico in cui il problema iniziale viene suddiviso in sottoproblemi e così via. Risolvere ogni sottoproblema con un sottoprogramma comporta: Chiarezza del programma principale i dettagli di basso livello sono descritti a parte nei sottoprogrammi, evidenziando la struttura di controllo generale Sintesi per i sottoproblemi presenti in più parti del problema principale, richiamando il sottoprogramma, si evitano di ripetere le stesse sequenze di operazioni Efficienza sottoproblemi di uso comune sono disponibili, già risolti da esperti programmatori, raccolti nelle cosiddette librerie Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.12/20
13 Programma eseguibile Perché un algoritmo sia eseguibile da un calcolatore, esso deve essere tradotto in una sequenza di istruzioni codificate nel codice operativo caratteristico della CPU del calcolatore che lo eseguirà. L operazione di traduzione da un linguaggio di programmazione ad un altro è una procedura ripetitiva, che può essere automatizzata. Tale operazione è effettuata da un programma apposito, che può essere di due tipi: interprete traduce solo le istruzioni del flusso di esecuzione la traduzione viene effettuata ad ogni esecuzione compilatore traduce l intero programma la traduzione viene effettuata una sola volta Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.13/20
14 Catena di programmazione La generazione di un programma eseguibile consiste quindi nella traduzione automatica di un algoritmo espresso il un linguaggio simbolico (programma sorgente) in un algoritmo espresso in codice macchina (programma eseguibile) Le fasi che portano un algoritmo ad essere eseguito sono: editing composizione del programma sorgente compiling traduzione in codice binario linking collegamento con i sottoprogrammi di libreria loading caricamento in memoria esecuzione esecuzione Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.14/20
15 Editing Generalmente un algoritmo viene codificato in un programma sorgente tramite un apposito programma chiamato editor. Questa fase ha termine con la produzione di un file di testo detto file programma sorgente. Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.15/20
16 Compiling La fase di traduzione, o compilazione, utilizza un programma (detto compilatore). Esso elabora il file sorgente, riconoscendo i simboli, le parole e i costrutti del linguaggio e producendo: la forma binaria del codice macchina corrispondente (file programma oggetto) oppure, una segnalazione degli errori sintattici Gli errori sintattici, cioè le violazioni delle regole della sintassi del linguaggio, rendono il programma non correttamente associabile ad un significato e quindi ne impediscono la traduzione. Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.16/20
17 Linking Nella fase di linking (collegamento), un programma (detto linker) collega il file oggetto con le funzioni di libreria. Esso produce: un programma eseguibile oppure, una segnalazione di errore nella citazione delle routine di libreria Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.17/20
18 Loading Per poter essere eseguito, un file eseguibile deve essere caricato in memoria centrale. Questa funzione viene svolta da un programma chiamato loader (caricatore), che individua una regione di memoria adeguata all esecuzione del programma. Se tale spazio in memoria non esiste, segnala un errore di caricamento per memoria insufficiente. Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.18/20
19 Esecuzione Il programma in esecuzione elabora i dati in ingresso e produce i risultati in uscita. Possibili errori (non di tipo sintattico!): calcoli scorretti esempio: overflow calcoli impossibili esempio: divisione per zero errori semantici esempio: errore nella scrittura di un operazione Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.19/20
20 Linguaggi di programmazione I linguaggi di programmazione sono classificabili in almeno quattro grandi categorie, parzialmente sovrapposte: Imperativi le istruzioni descrivono esplicitamente le modifiche del contenuto della memoria (Basic, Pascal, C, Fortran, Cobol) Funzionali il programma è costituito da una funzione che ha per argomenti altre sottofunzioni (Lisp) Dichiarativi (o logici) il sorgente è costituito da una serie di asserzioni e di regole; il programma consiste in una dimostrazione di veridicità di un asserzione, senza indicare il flusso di esecuzione (Prolog) Orientati agli oggetti il programma è costituito da entità (oggetti) che comunicano tra loro scambiandosi messaggi; incapsulamento, ereditarietà e polimorfismo (Ada, Smalltalk, Java) Stefano Ferrari Università degli Studi di Milano Fondamenti di Informatica per la Sicurezza Elementi di programmazione a.a. 2003/04 p.20/20
Linguaggi di programmazione
Linguaggi di programmazione Fondamenti di Informatica Daniele Loiacono Ho definito un algoritmo e adesso? Daniele Loiacono Dall algoritmo all esecuzione q Come deve essere formalizzato un algoritmo affinché
I Linguaggi di Programmazione
I Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche del Linguaggio
LINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware 1 LINGUAGGI DI ALTO LIVELLO Barriera di astrazione Fortran Cobol Basic Pascal Python C
LINGUAGGI DI ALTO LIVELLO
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada
Linguaggi di Programmazione
Linguaggi di Programmazione E una notazione con cui e possibile descrivere gli algoritmi. Programma: e la rappresentazione di un algoritmo in un particolare linguaggio di programmazione. In generale, ogni
Linguaggi di Programmazione
Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche del Linguaggio
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 C Fortran Cobol Modula-2 Basic Pascal Algol Ada Lisp Smalltalk Simula67 Scheme C++ Prolog ML AN - 1995 Linguaggi di alto livello IMPERATIVI C Fortran Modula-2
Linguaggi, Traduttori e le Basi della Programmazione
Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi
Il linguaggio di programmazione Python
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani ([email protected])
DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione
DAGLI ALGORITMI AI LINGUAGGI Linguaggi di Programmazione E` una notazione con cui e` possibile descrivere gli algoritmi. Programma: e` la rappresentazione di un algoritmo in un particolare linguaggio di
Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1
Lez. 8 La Programmazione Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1 Dott. Pasquale De Michele Dott. Raffaele Farina Dipartimento di Matematica e Applicazioni Università di Napoli
Introduzione alla programmazione. Walter Didimo
Introduzione alla programmazione Walter Didimo Programmi Un programma è una frase (anche molto lunga) che descrive delle azioni che devono essere svolte da un calcolatore La frase deve essere dettagliata
Unità Didattica 2 I Linguaggi di Programmazione
Unità Didattica 2 I Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche
Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
Linguaggi di alto livello, compilatori e interpreti
Linguaggi di alto livello, compilatori e interpreti Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Il punto della situazione STATO DATI
Lez. 5 La Programmazione. Prof. Salvatore CUOMO
Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente
Informatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione
Informatica 3 LEZIONE 1: Introduzione Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Informatica 3 Lezione 1- Modulo 1 Introduzione al corso Introduzione Corso di Informatica 3
ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)
1 LEZIONE 9 ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) Laboratorio di Informatica per l Educazione A. A. 2014/2015 IN SINTESI (ELABORAZIONE) Con i COMPUTER, le macchine diventano
Concetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri
Concetti di Base sulla Programmazione Prof.Ing.S.Cavalieri 1 La Programmazione Dato un problema INFORMATICO, programmare significa: Definire i dati in ingresso e il risultato che si vuole raggiungere Definire
Algoritmi e Linguaggi
Algoritmi e Linguaggi Programmi e linguaggi Un calcolatore è solo un esecutore rapidissimo di istruzioni Un programma è un insieme di istruzioni codificate in un opportuno linguaggio 2 / 21 Linguaggi e
FONDAMENTI DI INFORMATICA
Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia [email protected] A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica
Introduzione alla programmazione strutturata
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Prof. ELIO TOPPANO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio
Unità di apprendimento 6. Dal problema al programma
Unità di apprendimento 6 Dal problema al programma Unità di apprendimento 6 Lezione 1 Conosciamo gli algoritmi e i linguaggi In questa lezione impareremo: cos è un problema come affrontarlo come descrivere
Introduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni
Introduzione a Java IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni Linguaggi di programmazione Ogni programma viene scritto utilizzando un linguaggio specializzato, formale e comprensibile da
FONDAMENTI DI INFORMATICA
Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia [email protected] A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica
Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione
Scrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica
FODAMETI DI IFORMATICA Prof. PIER LUCA MOTESSORO Prof. ELIO TOPPAO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio Toppano
Programmazione C Massimo Callisto De Donato
Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato [email protected] www.cs.unicam.it/massimo.callisto LEZIONE
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura [email protected] 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
Rappresentazione con i diagrammi di flusso (Flow - chart)
Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo
Corso di Fondamenti di Informatica Linguaggi di Programmazione
Corso di Fondamenti di Informatica Linguaggi di Programmazione Anno Accademico Francesco Tortorella Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di
Fondamenti VBA. Che cos è VBA
Fondamenti VBA Che cos è VBA VBA, Visual Basic for Application è un linguaggio di programmazione, inserito nelle applicazioni Office di Microsoft (Ms Word, Ms Excel, Ms PowerPoint, Visio). VBA è una implementazione
CONCETTI FONDAMENTALI
CONCETTI FONDAMENTALI Algoritmo Procedura di trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante una sequenza di istruzioni. Linguaggio di programmazione Programma
Cosa è un programma. Informatica di Base -- R.Gaeta 18
Cosa è un programma Il programma è la scatola nera che risolve il problema computazionale; Il programma è una sequenza di istruzioni che devono essere eseguite; Il programma è la traduzione per il computer
Linguaggi di programmazione
Parte 2 Linguaggi di programmazione Livello di Astrazione per la Codifica di un Algoritmo Si può risolvere un problema senza prima fissare un insieme di azioni, di mosse elementari possibili per l elaboratore?
Linguaggi di programmazione e astrazione
Linguaggi di programmazione e astrazione i linguaggi di programmazione ad alto livello moderni sono il più potente strumento di astrazione messo a disposizione dei programmatori che possono, con un solo
Corso di Informatica di Base
Corso di Informatica di Base A.A. 2011/2012 Algoritmi e diagrammi di flusso Luca Tornatore Cos è l informatica? Calcolatore: esecutore di ordini o automa Programma: insieme di istruzioni che possono essere
Concetti Introduttivi. Il Computer
Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta
Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema
Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina
Programmazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Linguaggi di Programmazione Sintassi
Università degli Studi di Verona. Algoritmie Diagrammidiflusso. Gennaio Sergio Marin Vargas. Dipartimento di Biotecnologie
Università degli Studi di Verona Dipartimento di Biotecnologie Laurea in Biotecnologie Corso di Informatica2014/2015 Algoritmie Diagrammidiflusso Gennaio 2015 - Sergio Marin Vargas Problemi e soluzioni
Algoritmi e Programmi
Algoritmi e Programmi Algoritmi e Programmi Le azioni che si compiono ogni giorno sono finalizzate alla risoluzione di problemi. Problema di elaborazione Insieme dati di partenza Risultato ricerca Algoritmi
Salvatore Cuomo Prolusione
Salvatore Cuomo Prolusione 1 Lezione n. Parole chiave: Algoritmo, Esecutore Corso di Laurea: Informatica Insegnamento: Programmazione II, modulo di Laboratorio Email Docente: salvatore.cuomo@unina. it
Algoritmi, linguaggi e programmi. Emilio Di Giacomo e Walter Didimo
Algoritmi, linguaggi e programmi Emilio Di Giacomo e Walter Didimo Problemi e algoritmi Il calcolatore permette di risolvere in maniera automatica diversi problemi "di calcolo". Es: calcolo della media
Cosa è l Informatica?
Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore
Il Software programmabili programma algoritmo
Il Software La proprietà fondamentale dei calcolatori e` quella di essere programmabili cioè in grado di svolgere compiti diversi a seconda delle istruzioni fornite dall utente mediante un programma, ossia
AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori
AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli
Introduzione alla programmazione
Introduzione alla programmazione Cosa è un calcolatore? Hardware Processore Memoria Periferiche Funzionamento Esegue istruzioni elementari Esegue istruzioni molto velocemente Deve essere programmato Il
Lezione 16. Il Software di base
Lezione 16 Software di base Il Software di base Con il termine software di base si intende l insieme dei programmai che consentono ad un utente di eseguire operazioni base come costruire e mandare in esecuzione
Calcolatori Elettronici Parte VIII: linguaggi assemblativi
Anno Accademico 2013/2014 Calcolatori Elettronici Parte VIII: linguaggi assemblativi Prof. Riccardo Torlone Universita di Roma Tre Linguaggi di Programmazione Linguaggi ad alto livello Maggiore espressività
Informatica Generale Andrea Corradini I linguaggi di programmazione
Informatica Generale Andrea Corradini 17 - I linguaggi di programmazione Sommario Cos'è un linguaggio di programmazione? Una prospettiva storica: linguaggi di prima, seconda e terza generazione I paradigmi
Linguaggi, compilatori e interpreti
Linguaggi, compilatori e interpreti 1 Il codice macchina Ciascun calcolatore ha un ampio insieme di istruzioni che è in grado di eseguire. Le istruzioni vengono rappresentate mediante sequenze di bit 001000100011
Il Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)
Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la
ALGORITMI: PROPRIETÀ FONDAMENTALI
ALGORITMI: PROPRIETÀ FONDAMENTALI Non si può risolvere un problema senza prima fissare un insieme di azioni, i di mosse elementari possibili per l'esecutore. Bisogna conoscerne le caratteristiche, le mosse
Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1
Concetti base della Tecnologia dell informazione Algoritmi Come interpreta un computer un problema? Algoritmi Algoritmo: sequenza ordinata di istruzioni per risolvere un problema (tradotto: sequenza di
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso
Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi
Informatica Generale Andrea Corradini 12 - Gli algoritmi e la risoluzione di problemi Sommario Che significa risolvere un problema? Algoritmi e programmi Rappresentazione di algoritmi Lo pseudocodice Primitive
L ELABORATORE ELETTRONICO
L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti
COMPILAZIONE. Tarsformazione di linguaggi
COMPILAZIONE Tarsformazione di linguaggi Le fasi della compilazione File sorgente Compilazione File sorgente File sorgente File sorgente Compilazione Compilazione Compilazione Libreria di run-time File
PROBLEMI ALGORITMI E PROGRAMMAZIONE
PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL
Problemi, algoritmi, calcolatore
Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione
Capitolo 3 L elaborazione e la strutturazione dell informazione
Capitolo 3 L elaborazione e la strutturazione dell informazione Problemi e algoritmi Definire il problema Eliminare le ambiguità nella formulazione del problema Individuare il risultato che si vuole ottenere,
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento
Fondamenti d Informatica: linguaggi formali. Barbara Re, Phd
Fondamenti d Informatica: linguaggi formali Barbara Re, Phd Agenda } Introdurremo } La nozione di linguaggio } Strumenti per definire un linguaggio } Espressioni Regolari 2 Linguaggio } Da un punto di
