Analisadores Sintáticos. Análise Recursiva com Retrocesso. Análise Recursiva Preditiva. Análise Recursiva Preditiva 05/04/2010
|
|
- Mauro Fonseca Prada
- 8 Há anos
- Visualizações:
Transcrição
1 Anlisdores intáticos Análise Descendente (Top-down) Anlisdores sintáticos descendentes: Recursivo com retrocesso (bcktrcking) Recursivo preditivo Tbulr preditivo Análise Redutiv (Bottom-up) Anlisdores de precedênci d operdores Anlisdores LR(k) Análise Recursiv com Retrocesso Exemplo 3.6 Pssos de um nlisdor descendente entenç ou progrm: [] Grmátic: e L ; L [ ] $ [ ] $ [ ] $ [ ] $ [ ] $ [ ] $ ucesso! ; L ; L ; L Expndir L Fonte: Implementção de Lingugens de Progrmção: Compildores. An Mri Price & imão. Toscni. Ed. gr Luzztto, Expndir ucesso! Flh! ucesso! Exemplo 3.7 Implementção Exemplo 3.1 sem bcktrcking begin /* min */ token := LETOKEN; if then if token = $ then write( sucesso ) else write( erro1 ) else write( erro2 ) end function ; if token = then { } else if token = [ then if L then if token = ] then { } function L; MARCA_PONTO; if then if token = ; then { if L then } else { RETROCEDE; if then } begin /* min */ token := LETOKEN; if then if token = $ then write( sucesso ) else write( erro ) else write( erro ) end function ; if token = then { } else if token = [ then if L then if token = ] then { } function L; if then if token = ; then { if L then } else Análise Recursiv Preditiv Exigêncis: Grmátic sem recursividde à esquerd Grmátic estej ftord à esquerd Pr os não-terminis com mis de um regr de produção, os primeiros terminis deriváveis devem ser cpzes de identificr, univocmente, regr de produção ser plicd Exemplo 1: Comndo if Expr then Comndo while Expr do Comndo repet List until Expr id := Expr Análise Recursiv Preditiv Exemplo 2: Comndo Condicionl Itertivo Atribuição Condicionl if Expr then Comndo Itertivo while Expr do Comndo repet List until Expr Atribuição id := Expr FIRT(β): e β * ε então ε é um elemento de FIRT(β); e β * δ então é um elemento de FIRT(β), sendo um símbolo terminl e δ um form sentencil qulquer, podendo ser vzi 1
2 Exemplo 3.8 Anlisdor recursivo preditivo: implementção function Comndo; if token = if then if Condicionl then else if token = while or token = repet then if Itertivo then else if token = id then if Atribuição then Análise Preditiv Tbulr O nlisdor busc produção ser plicd n tbel de nálise, levndo em cont o nãoterminl no topo d pilh e o token sob o cbeçote de leitur Pilh X Y Z $ Fit de entrd + b $ Anlisdor preditivo Tbel de Análise Exemplo 3.10 Pssos de um nlisdor tbulr preditivo Considere grmátic não-mbígu que ger expressões lógics: E E T T T T & F F Eliminndo-se recursividde à esquerd, tem-se: E TE E TE ε T FT T &FT ε Tbel de nálise preditiv: id & $ E E TE E TE E E TE E ε T T FT F FT T T ε T &FT T ε F F id F F Pssos de um nlisdor: Pilh Entrd Ação $E id id&id$ E TE $E T id id&id$ F FT $E T F id id&id$ F id $E T id id id&id$ $E T id&id$ T ε $E id&id$ E TE $E T id&id$ $E T id&id$ T FT Algoritmo do Anlisdor Preditivo Tbulr Entrd: Um sentenç s e um tbel de nálise M pr grmátic G Resultdo: Um derivção mis à esquerd de s, se s está em L(G), ou um erro, cso contrário Método: Configurção inicil: pilh=$ e fit=s$ Posicion o cbeçote sobre o primeiro símbolo de s$; ej X o símbolo do topo d pilh e o símbolo sob o cbeçote. Repete e X é um terminl Então e X = Então desempilhe X e vnç o cbeçote enão ERRO enão /* X é um símbolo não-terminl */ e M[X,] = X Y 1 Y 2...Y k Então desempilh X; empilh Y k Y k-1...y 1 com Y 1 no topo; enão ERRO Até que X = $ /* pilh vzi */ Algoritmo do Anlisdor Preditivo Tbulr A mior dificuldde está n construção d tbel de nálise. FIRT(α) é o conj. de terminis que inicim forms sentenciis derivds prtir de α (se α ==>* ε, então plvr vzi tmbém fz prte do conjunto) FOLLOW(A) é o conj. de terminis que podem precer imeditmente à direit de A em lgum form sentencil. Isto é, o conj. de terminis, tl que existe um derivção d form ==>* αaβ pr α e β quisquer. 2
3 Algoritmo pr clculr FIRT(X) 1) e é terminl, então FIRT() = {} 2) e X ε é um produção, então dicione ε FIRT(X) 3) e X Y 1 Y 2...Y k é um produção e, pr lgum i, todos Y 1,Y 2,...,Y i-1 derivm ε, então FIRT(Y i ) está em FIRT(X). e todo Y j (j=1,2,...,k) deriv ε,, então ε está em FIRT(X) Algoritmo pr clculr FOLLOW(X) 1) e é o símbolo inicil d grmátic e $ é o mrcdor de fim de sentenç, então $ está em FOLLOW() 2) e existe produção do tipo A αxβ, então todos os terminis de FIRT(β) fzem prte de FOLLOW(X) 3) e existe produção do tipo A αx, ou A αxβ, sendo que β ==>* ε, então todos os terminis que estiverem em FOLLOW(A) fzem prte de FOLLOW(X) Exemplo 3.11 Determinção ds funções FIRT e FOLLOW Considere grmátic de expressões lógics: E TE E TE ε T FT T &FT ε FIRT(F) = {, id} FIRT(T ) = {&, ε} FIRT(E ) = {, ε} FIRT(T) = FIRT(F) = {, id} FIRT{E} = FIRT(T) = {, id} FOLLOW(E) = {$} regr 1 FOLLOW(E ) = FOLLOW(E) = {$} regr 3, prod. 1 FOLLOW(T) = FIRT(E ) FOLLOW(E ) = {, $} regrs 2 e 3, prod. 2 e 3 FOLLOW(T ) = FOLLOW(T) = {, $} regr 3, prod. 4 FOLLOW{F} = FIRT(T ) FOLLOW(T ) = {&,, $} regrs 2 e 3, prod.5 Algoritmo pr construir um tbel de nálise preditiv Entrd: Um grmátic G Resultdo: Tbel de nálise M Método: 1) Pr cd produção A α de G, execute os pssos 2 e 3 (pr cd linh A d tbel M) 2) Pr cd terminl de FIRT(α), dicione produção A α M[A,] 3) e FIRT(α) inclui plvr vzi, então dicione A α M[A,b] pr cd b em FOLLOW(A) Def Grmátic LL(1) Um grmátic não recursiv à esquerd é LL(1) ssse, sempre que A αe A β são produções, ocorre que: 1) FIRT(α) FIRT(β) = 2) No máximo um dos dois, α ou β, deriv plvr vzi 3) e β ==>* ε, então FIRT(α) FOLLOW(A) = Análise Redutiv (Bottom-up) Os nlisdores redutivos são chmdos empilh-reduz e são implementdos por utômtos de pilh, com controle dirigido por um tbel de nálise. e, em cd entrd d Tbel de Análise, existe pens um produção, então grmátic é do tipo LL(1). Left to right, Leftmost derivtion, com 1 símbolo de entrd 3
4 Exemplo 3.13: Movimentos de um Anlisdor Redutivo ej grmátic que ger lists: e L L ; Pr sentenç: [ ; ], tem-se os movimentos: Pilh Entrd Ação $ [ ; ]$ Empilh [ $[ ; ]$ Empilh $[ ; ]$ Reduz $[ ; ]$ Reduz L $[L ; ]$ Empilh ; $[L; ]$ Empilh $[L; ]$ Reduz $[L; ]$ Reduz L L ; $[L ]$ Empilh ] $[L] $ Reduz [L] $ $ Aceit! Análise Redutiv: Hndle ão sequêncis de símbolos que são ldos direitos de produção, tis que sus reduções levm, no finl, à redução pr o símbolo inicil d grmátic, trvés do reverso de um derivção mis à direit. e grmátic G é não-mbígu, então tod form sentencil gerd por G tem extmente um hndle. Reconhecedor empilh-reduz: ções Empilh: coloc no topo d pilh o símbolo que está sendo lido e vnç o cbeçote de leitur; Reduz: substitui o hndle do topo d pilh pelo não-terminl correspondente; Aceit: reconhece que sentenç de entrd foi gerd pel grmátic; Erro: ocorrendo erro de sintxe, chm um subrotin de tendimento erros. Anlisdores de precedênci de operdores Atum sobre clsse ds grmátics de operdores Bstnte eficiente e é plicdo no reconhecimento de expressões Dificuldde em lidr com operdores iguis que tenh significdos distintos ão plicdos um clsse restrit de grmátics Grmátics de Operdores Os não-terminis precem sempre seprdos por símbolos terminis (nunc precem dois terminis djcentes) As produções não derivm plvr vzi E E O E ( E ) id O + - * / ^ E E T T T T & F F F ( E ) id Anlisdores LR(k): (Left to right with Rightmost derivtion) ão cpzes de reconhecer prticmente tods s estruturs sintátics definids por um GLC É um método mis gerl que o precedênci de operdores e pode ser implementdo com o mesmo gru de eficiênci ão cpzes de descobrir erros sintáticos em um momento mis cedo Dificuldde de implementção 4
5 Anlisdores LR(k): (Left to right with Rightmost derivtion) LR (imple LR) fáceis de plicr, porém plicáveis um clsse restrit de grmátics; LR Cnônicos mis poderosos e plicdos um grnde número de LLC; LALR (Look Ahed LR) nível intermediário e implementção eficiente, que funcion pr miori de lingugens de progrmção. O YACC ger esse tipo de nlisdor. Funcionmento de Anlisdores LR Pilh E m X m : : X 1 E 0 Fit de entrd 1... i... n $ Anlisdor Tbel de Análise A pilh rmzen símbolos d grmátic (X j ) intercldos com estdos (E j ) do nlisdor Estrutur d Tbel de Análise E TA DO AÇÃO TERMINAI empilh reduz ceit erro TRANIÇÃO NÃO-TERMINAI E TA DO 5
Aula 8: Gramáticas Livres de Contexto
Teori d Computção Segundo Semestre, 2014 ul 8: Grmátics Livres de Contexto DINF-UTFPR Prof. Ricrdo Dutr d Silv Veremos gor mneir de gerr s strings de um tipo específico de lingugem, conhecido como lingugem
Leia maisCompiladores Aula 5. Celso Olivete Júnior. olivete@fct.unesp.br
Aula 5 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Conjuntos Primeiro(First) e Seguidor(Follow) 2 Na aula de hoje Análise Sintática Análise Sintática Descendente Recursividade Fatoração 3
Leia maisAnálise Sintática. Análise Sintática. Tipos de Analisadores Gramáticais: PARSERS
Análise Sintática Tipos de Analisadores Gramáticais: PARSERS * Analisadores TOP-DOWN: Árvore de derivação começa pela raiz indo para as folhas => Análise Descendente Tipo LL(1): Left to right / Leftmost
Leia maisAnalisadores Ascendentes ou Empilha-Reduz. Mais um exemplo... Mais um exemplo... Top-Down x Bottom Up. Conteúdo da aula. Analisadores Ascendentes
Conteúdo da aula Analisadores Ascendentes ou mpilha-reduz Marcelo Johann Analisadores Ascendentes uncionamento Analisadores de Precedência de Operadores Analisadores LR(k) SLR - Simple LR (estudaremos
Leia maisAnálise Sintática Descendente
Análise Sintática Descendente Uma tentativa de construir uma árvore de derivação da esquerda para a direita Cria a raiz e, a seguir, cria as subárvores filhas. Produz uma derivação mais à esquerda da sentença
Leia maisCompiladores. Análise Sintática
Compiladores Análise Sintática Cristiano Lehrer, M.Sc. Introdução (1/3) A análise sintática constitui a segunda fase de um tradutor. Sua função é verificar se as construções usadas no programa estão gramaticalmente
Leia maisAnálise Léxica. Construção de Compiladores. Capítulo 2. José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto
Construção de Compildores Cpítulo 2 Análise Léxic José Romildo Mlquis Deprtmento de Computção Universidde Federl de Ouro Preto 2014.1 1/23 1 Análise Léxic 2/23 Tópicos 1 Análise Léxic 3/23 Análise léxic
Leia maisFaculdade de Computação
UNIVERIDADE FEDERAL DE UBERLÂNDIA Fculdde de Computção Disciplin : Teori d Computção Professor : ndr de Amo Revisão de Grmátics Livres do Contexto (1) 1. Fzer o exercicio 2.3 d págin 128 do livro texto
Leia maisAnalisadores Descendentes Tabulares; Cjs First Follow
Conteúdo da aula nalisadores Descendentes Tabulares; Cjs First Follow Marcelo Johann nalisadores Descendentes Recursivos com Retrocesso Recursivos Preditivos Conjunto FIRT e Implementação nalisador Preditivo
Leia maisAnálise Sintática I: Analisadores Descendentes com Retrocesso
Análise intátic I: Anlisdores Descendentes com Retrocesso Definição A nálise sintátic é o processo de determinr se um cdei de átomos (tokens), isto é, o progrm já nlisdo pelo nlisdor léxico, pode ser gerdo
Leia maisCapítulo 3. Autómatos e respectivas linguagens
Cpítulo 3. Neste estudo, os utómtos serão considerdos principlmente como dispositivos de ceitção d lingugem, e respectiv estrutur intern será discutid pens n medid em que se relcione com lingugem ceite.
Leia maisPlano da aula. Compiladores. Top-Down x Bottom Up. Redução Exemplo 1. Redução Exemplo 1. Redução Exemplo 1. A Abc b B d.
Plano da aula Compiladores Análise bottom-up AKA: Analisador ascendente Analisador empilhar/reduzir Análise sintática (4) Análise Bottom-Up Autômatos mpilhar/reduzir xemplos Handle Operações básicas IQuestões
Leia maisRevisão de GLC e Analisadores Descendentes
Conteúdo da aula 1. xemplos de Gramáticas Revisão de GLC e Analisadores Descendentes Marcelo Johann 2. Propriedades: Ambíguas, sem ciclos, ε-livres, fatoradas à esquerda, recursivas à esquerda, simplificadas
Leia maisResumo da última aula. Compiladores. Conjuntos de itens LR(0) Exercício SLR(1) Análise semântica
Resumo d últim ul Compildores Verificção de tipos (/2) Análise semântic Implementção: Esquems -tribuídos: Mecnismo bottom-up direto Esquems -tribuídos: Mecnismo top-down: Necessit grmátic não recursiv
Leia maisBNF (Backus-Naur Form) Gramática Livres de Contexto / Estruturas Recursivas
Sintae => Usualmente Gramática Livre do Conteto (GLC) BNF (Backus-Naur Form) Gramática Livres de Conteto / struturas Recursivas comando => IF epressao THN epressao LS epressao epressao => (epressao) OR
Leia maisTeoria da Computação. Unidade 3 Máquinas Universais (cont.) Referência Teoria da Computação (Divério, 2000)
Teori d Computção Unidde 3 Máquins Universis (cont.) Referênci Teori d Computção (Divério, 2000) 1 Máquin com Pilhs Diferenci-se ds MT e MP pelo fto de possuir memóri de entrd seprd ds memóris de trblho
Leia maisCOMPILADORES. Análise sintática. Prof. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática
Universidade de Santa Cruz do Sul UNISC Departamento de informática COPILADORES Análise sintática Parte 03 Prof. geovanegriesang@unisc.br Analisador sem recursão Analisador sintático sem recursão pode
Leia maisCOMPILADORES. Análise sintática. Prof. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática
Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Análise sintática Parte 02 Prof. geovanegriesang@unisc.br Data Conteúdo 23/09/2013 3. Análise Sintática: 3.1 analisadores
Leia maisFaculdade de Computação
UNIVERIDADE FEDERAL DE UBERLÂNDIA Fculdde de Computção Disciplin : Lingugens Formis e Autômtos - 0 emestre 2006 Professor : ndr Aprecid de Amo List de Exercícios n o - 4/08/2006 Observção : os exercícios
Leia maisCompiladores. A seção das regras. Especificação (F)lex. Plano da aula. Escolha das regras. Compilação típica com FLEX
Compilação típica com FLX Compiladores Análise sintática (1) Noções sobre Gramáticas Livres de conteto dição do teto de especificação No arquivo minhas_regras.l 3 partes: Declarações Regras (Rs -> Ação)
Leia maisProjeto de Compiladores Professor Carlos de Salles
Projeto de Compildores 2006.1 Professor Crlos de Slles Trlho 1 Autômto pr Plvrs Reservds Ojetivo do trlho: implementr um progrm que recee como entrd um list de plvrs reservds e define como síd um função
Leia maisAlocação sequencial - Pilhas
Alocção seqüencil - pilhs Alocção sequencil - Pilhs Pilhs A estrutur de ddos Pilh é bstnte intuitiv. A nlogi é um pilh de prtos. Se quisermos usr um pilh de prtos com máxim segurnç, devemos inserir um
Leia maisURICER Universidade Regional Integrada do Alto Uruguai e das Missões Campus de Erechim Apostila de COMPILADORES
URICR Universidde Regionl Integrd do Alto Urugui e ds Missões Cmpus de rechim Apostil de COMPILADORS rechim, gosto de 2001. -2- SUMÁRIO 1 CONCIOS BÁSICOS (revisão)... 4 2 LINGUAGNS SUAS RPRSNAÇÕS... 6
Leia maisCompiladores. Exemplo First/Follow. proc Follow(B N) Gramática LL(1) proc First(α: string of symbols) Observações First/Follow
Repet { pro First(α: string of symols) Compildores nálise sintáti (3) nálise LL(1) om tel preditiv. // sejα X 1 X 2 X 3 X n if X 1 T then // so simples onde X 1 é um terminl First(α) := {X 1 else { //
Leia maisCompiladores. Prof. Bruno Moreno Aula 11 20/05/2011
Compiladores Prof. Bruno Moreno Aula 11 20/05/2011 2- Recursivo preditivo Análise Recursiva Preditiva O símbolo sobre o cabeçote de leitura determina exatamente qual produção deve ser aplicada na expansão
Leia maisDCC-UFRJ Linguagens Formais Primeira Prova 2008/1
DCC-UFRJ Lingugens Formis Primeir Prov 28/. Constru um utômto finito determinístico que ceite lingugem L = {w ( ) w contém pelos menos dois zeros e no máximo um }. 2. Use o lgoritmo de substituição pr
Leia maisCompiladores Aula 6. Celso Olivete Júnior.
Aula 6 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Analisadores Sintáticos Descendentes ASD com retrocesso ASD preditivo recursivo não-recursivo 2 ASD Preditivo Recursivo Projeto Parte 2
Leia maisAnálise semântica. Análise Semântica. Estrutura de um compilador. Anotação da árvore sintática. Tipos de comunicação de atributos?
Estrutura de um compilador Análise semântica Tradução orientada pela sintaxe 1 2 Análise Semântica Anotação da árvore sintática Análise semântica: Tipos (& Declarações) Escopo Checagens estáticas: Idéia:
Leia maisAula 4: Autômatos Finitos 2. 4.1 Autômatos Finitos Não-Determinísticos
Teori d Computção Primeiro Semestre, 25 Aul 4: Autômtos Finitos 2 DAINF-UTFPR Prof. Ricrdo Dutr d Silv 4. Autômtos Finitos Não-Determinísticos Autômtos Finitos Não-Determinísticos (NFA) são um generlizção
Leia maisLinguagens Regulares e Autômatos de Estados Finitos. Linguagens Formais. Linguagens Formais (cont.) Um Modelo Fraco de Computação
LFA - PARTE 1 Lingugens Regulres e Autômtos de Estdos Finitos Um Modelo Frco de Computção João Luís Grci Ros LFA-FEC-PUC-Cmpins 2002 R. Gregory Tylor: http://strse.cs.trincoll.edu/~rtylor/thcomp/ 1 Lingugens
Leia maisAnálise sintática. Questão. E se a análise sintática pudesse ser modelada por autômatos?
Análise sintática Função, interação com o compilador Análise descendente e ascendente Especificação e reconhecimento de cadeias de tokens válidas Implementação Tratamento de erros Prof. Thiago A. S. Pardo
Leia maisHierarquia de Chomsky
Universidde Ctólic de Pelots Centro Politécnico 364018 Lingugens Formis e Autômtos TEXTO 1 Lingugens Regulres e Autômtos Finitos Prof. Luiz A M Plzzo Mrço de 2011 Hierrqui de Chomsky Ling. Recursivmente
Leia maisO Autômato Adaptativo como Modelo de Computação e sua Aplicação em Reconhecimento de Padrões*
O utômto dpttivo como Modelo de Computção e su plicção em econhecimento de Pdrões* I WOPEC Workshop de Pesquis em Engenhri e Computção mury ntônio de Cstro Junior mury@ec.ucd.r Orientdor: Prof. Dr. João
Leia maisCompiladores. Exemplo. Caraterísticas de Gramáticas. A αβ 1 αβ 2. A αx X β 1 β 2. Lembrando... Gramáticas Livres de Contexto
Compiladores Análise sintática (2) Análise Top-Down Lembrando... Gramáticas Livres de Contexto Análise sintática = parsing. Baseada em GLCs Gramática: S A B Top-Down Bottom-Up S AB cb ccbb ccbca S AB A
Leia maisAnálise Sintática II: Analisadores Descendentes Preditivos
Análise Sintática II: Analisadores Descendentes Preditivos Exercícios LL(1) = Left to right, Left-most derivation, 1 símbolo look-ahead 1. LL(1): definição 2. Para toda produção A -> α β Se β =>* λ, então
Leia maisV Teoria de Parsing. Termos Básicos: Parser Analisador Sintático Parsing Analise Sintática Parse Representação da analise efetuada
V Teoria de Parsing Termos Básicos: Parser Analisador Sintático Parsing Analise Sintática Parse Representação da analise efetuada Ascendentes: S + x (* Seq. Invertida Reducao *) dir Exemplo: Descendentes:
Leia maisLinguagens Formais e Autômatos (LFA)
PU-Rio Lingugens Formis e Autômtos (LFA) omplemento d Aul de 21/08/2013 Grmátics, eus Tipos, Algums Proprieddes e Hierrqui de homsky lrisse. de ouz, 2013 1 PU-Rio Dic pr responder Pergunts finis d ul lrisse.
Leia maisAnálise Sintáctica Descendente
Cpítulo 4 nálise intáctic Descendente Os utomátos finitos presentdos no cpítulo nterior são suficientes pr trtr os elementos léxicos de um lingugem de progrmção, o trtmento d estrutur sintáctic de um lingugem
Leia maisAnálise Sintática Bottom-up
MAB 471 2011.2 Análise Sintática Bottom-up http://www.dcc.ufrj.br/~fabiom/comp Recapitulando parsers top-down Constróem árvore sintática da raiz até as folhas Recursão à esquerda faz parsers entrarem em
Leia maisAnálise Sintática (Cap. 04) Análise Sintática Descendente
(Cap. 04) Análise Sintática Descendente Análise Sintática Análise sintática descendente Constrói a árvore de derivação de cima para baixo, da raíz para as folhas, criando os nós da árvore em pré ordem
Leia maisCOMPILADORES. Análise sintática. Prof. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática
Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Análise sintática Parte 05 Prof. geovanegriesang@unisc.br Data Conteúdo 23/09/2013 3. Análise Sintática: 3.1 analisadores
Leia maisCompiladores Analisador Sintático. Prof. Antonio Felicio Netto Ciência da Computação
Compiladores Analisador Sintático Prof. Antonio Felicio Netto antonio.felicio@anhanguera.com Ciência da Computação 1 Análise Sintática - A Análise Sintática constitui a segunda fase de um tradutor de uma
Leia maisApostila 02 - Linguagens Regulares Exercícios
Cursos: Bchreldo em Ciênci d Computção e Bchreldo em Sistems de Informção Disciplins: (1493A) Teori d Computção e Lingugens Formis, (4623A) Teori d Computção e Lingugens Formis e (1601A) Teori d Computção
Leia maisCompiladores. Transformações de GLCs. Plano da aula. Análise Top-Down. Análise Top-Down Exemplo. Gramáticas Livres de Contexto.
Gramáticas Livres de Contexto Análise Top-Down Compiladores ε Análise sintática (2) Análise Top-Down Top-Down AB AB cb A c ccbb B cbb ccbca B ca 2 Transformações de GLCs Eliminação de produções vazias
Leia maisAlgoritmos de Busca de Palavras em Texto
Revisdo 08Nov12 A busc de pdrões dentro de um conjunto de informções tem um grnde plicção em computção. São muits s vrições deste problem, desde procurr determinds plvrs ou sentençs em um texto té procurr
Leia maisRevisão. Fases da dacompilação
1 Revisão Prof. Julio Arakaki Julio Arakaki 1 Fases da dacompilação Código fonte Análise Léxica tokens e lexemas Análise Sintática Árvore Sintática Abstrata (ASA) Análise Semântica ASA decorada Geração
Leia maisCompiladores I. Caracterizar um método de análise bottom-up. Compreender os mecanismos básicos envolvidos no processo de análise LR.
Compiladores I Gerson Geraldo Homrich Cavalheiro Caracterizar um método de análise bottom-up Compreender oecanismos básicos envolvidos no processo de análise LR Oferecer as bases para utilização de uma
Leia maisINE5318 Construção de Compiladores. AULA 4: Análise Sintática
INE5318 Construção de Compiladores AULA 4: Análise Sintática Ricardo Azambuja Silveira INE CTC UFSC E Mail: silveira@inf.ufsc.br URL: www.inf.ufsc.br/~silveira Definições preliminares Parser (Analisador
Leia maisAnálise sintática. Prof. Thiago A. S. Pardo. Análise sintática ascendente
Análise sintática Função, interação com o compilador Análise descendente e ascendente Especificação e reconhecimento de cadeias de tokens válidas Implementação Tratamento de erros Prof. Thiago A. S. Pardo
Leia maisLinguagens Formais e Autômatos (LFA)
Lingugens Formis e Autômtos (LFA) Aul de 11/09/2013 Conjuntos Regulres, Expressões Regulres, Grmátics Regulres e Autômtos Finitos 1 Conjuntos Regulres Conjuntos regulres sobre um lfbeto finito são LINGUAGENS
Leia maisV Análise Sintática. V.1.1 Gramáticas Livres de Contexto Definições de GLC
V Análise Sintática V.1 Fundamentos Teóricos V.1.1 G.L.C V.1.2 Teoria de Parsing V.2 Especificação Sintática de Ling. de Prog. V.3 - Implementação de PARSER s V.4 - Especificação Sintática da Linguagem
Leia maisAcoplamento. Tipos de acoplamento. Acoplamento por dados. Acoplamento por imagem. Exemplo. É o grau de dependência entre dois módulos.
Acoplmento É o gru de dependênci entre dois módulos. Objetivo: minimizr o coplmento grndes sistems devem ser segmentdos em módulos simples A qulidde do projeto será vlid pelo gru de modulrizção do sistem.
Leia maisCompiladores - Análise Preditiva
Compiladores - Análise Preditiva Fabio Mascarenhas - 203. http://www.dcc.ufrj.br/~fabiom/comp Wednesday, May 8, 3 Retrocesso Local Podemos definir o processo de construção de um parser recursivo com retrocesso
Leia maisCÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano.
CÁLCULO NUMÉRICO Prof. Dr. Yr de Souz Tdno yrtdno@utfpr.edu.br Aul 0 0/04 Sistems de Equções Lineres Prte MÉTODOS ITERATIVOS Cálculo Numérico /9 MOTIVAÇÃO Os métodos itertivos ou de proimção fornecem um
Leia maisCompiladores. Análise Sintática
Compiladores Análise Sintática Análise Sintática Vejamos um exemplo, seja a seguinte instrução de atribuição: posicao = inicial + incremento * 60 Na análise sintática tenta-se construir uma frase correta
Leia maisLRE LSC LLC. Autômatos Finitos são reconhecedores para linguagens regulares. Se não existe um AF a linguagem não é regular.
Lingugens Formis Nom Chomsky definiu que s lingugens nturis podem ser clssificds em clsses de lingugens. egundo Hierrqui de Chomsky, s lingugens podem ser dividids em qutro clsses, sendo els: Regulres
Leia maisAvaliação de Expressões
valiação de Expressões valiação de Expressões - Como efetuar o cálculo de uma expressão em um computador? Exemplo: / B C D + E Regras usuais da matemática. Os parênteses alteram a ordem das expressões:
Leia maisCompilação: Erros. Detecção de Erros: * Analisadores Top-Down - Preditivo Tabular (LL) - Feito a mão. * Analisadores Botton-Up: - Shift-Reduce (SLR)
Compilação: Erros Detecção de Erros: * Analisadores Top-Down - Preditivo Tabular (LL) - Feito a mão * Analisadores Botton-Up: - Shift-Reduce (SLR) * Erros no Lex * Erros no Yacc * Erros na Definição da
Leia maisCompiladores - Análise Ascendente
Compiladores - Análise Ascendente Fabio Mascarenhas - 2013.1 http://www.dcc.ufrj.br/~fabiom/comp Análise Descendente vs. Ascendente As técnicas de análise que vimos até agora (recursiva com retrocesso,
Leia maisCompiladores - Análise Ascendente
Compiladores - Análise Ascendente Fabio Mascarenhas - 2013.2 http://www.dcc.ufrj.br/~fabiom/comp Análise Descendente vs. Ascendente As técnicas de análise que vimos até agora (recursiva com retrocesso,
Leia mais1 Fórmulas de Newton-Cotes
As nots de ul que se seguem são um compilção dos textos relciondos n bibliogrfi e não têm intenção de substitui o livro-texto, nem qulquer outr bibliogrfi. Integrção Numéric Exemplos de problems: ) Como
Leia maisProgramação II. Ordenação (sort) Bruno Feijó Dept. de Informática, PUC-Rio
Progrmção II Ordenção (sort) Bruno Feijó Dept. de Informátic, PUC-Rio Bule Sort Bule Sort Apens de interesse didático e de referênci A idéi é ir comprndo dois vizinhos e trocndo o menor pelo mior té que
Leia maisCompiladores - Análise SLR
Compiladores - Análise SLR Fabio Mascarenhas - 2013.1 http://www.dcc.ufrj.br/~fabiom/comp Um exemplo que funciona Todo estado com um item de redução e algum outro item causa conflito LR(0)! A técnica LR(0)
Leia maisParsing Preditivo. Antes de ser abordado o Parsing Preditivo, será apresentado o Analisador Sintático Descendente Recursivo.
UPE Caruaru Sistemas de Informação Disciplina: Compiladores Prof.: Paulemir G. Campos Parsing Preditivo Antes de ser abordado o Parsing Preditivo, será apresentado o Analisador Sintático Descendente Recursivo.
Leia maisESTRUTURA DE DADOS PILHA
ESTRUTURA DE DADOS PILHA CONCEITO DE PILHAS - Pilhas são listas lineares onde a inserção de um novo item ou a remoção de um item já existente se dá em uma única extremidade, no topo. Pilha vazia Insere(A)
Leia maisCompiladores: P ASCAL jr
Compiladores: P ASCAL jr Rogério Eduardo da Silva, M.Sc. 2005/2 Sumário 1 Introdução 1 1.1 Evolução das Linguagens de Programação.................. 1 1.2 Introdução à Compilação............................
Leia maisAnálise Sintática LL(1)
FACULDADE ANGLO AMERICANO FOZ DO IGUAÇU Curso de Ciência da Computação 7º Periodo Disciplina: Compiladores Prof. Erinaldo Sanches Nascimento Análise Sintática LL(1) Análise Sintática Descendente Introdução
Leia maisLinguagens Formais Capítulo 5: Linguagens e gramáticas livres de contexto
Lingugens ormis Cpítulo 5: Lingugens e grmátics livres de contexto José Lucs Rngel, mio 1999 5.1 - Introdução Vimos no cpítulo 3 definição de grmátic livre de contexto (glc) e de lingugem livre de contexto
Leia maisPontifícia Universidade Católica de Campinas Centro de Ciências Exatas, Ambientais e de Tecnologias Faculdade de Engenharia de Computação
Pontifíci Universidde Ctólic de Cmpins Centro de Ciêncis Exts, Ambientis e de Tecnologis Fculdde de Engenhri de Computção LINGUAGENS FORMAIS E AUTÔMATOS List de Exercícios 1 1. Que lingugem grmátic ger?
Leia maisLL Parser ( TOP-DOWN)
LL Parser ( TOP-DOWN) CT-200 Thiago Silva de Oliveira Duarte Marcus Kimura Lopes TOP DOWN x BOTTON UP PARSER TOP DOWN Algoritmo começa do símbolo de início aplicando produções até alcançar a string desejada
Leia maisCOMPILADORES. Análise sintática. Prof. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática
Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Análise sintática Parte 04 Prof. geovanegriesang@unisc.br Data Conteúdo 23/09/2013 3. Análise Sintática: 3.1 analisadores
Leia maisAnalisadores Sintáticos LR
FACULDADE ANGLO AMERICANO FOZ DO IGUAÇU Curso de Ciência da Computação 7º Periodo Disciplina: Compiladores Prof. Erinaldo Sanches Nascimento Analisadores Sintáticos LR SLR LR Canônicos LALR Analisadores
Leia maisRegras. Resumo do Jogo Resumo do Jogo. Conteúdo. Conteúdo. Objetivo FRENTE do Jogo
Resumo do Jogo Resumo do Jogo Regrs -Qundo for seu turno, você deve jogr um de sus crts no «ponto n linh do tempo» que estej correto. -Se você jogr crt corretmente, terá um crt menos à su frente. -Se você
Leia maisINE5317 Linguagens Formais e Compiladores. AULA 10: Anális e S intática
INE5317 Linguagens Formais e Compiladores AULA 10: Anális e S intática baseado em material produzido pelo prof Paulo B auth Menezes e pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira INE-CTC-UFSC
Leia maisAnálise Sintática - Final
MAB 471 2011.2 Análise Sintática - Final http://www.dcc.ufrj.br/~fabiom/comp LR(k ) vs LL(k ) Encontrando o próximo passo em uma derivação LR(k) Cada redução na análise detectável com o contexto esquerdo
Leia maisAnálise sintática. Análise sintática. Top-down ou descendente. Com retrocesso: por tentativa e erro. Preditiva: para gramáticas LL(1) 09/04/2012
Análise sintática Função, interação com o compilador Análise descendente e ascendente Especificação e reconhecimento de cadeias de tokens válidas Implementação Tratamento de erros Prof. Thiago A. S. Pardo
Leia mais3. Seja Σ um alfabeto. Explique que palavras pertencem a cada uma das seguintes linguagens:
BCC244-Teori d Computção Prof. Lucíli Figueiredo List de Exercícios DECOM ICEB - UFOP Lingugens. Liste os strings de cd um ds seguintes lingugens: ) = {λ} ) + + = c) {λ} {λ} = {λ} d) {λ} + {λ} + = {λ}
Leia maisAnálise Sintáctica. Definições: Conjuntos First() e Follow() Compiladores, Aula Nº 19 João M. P. Cardoso. Conjunto First(β)
Análise Sintáctica Compiladores, Aula Nº 19 João M. P. Cardoso 1 Definições: Conjuntos First() e Follow() 2 Notação T é terminal, NT é nãoterminal, S é terminal ou não-terminal, e α e β representam sequências
Leia maisLinguagens Formais e Autômatos
Linguagens Formais e Autômatos Gramáticas Livre do Contexto (GLC) Cristiano Lehrer, M.Sc. Linguagens Livres do Contexto (1/2) Seu estudo é de fundamental importância na informática: Compreende um universo
Leia maisGramáticas Regulares. Capítulo Gramáticas regulares
Cpítulo Grmátics Regulres Ests nots são um complemento do livro e destinm-se representr lguns lgoritmos estuddos ns uls teórics. É ddo um exemplo de plicção de cd conceito. Mis exemplos form discutidos
Leia maisSemelhança e áreas 1,5
A UA UL LA Semelhnç e áres Introdução N Aul 17, estudmos o Teorem de Tles e semelhnç de triângulos. Nest ul, vmos tornr mis gerl o conceito de semelhnç e ver como se comportm s áres de figurs semelhntes.
Leia maisConstrução de Compiladores Aula 16 - Análise Sintática
Construção de Compiladores Aula 16 - Análise Sintática Bruno Müller Junior Departamento de Informática UFPR 25 de Setembro de 2014 1 Introdução Hierarquia de Chomsky Reconhecedores Linguagens Livres de
Leia maisCENTRO UNIVERSITÁRIO CATÓLICA DE SANTA CATARINA Pró-Reitoria Acadêmica Setor de Pesquisa
FORMULÁRIO PARA INSCRIÇÃO DE PROJETO DE INICIAÇÃO CIENTÍFICA. Coordenção/Colegido o(s) qul(is) será vinculdo: Engenhris Curso (s) : Engenhris Nome do projeto: MtLb Aplicdo n Resolução de Sistems Lineres.
Leia maisMÉTODO DA POSIÇÃO FALSA EXEMPLO
MÉTODO DA POSIÇÃO FALSA Vimos que o Método d Bissecção encontr um novo intervlo trvés de um médi ritmétic. Ddo o intervlo [,], o método d posição fls utiliz médi ponderd de e com pesos f( e f(, respectivmente:
Leia maisEXERCÍCIOS RESOLVIDOS DE TEORIA DOS GRAFOS
EXERCÍCIOS RESOLVIDOS DE TEORIA DOS GRAFOS.) Considere tbel de trefs seguir pr construção de um cs de mdeir: TAREFAS PRÉ-REQUISITOS DIAS. Limpez do terreno Nenhum. Produção e colocção d fundção. Produção
Leia maisntexto finição presentação áfica ilização TempMed(input,output); Var Var Begin Begin readln(t1); readln(t1); readln(t2); readln(t2);
Arrys (tbels) Co (1) Imgine-se que é necessário efectur o cálculo d médi do primeiro trimestre do no. Com os conhecimentos presentdos té qui o progrm senvolver seri proximdmente Progrm Progrm TempMed(input,output);
Leia maisCompiladores. Bruno Lopes. Bruno Lopes Compiladores 1 / 30. Instituto de C
ompiladores Análise Sintática Bruno Lopes Bruno Lopes ompiladores 1 / 30 Front-end Lida com a linguagem de entrada Teste de pertinência: código fonte linguagem fonte? Programa está bem formado? Sintaticamente?
Leia maisReduce: reduz o que está imediatamente à esquerda do foco usando uma produção
Shift e reduce Shift: move o foco uma posição à direita A B C x y z A B C x y z é uma ação shift Reduce: reduz o que está imediatamente à esquerda do foco usando uma produção Se A x y é uma produção, então
Leia maisFUNDAÇÃO EDUCACIONAL DE ITUIUTABA
FUNDAÇÃO EDUCACIONAL DE ITUIUTABA ASSOCIADA À UNIVERSIDADE DO ESTADO DE MINAS GERAIS CURSO DE SISTEMA DE INFORMAÇÃO PILHA E FILA Prof. Walteno Martins Parreira Júnior www.waltenomartins.com.br waltenomartins@yahoo.com
Leia maisAnálise sintática. Análise sintática ascendente. Parte-se dos símbolos terminais em direção ao símbolo inicial da gramática. Derivação mais à direita
Análise sintática Função, interação com o compilador Análise descendente e ascendente Especificação e reconhecimento de cadeias de tokens válidas Implementação Tratamento de erros Prof. Thiago A. S. Pardo
Leia maisCompiladores - Análise Preditiva
Compiladores - Análise Preditiva Fabio Mascarenhas 207.2 http://www.dcc.ufrj.br/~fabiom/comp Analisador Preditivo Uma simplificação do parser recursivo com retrocesso que é possível para muitas gramáticas
Leia maisIES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br
IES-300 Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br Teste de Caixa Branca 2 Teste de Componentes: Caixa Branca Teste de Caixa Branca Grafo de Fluxo de
Leia maisLinguagens Formais e Compilação Ficha de exercícios
Linguagens Formais e Compilação Ficha de exercícios Simão Melo de Sousa 1 Linguagens Formais: Construir Frases Exercício 1 Para cada uma das gramáticas G seguintes, (a) descreva a linguagem L(G) gerada
Leia maisEXAME DE INGRESSO 2014 3º Período
PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA ÁREA DE ENGENHARIA DE COMPUTAÇÃO (141) ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO EXAME DE INGRESSO 2014 º Período NOME: Oservções Importntes: 1. Não
Leia maisSintaxe e Semântica. Fases da Compilação. programa fonte
Sintaxe e Semântica mleal@inf.puc-rio.br Fases da Compilação programa fonte tokens parse tree árvore anotada ou outra forma intermediária código intermediário código objeto código objeto otimizado scanner
Leia maisÁrvores e Árvores Binárias
MAC 5710 - Estruturas de Dados - 2008 Referência bibliográfica Os slides sobre este assunto são parcialmente baseados nas seções sobre árvores do capítulo 4 do livro N. Wirth. Algorithms + Data Structures
Leia maisTeoria de Linguagens 2 o semestre de 2014 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 23/10.
Pós-Grdução em Ciênci d Computção DCC/ICEx/UFMG Teori de Lingugens 2 o semestre de 2014 Professor: Newton José Vieir Primeir List de Exercícios Entreg: té 16:40h de 23/10. Oservções: O uso do softwre JFLAP,
Leia maisMÉTODOS DE ORDENAÇÃO
UNIÃO DE TECNOLOGIA E ESCOLAS DE SANTA CATARINA Tecnologia em Processamento de Dados MÉTODOS DE ORDENAÇÃO Tecnologia em Processamento de Dados (Pascal) Jurandir Steffens Acadêmico Glauco Vinicius Scheffel
Leia maisPlano da aula. Compiladores. Os erros típicos são sintáticos. Análise Sintática. Usando Gramáticas. Os erros típicos são sintáticos
Plano da aula Compiladores Análise sintática (1) Revisão: Gramáticas Livres de Contexto 1 Introdução: porque a análise sintática? Noções sobre Gramáticas Livres de Contexto: Definição Propriedades Derivações
Leia maisPROGRAMAÇÃO II 4. ÁRVORE
4. ÁRVORE PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma árvore impõe uma estrutura hierárquica em uma coleção de itens. Um exemplo familiar é a árvore genealógica. Árvores despontam de forma natural em
Leia mais