Definire tramite una grammatica ad attributi il
|
|
- Gennaro Salvadori
- 6 anni fa
- Visualizzazioni
Transcript
1 1 ESERCIZI ESERCIZIO 1 Definire tramite una grammatica ad attributi il linguaggio L = {a n b n c n n 0} Implementare un analizzatore sintattico/ semantico a discesa ricorsiva Costruire le tabelle di analisi sintattico/ semantico per un analizzatore ascendente per il linguaggio L Mostrare le configurazioni per l analisi delle seguenti frasi aabbcc aabcc abcc 2
2 2 Stack Frase Azione $0a abcc spostamento $0a2 bcc R2 A-> n.a=0 $0a2{A,0}5 bcc R1 A0->aA1 n.a0=1+na1 $0{A,1}1 bcc spostamento $0{A,1}1b4 cc R4 B-> n.b=0 $0{A,1}1b4{B,0}8 cc R3 B0->bB1 nb0=1+nb1 $0{A,1}1{B,1}3 cc spostamento $0{A,1}1{B,1}3c7 c spostamento $0{A,1}1{B,1}3c7c7 $ R6 C-> n.c=0 $0{A,1}1{B,1}3c7c7{C,0}9 $ R5 C0->cC1 nc0=1+nc1 $0{A,1}1{B,1}3c7{C,1}9 $ R5 C0->cC1 nc0=1+nc1 $0{A,1}1{B,1}3{C,2}6 $ ACC $0{S,False} 3 ESERCIZIO 2 Definire tramite una grammatica ad attributi il linguaggio L = {a n b n c n/2 d 2n n 0} Implementare un analizzatore sintattico/ semantico a discesa ricorsiva Costruire le tabelle di analisi sintattico/ semantico per un analizzatore LALR per il linguaggio L Mostrare le configurazioni per l analisi delle seguenti frasi aabbcc aabcc abcc 4
3 ESERCIZIO 3 Definire una grammatica ad attributi che dato in ingresso un numero in base 2 generi la stringa che rappresenta il valore in base 8 Costruire le tabelle goto e action per l analisi sintattico/semantico del linguaggio definitio< 5 ESERCIZIO 4 Si definisca il linguaggio degli assegnamenti di espressioni intere e relazionali a variabili di tipo intero e booleano rispettivamente. Le espressioni intere sono espressioni contenente l operatore * e le parentesi. Le espressioni relazionali sono costituite dal confronto (==) di espressioni intere. Si supponga di avere nella tabella dei simboli il tipo di ogni identificatore. Si scriva uno schema per l analisi ascendente deterministica che verifichi la compatibilità dei tipi e restituisca il tipo dell escpressione o errore nel caso di incompatibilita dei tipi. 6 3
4 ESERCIZIO 5 Si definisca il linguaggio L = {ww w (0,1)*} utilizzando solo attributi di tipo intero e booleano Si implementi un analizzatore sintattico semantico per tale linguaggio 7 ESERCIZIO 6 Si definisca il linguaggio L delle parentesi sulle stringhe appartenenti al linguaggio universale (a b)* Un esempio di frase è (abb; ab; (aab; aba; )abbb; ()a; aa; ) Si costruisca una grammatica ad attributi tale per cui il linguaggio generato coincide con le stringhe di L(G) per le quali tutti gli identicatori (cioè le stringhe di a e di b) che si trovano allo stesso livello di annidamento siano distinti Ad esempio la frase precedente e corretta mentre la seguente non lo è (abb; ab; (aab; aba;)abbb; (aab; )a; aa; ) in quanto vi sono due sottostringhe aab allo stesso livello di annidamento (il secondo) 8 4
5 5 DEFINIZIONE GRAMMATICA E ATTRIBUTI S (S) S S T ; S S T a T T b T T La soluzione fa uso di 2 attributi ereditati: Env of S ha come valore un insieme di coppie (identif icatore. Livello) lev of S è un numero naturale che rappresenta il livello di annidamento Vi sono poi gli attributi sintetizzati a of S che può o assumere un valore booleano che denota la correttezza semantica di una frase upd of S che contiene una coppia (identif icatore. livello) val of T che e la stringa associata a un identicatore Env of S e inizializzato con l insieme vuoto e lev of S con il numero zero 9 GRAMMATICA AD ATTRIBUTI S 0 (S 1 ) S 2 lev of S 1 = lev of S lev of S 2 = lev of S 0 env of S 1 = env of S 0 env of S 2 = env of S 0 upd of S 1 { upd of S 0 = upd of S 1 upd of S 2 a of S 0 = a of S 1 && a of S 2 S 0 T ; S 1 lev of S 1 = lev of S upd of T = {(val of T, lev of S 0 )} env of S 1 = env of S 0 upd of T upd of S 0 = upd of S 1 {(val of T, lev of S 0 )} a of S 0 = a of S 1 && (val of T, lev of S 0 ) env of S 0 S upd of S = 0 a of S = True T 0 a T 1 val of T 0 = a val of T 1 T 0 b T 1 val of T 0 = b val of T 1 T val of T 0 = 10
6 6 ESERCIZIO 7 Si deve calcolare per mezzo di una grammatica ad attributi il valore scritto come una frazione di una espressione di numeri frazionari Ad esempio 1. ¼ + 2/5 + (1/2 + 3)/8 =348/ /3 + (1/2 + 3/4)/(1/4+1) =220/ (½ +3)/0 =indefinito L espressione può contenere i numeri interi, gli operatori + e / e le parentesi Si progettino la sintassi del linguaggio gli attributi semantici e le regole semantiche per il calcolo dell attributo valore espresso in modo frazionario- Si disegni l albero semantico decorato per il secondo esempio mostrato- Si indichi quale tecnica di valutazione degli attributi e possibile impiegare 11
Verificare se una grammatica e LL(1) e costruirne la tabella di parsing. Verificare se una grammatica e LR(0) e costruirne la tabele ACTION e GOTO
ANALISI SINTATTICA TIPO 1: Data un linguaggio scrivere una grammatica che lo generi TIPO 2: Verificare se una grammatica non contestuale è ambigua TiPO 3: Verificare se una grammatica e LL(1) e costruirne
DettagliL intero è o il valore zero o una stringa di cifre che inizia con una cifra diversa sa zero.
ANALISI SINTATTICA Data un linguaggio scrivere una grammatica che lo generi ESERCIZIO 1 Definire una grammatica per il linguaggio L = {ww w appartiene a (a, b)*} ESERCIZIO 2 Dato l alfabeto T=[0,1,2,3,4,5,6,7,8,9,/}
DettagliNozioni Preliminari e Terminologia. Alfabeti Stringhe Linguaggi
Nozioni Preliminari e Terminologia Alfabeti Stringhe Linguaggi Insiemi Def. Un insieme è una collezione non ordinata di oggetti o elementi Gli insiemi sono scritti tra { } Gli elementi sono inseriti tra
DettagliQuiz sui linguaggi CF
Fondamenti dell Informatica 1 semestre Quiz sui linguaggi CF Prof. Giorgio Gambosi a.a. 2014-2015 Problema 1: Si consideri la seguente grammatica context free G, dove S, NP, V P, P P, A sono i simboli
DettagliDefinizioni syntax-directed
Definizioni syntax-directed Esempio: Notazione infissa Notazione postfissa Produzioni E E 1 + T E E 1 T E T T 0 T 1 T 2... T 9 Regole semantiche E.t := E 1.t _T.t _ + E.t := E 1.t _T.t _ - E.t := T.t T.t
DettagliParte n.4 Linguaggi: Gerarchia ed Operazioni
Linguaggi di Programmazione Corso C Parte n.4 Linguaggi: Gerarchia ed Operazioni Nicola Fanizzi (fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari Gerarchia di Chomsky Sia
DettagliEspressioni Regolari
Espressioni Regolari Le espressioni regolari sono costituite dalle stringhe sull alfabeto Σ = Σ {+,,*,(,),φ} ottenute secondo le seguenti regole: 1. φ e ciascun membro di Σ sono Epressioni Regolari 2.
DettagliFondamenti 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
DettagliLinguaggi e Ambienti di Programmazione
Linguaggi e Ambienti di Programmazione Principi e tecniche diffuse che si incontrano spesso nelle applicazioni dell informatica. Compilatori Editor di struttura: riceve in input una sequenza di comandi
DettagliSipser, Capitolo 0. Alfabeti, Stringhe, Linguaggi
Sipser, Capitolo 0 Alfabeti, Stringhe, Linguaggi Def. Un insieme è una collezione non ordinata di oggetti o elementi Gli insiemi sono scritti tra { } Gli elementi sono inseriti tra le parentesi Insiemi
DettagliLinguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl
Approfondimento 2.1 Non è questo il testo dove trattare esaurientemente queste tecniche semantiche. Ci accontenteremo di dare un semplice esempio delle tecniche basate sui sistemi di transizione per dare
DettagliEsempio stringhe palindrome 1
Esempio stringhe palindrome 1 Automa per il riconoscimento del linguaggio L = {w c w R } A = < {s,f}, {a,b,c}, {a,b},!, s, { f } > con! che contiene le transizioni: 1. (( s, a, " ), (s, a)! [ push a] 2.
DettagliGrammatiche Parse trees Lezione del 17/10/2012
Fondamenti di Programmazione A.A. 2012-2013 Grammatiche Parse trees Lezione del 17/10/2012 AUTILI MARCO http://www.di.univaq.it/marco.autili/ Riassunto lezione precedente Sintassi vs Semantica Stringhe,
DettagliGrammatiche. Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione
Grammatiche Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione Esempio dei numeri interi Si consideri il linguaggio
DettagliQuiz sui linguaggi regolari
Fondamenti dell Informatica 1 semestre Quiz sui linguaggi regolari Prof. Giorgio Gambosi a.a. 2016-2017 Problema 1: Data l espressione regolare a, definita su {a, b}, descrivere il linguaggio corrispondente
DettagliMarta Capiluppi Dipartimento di Informatica Università di Verona
Marta Capiluppi marta.capiluppi@univr.it Dipartimento di Informatica Università di Verona Algebra di Boole Opera con i soli valori di verità 0 o 1 (variabili booleane o logiche) L'algebra booleana risulta
Dettaglia cura di Luca Cabibbo e Walter Didimo
a cura di Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 automi a pila automi a pila e grammatiche non contestuali notazioni sul livello degli esercizi: (*)
Dettagliacuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1
acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 richiami teorici sulle grammatiche di Chomsky esercizivari esercizi su grammatiche ed espressioni regolari
DettagliFondamenti d Informatica: lavoriamo con le grammatiche. Barbara Re, Phd
Fondamenti d Informatica: lavoriamo con le grammatiche Barbara Re, Phd Esercizio Grammatica e generazione stringhe Data una Grammatica ed una Stringa, verificare che la Stringa sia generata dalla Grammatica:
DettagliForme Normali. Forma normale di Chomsky. E caratterizzata da regole di due tipi. A! BC dove A, B, C $ V N A! a con a $ V T. Forma normale di Greibach
Forme Normali A partire da una grammatica Context-free G è sempre possibile costruire una grammatica equivalente G ovvero L(G) = L(G ) che abbiano le produzioni in forme particolari, dette forme normali.
DettagliI metodi formali dell Analisi Lessicale: Le Espressioni Regolar
I metodi formali dell Analisi Lessicale: Le Espressioni Regolari (ER) N.Fanizzi - V.Carofiglio 6 aprile 2016 1 Introduzione 2 3 4 5 Espressioni Regolari Dato un alfabeto finito X, una espressione regolare
DettagliAnalizzatore lessicale o scanner. Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser.
Analizzatore lessicale o scanner Dispensa del corso di Linguaggi e Traduttori A.A. 2005-2006 Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser. Lo scanner,
DettagliFondamenti di Programmazione Recupero Primo Parziale 30 Gennaio 2008 Traccia A
Fondamenti di Programmazione Recupero Primo Parziale 30 Gennaio 2008 Traccia A Cognome: Nome: Corso di Laurea N. Matricola: Giorno non preferito per l orale (Matematici) Giorno non preferito per l orale
DettagliEspressività e limitazioni delle grammatiche regolari
Espressività e limitazioni delle grammatiche regolari Vantaggi: Le grammatiche regolari consentono di esprimere una significativa classe di linguaggi: linguaggi con un numero di sequenze infinito grazie
DettagliLogica proposizionale
Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A7_2 V1.1 Logica proposizionale Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale
DettagliLinguaggi Regolari e Linguaggi Liberi
Linguaggi Regolari e Linguaggi Liberi Potenza espressiva degli automi Potenza espressiva delle grammatiche 9/11/2004 Programmazione - Luca Tesei 1 Linguaggi Regolari Tutti i linguaggi che possono essere
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
DettagliCenni alla rappresentazione dei tipi dato primitivi
Cenni alla rappresentazione dei tipi dato primitivi Fondamenti di Informatica R. Basili a.a. 2006-7 Numeri Naturali Alfabeto, A Un insieme finito di B simboli, A={a, b,. } Sequenze o Stringhe in A, A *
DettagliFondamenti di Informatica 2
Fondamenti di Informatica 2 Linguaggi e Complessità : Lezione 1 Corso Fondamenti di Informatica 2 Marco Schaerf, 2009-2010 Linguaggi e Complessità : Lezione 1 1 Logica proposizionale Linguaggio matematico
DettagliLinguaggi, 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
DettagliPumping lemma per i linguaggi Context-free
Pumping lemma per i linguaggi Context-free Sia L un linguaggio context-free. E possibile determinare una costante k, dipendente da L, tale che qualunque stringa z! L con z > k si può esprimere come z=
DettagliLinguaggi. Rosario Culmone, Luca Tesei. 20/10/2009 UNICAM - p. 1/32
Linguaggi Rosario Culmone, Luca Tesei 20/10/2009 UNICAM - p. 1/32 Alfabeto Un alfabeto è un insieme finito di simboli. Useremo Σ per denotare un alfabeto. Esempi di alfabeto sono: l alfabeto latino adottato
DettagliLinguaggi Regolari e Linguaggi Liberi
Linguaggi Regolari e Linguaggi Liberi Linguaggi regolari Potere espressivo degli automi Costruzione di una grammatica equivalente a un automa Grammatiche regolari Potere espressivo delle grammatiche 1
DettagliEspressioni e Comandi
Espressioni e Comandi March 24, 2017 Elementi di Base dei Programmi Ricordate? Macchina Astratta: Insieme di algoritmi e strutture dati che permettono di memorizzare ed eseguire programmi Abbiamo parlato
DettagliTipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:
Tipi di dato Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: esprimere in modo sintetico la loro rappresentazione in memoria, e un insieme di operazioni ammissibili permettere
DettagliForma Normale di Chomsky
2. Eliminazione delle produzioni unitarie Forma Normale di Chomsky Una produzione si dice unitaria se è della forma A! B. Le produzioni unitarie in pratica consistono in una ridenominazione di variabili,
DettagliTipi di dati strutturati e Linguaggio C. Record o strutture Il costruttore struct in C
Tipi di dati strutturati e Linguaggio C Record o strutture Il costruttore struct in C Dati strutturati Record Un record o struttura è una struttura dati ottenuta aggregando elementi di tipo diverso che
DettagliLEZIONE 11 IMPARIAMO A PROGRAMMARE: I DATI E LE VARIABILI Laboratorio di Informatica per l Educazione A. A. 2014/2015
1 LEZIONE 11 IMPARIAMO A PROGRAMMARE: I DATI E LE VARIABILI A. A. 2014/2015 PRIMI PASSI La più semplice sequenza di istruzioni che possiamo scrivere è quella costituita da un solo comando. come si fa a
DettagliPROLOG E ANALISI SINTATTICA DEI LINGUAGGI Quando si vuole definire in modo preciso la sintassi di un linguaggio si ricorre a una grammatica G=(V n,v t
PROLOG E ANALISI SINTATTICA DEI LINGUAGGI Quando si vuole definire in modo preciso la sintassi di un linguaggio si ricorre a una grammatica Una grammatica permette di stabilire se una sequenza di simboli
DettagliLA SINTASSI DEI LINGUAGGI DI PROGRAMMAZIONE. Ivan Lanese
LA SINTASSI DEI LINGUAGGI DI PROGRAMMAZIONE Ivan Lanese argomenti Grammatiche BNF Varianti: BNF + ε EBNF Remind: cos è una grammatica Una grammatica è uno strumento linguistico per definire insiemi di
DettagliLinguaggi Liberi dal Contesto. Linguaggi Liberi dal Contesto
rammatiche e Linguaggi Liberi da Contesto Abbiamo visto che molti linguaggi non sono regolari. Consideriamo allora una classe piu ampia di linguaggi, i Linguaggi Liberi da Contesto (CFL) i CFL sono stati
DettagliCostruzione dell insieme dei Follow
Costruzione dell insieme dei Follow E! T E - T E E! + T E - T E " T! F T T! *F T " F! (E) i Per evitare che alcuni insiemi siano vuoti si aggiunge per default il simbolo speciale $ che demarca la fine
DettagliSui Linguaggi Regolari: Teorema di Kleene - Pumping Lemm
Sui Linguaggi Regolari: Teorema di Kleene - Pumping Lemma N.Fanizzi - V.Carofiglio 6 aprile 2016 1 Teorema di Kleene 2 3 o 1 o 3 o 8 Teorema di Kleene Vale la seguente equivalenza: L 3 L FSL L REG Dimostrazione.
DettagliProgrammazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo
Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy
DettagliInformatica e Bioinformatica: AND, OR, NOT
31 marzo 2014 Algebra di Boole L algebra di Boole opera su due valori di verità, VERO e FALSO, mutuamente esclusivi. Nell algebra di Boole è possibile definire funzioni (che chiameremo operazioni logiche)
Dettaglicertificazione antimafia : Tribunale Amministrativo Regionale per la Calabria (Sezione Prima) sentenza n. 480 del 2010
ISSN 1127-8579 Pubblicato dal 22/04/2010 All'indirizzo http://www.diritto.it/docs/29425-certificazione-antimafia-tribunaleamministrativo-regionale-per-la-calabria-sezione-prima-sentenza-n-480-del-2010
DettagliI 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
DettagliEsercizi di Fondamenti di Informatica per la sicurezza. Stefano Ferrari
Esercizi di Fondamenti di Informatica per la sicurezza tefano Ferrari 23 dicembre 2003 2 Argomento 1 Grammatiche e linguaggi Esercizi Es. 1.1 Definiti i linguaggi: L 1 = {aa, ab, bc, c} L 2 = {1, 22, 31}
DettagliEsercizi su alberi binari
Esercizi su alberi binari Esercizi svolti: Determinazione nodi contenti verifica completezza verifica quasi completezza lunghezza del cammino interno determinazione ultima foglia in un quasi completo verifica
DettagliFondamenti di Informatica B
Fondamenti di Informatica B Lezione n.2 Alberto Broggi Gianni Conte A.A. 25-26 Fondamenti di Informatica B Algebra booleana Circuiti logici Elementi primitivi Esercizi con elementi logici Lezione n.2n
DettagliCorso di Laurea Magistrale in Ingegneria Informatica A.A Linguaggi Formali e Compilatori. I linguaggi formali. Giacomo PISCITELLI
Corso di Laurea Magistrale in Ingegneria Informatica A.A. 2011-2012 Linguaggi Formali e Compilatori I linguaggi formali Giacomo PISCITELLI Traduttori Un traduttore è un programma che effettua la traduzione
DettagliDescrizione delle operazioni di calcolo. Espressioni costanti semplici
Descrizione delle operazioni di calcolo Come abbiamo detto l interprete è in grado di generare nuovi valori a partire da valori precedentemente acquisiti o generati. Il linguaggio di programmazione permette
DettagliLa sintassi del C APPENDICE H
APPENDICE H La sintassi del C Nella notazione della sintassi utilizzata, le categorie sintattiche (non terminali) sono state indicate da uno stile tipografico in corsivo, mentre le parole letterali e i
DettagliYet Another Compiler-Compiler. Generazione automatica di analizzatori sintattici
Yet Another Compiler-Compiler Generazione automatica di analizzatori sintattici 2 YACC Yet Another Compiler-Compiler YACC (Bison) è un generatore di analizzatori sintattici a partire dalla descrizione
DettagliGRAMMATICHE DEI LINGUAGGI DI PROGRAMMAZIONE. Cosimo Laneve
GRAMMATICHE DEI LINGUAGGI DI PROGRAMMAZIONE Cosimo Laneve 1 argomenti 1. linguaggi di programmazione 2. definizione formale di insiemi infiniti 3. la grammatica e la notazione BNF 4. notazioni alternative
DettagliPrecorso di Analisi Matematica Facoltà d'ingegneria Università del Salento
Precorso di Analisi Matematica Facoltà d'ingegneria Università del Salento Calcolo Combinatorio Prof. A. Albanese Dipartimento di Matematica e Fisica E. De Giorgi - Università del Salento Disposizioni
DettagliLe basi del linguaggio Java
Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 10 Le basi del linguaggio Java Aprile 2010 Le basi del linguaggio Java 1 Prerequisiti Nozioni generali sulla sintassi e semantica del
DettagliLEZIONE PRECEDENTE. 1 Abilità Informatiche e Telematiche. 03/04/2015 Dott. ssa Carmen De Maio
LEZIONE PRECEDENTE Introduzione a Sprite; Operatori e funzioni; Come usare i blocchi Movimenti per far muovere uno Sprite; Come usare i blocchi Penna per disegnare sullo stage; Esercizi 1 TO DO: Completa
DettagliLogica proposizionale
Logica proposizionale Proposizione: frase compiuta che è sempre o vera o falsa. Connettivi Posti in ordine di precedenza: not, and, or, implica, doppia implicazione Sintassi Le proposizioni sono costituite
DettagliCorso di Linguaggi di Programmazione + Laboratorio Docente: Marco de Gemmis
Corso di Linguaggi di Programmazione + Laboratorio Docente: Marco de Gemmis Capitolo 2 Grammatiche e Linguaggi Si ringraziano il Prof. Giovanni Semeraro e il Dott. Pasquale Lops per la concessione del
DettagliProgramma 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
DettagliSemantica e traduzione guidata dalla sintassi
Corso di Laurea Magistrale in Ingegneria Informatica A.A. 2011-2012 Linguaggi Formali e Compilatori Semantica e traduzione guidata dalla sintassi Giacomo PISCITELLI Compile-time semantic evaluation Finora
DettagliIl Modello di un Compilatore. La costruzione di un compilatore per un particolare linguaggio di programmazione e' abbastanza complessa.
Il Modello di un Compilatore La costruzione di un compilatore per un particolare linguaggio di programmazione e' abbastanza complessa. La complessità dipende dal linguaggio sorgente. Compilatore: traduce
Dettagli7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari
7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa
DettagliIl Modello di un Compilatore. La costruzione di un compilatore per un particolare linguaggio di programmazione e' abbastanza complessa.
Il Modello di un Compilatore Dispensa del corso di Linguaggi e Traduttori A.A. 2005-2006 La costruzione di un compilatore per un particolare linguaggio di programmazione e' abbastanza complessa. La complessità
DettagliTipi di dato personalizzati Array di struct. Tipi di dato utente. Laboratorio di Programmazione I. Corso di Laurea in Informatica A.A.
Array di Tipi di dato utente Laboratorio di Programmazione I Corso di Laurea in Informatica A.A. 2016/2017 Array di Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7 Lez. 8 - Introduzione
DettagliLaboratorio Progettazione Web Le funzioni in PHP. Angelica Lo Duca IIT-CNR 2012/2013
Laboratorio Progettazione Web Le funzioni in PHP Angelica Lo Duca IIT-CNR angelica.loduca@iit.cnr.it 2012/2013 Funzioni Una funzione è una sequenza di istruzioni che implementano una specifica funzionalità
Dettagli7. Automi a Pila e Grammatiche Libere
(fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari 20 aprile 2016 1 Automi a Pila Definizione Descrizioni Istantanee Condizioni di Accettazione per PDA Esempi 2 Teorema delle
DettagliTipi di dato strutturati: Array
Tipi di dato strutturati: Array I dati visti finora sono: numeri (interi o razionali), booleani le stringhe (sequenze di caratteri) ma i dati manipolati nelle applicazioni reali sono spesso complessi (o
DettagliConcetti di base sugli automi e sui linguaggi formali
Concetti di base sugli automi e sui linguaggi formali Andrea Burattin 18 marzo 2005 Sommario Piccolo insieme di concetti sul funzionamento degli automi (a stati finiti, a pila,...), delle grammatiche libere
DettagliAnalizzatori Lessicali con JLex. Giuseppe Morelli
Analizzatori Lessicali con JLex Giuseppe Morelli Terminologia Tre concetti sono necessari per comprendere la fase di analisi lessicale: TOKEN: rappresenta un oggetto in grado di rappresentare una specifica
Dettagli1 Il Paradigma ad Oggetti
1 Il Paradigma ad Oggetti 1.1 Mini-Java In questa sezione introduciamo un sottoinsieme molto elementare del linguaggio ad oggetti Java, che chiamiamo Mini-Java. Nel linguaggio Mini-Java abbiamo incluso
DettagliProprietà dei linguaggi non contestuali
Proprietà dei linguaggi non contestuali Argomenti della lezione Pumping lemma per i linguaggi non contestuali Proprietà di chiusura Argomenti della lezione Grammatiche non contestuali in forma ridotta
DettagliAUTOMA A STATI FINITI
Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate
DettagliTRADUZIONE STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+
TRADUZIONE DI STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+ a cura di: Eleonora Antonelli Simone Maletta Stefano Novara INDICE 1. Grammatica di TLA+ a cura di Eleonora Antonelli
DettagliAnalisi sintattica (parser)
Corso di Laurea Magistrale in Ingegneria Informatica A.A. 2013-2014 Linguaggi Formali e Compilatori Analisi sintattica (parser) Giacomo PISCITELLI Analisi sintattica: il parser Problema di base dell analisi
DettagliIl tipo astratto coda con priorità: specifiche sintattiche e semantiche. Realizzazioni.
Il tipo astratto coda con priorità: specifiche sintattiche e semantiche. Realizzazioni. Algoritmi e Strutture Dati + Lab A.A. 14/15 Informatica Università degli Studi di Bari Aldo Moro Nicola Di Mauro
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa 09 Linguaggi Sintassi e Semantica Alfonso Miola Ottobre 2009 http://www.dia.uniroma3.it/~java/fondinf/ Linguaggi - Sintassi e Semantica
DettagliLaboratorio Progettazione Web Il linguaggio PHP Le Istruzioni. Andrea Marchetti IIT-CNR AA 2015/2016
Laboratorio Progettazione Web Il linguaggio PHP Le Istruzioni Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.it AA 2015/2016 Ambiente di test PHP online per avere un interprete PHP Php Online PHP Tester
DettagliProgrammazione web lato client con JavaScript. Marco Camurri 1
Programmazione web lato client con JavaScript Marco Camurri 1 JavaScript E' un LINGUAGGIO DI PROGRAMMAZIONE che consente di inserire codice in una pagina web Sintassi simile a Java (e al C), ma NON E'
DettagliLinguaggio C - sezione dichiarativa: costanti e variabili
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente
DettagliTraduzione guidata dalla sintassi
Traduzione guidata dalla sintassi Attributi e definizioni guidate dalla sintassi Dipartimento di Matematica e Informatica mariarita.diberardini@unicam.it Analisi Semantica Analisi sintattica - output:
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Università di Camerino Corso di Laurea in Informatica (12 CFU) I periodo didattico Emanuela Merelli email:emanuela.merelli@unicam.it Argomenti della lezione Elementi di un linguaggio
DettagliCorso di Programmazione Record e Insiemi. Record. Record. Dott. Pasquale Lops.
Materiale didattico preparato dal dott. Stefano Ferilli Corso di Programmazione e Insiemi Dott. Pasquale Lops lops@di.uniba.it Corso di Programmazione - DIB 1/14 Registra in una n-pla di dati le principali
DettagliEspressioni aritmetiche
Espressioni aritmetiche Consideriamo espressioni costruite a partire da variabili e costanti intere mediante applicazione delle operazioni di somma, sottrazione, prodotto e divisione (intera). Ad esempio:
DettagliCostanti e Variabili
Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli
DettagliTABELLA OPERATORI ARITMETICI
ARITMETICA E RICORSIONE Non esiste, in logica, alcun meccanismo per la valutazione di funzioni, operazione fondamentale in un linguaggio di programmazione I numeri interi possono essere rappresentati come
DettagliCorso: Fondamenti di Linguaggi di Programmazione
Corso: Fondamenti di Linguaggi di Programmazione Paola Giannini Chiusure e Binding statico e dinamico Paola Giannini, a.a. 2017/2018 FONDAMENTI LINGUAGGI Binding statico e dinamico 1 / 8 Stack e Sostituzione
DettagliCorso di ALGEBRA (M-Z) INSIEMI PARZIALMENTE ORDINATI E RETICOLI
Corso di ALGEBRA (M-Z) 2013-14 INSIEMI PARZIALMENTE ORDINATI E RETICOLI Sia P un insieme non vuoto. Una relazione d ordine su P è una relazione riflessiva, antisimmetrica e transitiva. La coppia (P,) si
DettagliLaboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algebra di Boole Stefano Cagnoni Algebra di Boole L algebra
DettagliUnità B1 Programmazione base
(A) CONOSCENZA TERMINOLOGICA Dare una breve descrizione dei termini introdotti: Multipiattaforma Interpiattaforma Porting Piattaforma hardware Piattaforma software Riusabilità Parametri della linea di
DettagliTraduzione ER - relazionale
Traduzione ER - relazionale 1 Introduzione Algoritmo applicato ad uno schema ER ristrutturato:!! I. Traduzione delle entità (non deboli)! II. Traduzione delle associazioni 2 I.Traduzione delle entità (1)
DettagliLaboratorio Progettazione Web Il linguaggio PHP Le Istruzioni. Andrea Marchetti IIT-CNR AA 2014/2015
Laboratorio Progettazione Web Il linguaggio PHP Le Istruzioni Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.it AA 2014/2015 Ambiente di test Cercare PHP online per avere un interprete PHP Assegnamento
DettagliProgrammazione con Java
Programmazione con Java Classi e istanze in Java Definizione di classe in Java A meno che non si usino classi già scritte da altri, prima di poter creare un qualsiasi oggetto devo creare la sua rappresentazione:
DettagliFondamenti d Informatica: Le Macchine di Turing. Barbara Re, Phd
Fondamenti d Informatica: Le Macchine di Turing Barbara Re, Phd Esercizio 1 } Consideriamo una MdT che modifica una sequenza di A rimpiazzando ogni A in posizione dispari con una B (la prima A ha posizione
DettagliGrammatiche. Rosario Culmone, Luca Tesei. 20/11/2006 UNICAM - p. 1/49
Grammatiche Rosario Culmone, Luca Tesei 20/11/2006 UNICAM - p. 1/49 Grammatiche libere dal contesto Ogni linguaggio di programmazione ha delle regole che prescrivono la struttura sintattica dei programmi
DettagliCOMPILATORI: MODELLO COMPILATORI: MODELLO ANALIZZATORE LESSICALE. Si noti che le variabili sono associate allo stesso numero identificativo
COMPILATORI: MODELLO COMPILATORI: MODELLO La costruzione di un compilatore per un particolare linguaggio di programmazione è complessa. La complessità dipende dal linguaggio sorgente Compilatore: traduce
DettagliEsercizio 2 (punti 7) Dato il seguente programma C: #include <stdio.h> int swap(int * nome, int length);
Fondamenti di Informatica L-A (A.A. 004/005) - Ingegneria Informatica Prof.ssa Mello & Prof. Bellavista I Prova Intermedia del 11/11/004 - durata h - COMPITO B Esercizio 1 (punti 1) Una associazione di
DettagliHomework 2. 1 Il problema. Corso di Fondamenti di Informatica II. 26 Novembre L'Albero dei divisori
Homework 2 Corso di Fondamenti di Informatica II BIAR2 (Ing. Informatica e Automatica) e BSIR2 (Ing. dei Sistemi) A.A. 2010/2011 26 Novembre 2010 Sommario Questo documento fornisce informazioni relative
DettagliFondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
Dettagli