SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
COMPILADORES: Analisador Léxico 
Aldisio Medeiros 
aldisiog@gmail.com 
Daniel Carvalho 
brodcearmusic2@gmail.com 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
ANÁLISE LÉXICA 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
TOKENS , PADRÕES E LEXEMAS 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
LEX PARA “C” 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
FLEX PARA “C” 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
ESTRUTURA LEX 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
ANÁLISE LÉXICA 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
TABELA DE SÍMBOLOS 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
TABELA DE SÍMBOLOS 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
TABELAS HASH 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
TABELAS HASH 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
SIMULANDO BUSCA DE SÍMBOLOS NA TABELA 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico 
EXEMPLO DE CODIGO DO LEX 
Neste link você encontra um exemplo de código do analizador 
léxico, salve no arquivo chamado: ANALISADOR_LEXICO.l 
http://pastebin.com/M49ZyuF0 
Para compilar, é necessário o compilador GCC configurado. 
Compile com o seguinte comando: 
#gcc ANALISADOR_LEXICO.l -o ANALISADOR -lfl 
Neste link tem um exemplo de código a ser verificado pelo 
analisador léxico, salve no arquivo chamado: codigo_fonte.txt 
http://pastebin.com/v5t3gfX0 
Para executar o analisador, passe como argumento um código 
fonte para que ele faça a separação de tokens.Execute o comando 
abaixo: 
#./ANALISADOR < codigo_fonte.txt 
Setembro, 2014 Aldisio Medeiros | Daniel Carvalho

Mais conteúdo relacionado

Mais procurados

Formação ITED Ensaios Coaxial
Formação ITED Ensaios CoaxialFormação ITED Ensaios Coaxial
Formação ITED Ensaios CoaxialFernando Reis
 
Qualidade de Software: Atividades e Cultura
Qualidade de Software: Atividades e CulturaQualidade de Software: Atividades e Cultura
Qualidade de Software: Atividades e CulturaLucas Amaral
 
Timeline Evolução do Banco de Dados
Timeline Evolução do Banco de DadosTimeline Evolução do Banco de Dados
Timeline Evolução do Banco de DadosMarylly Silva
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoEduardo Bohrer
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPDaniel Brandão
 
Componentes da cablagem estruturada
Componentes da cablagem estruturadaComponentes da cablagem estruturada
Componentes da cablagem estruturadaSuguha
 
Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]Miguel Aquino
 
Internet das Coisas (IoT): Indo além da conectividade
Internet das Coisas (IoT): Indo além da conectividadeInternet das Coisas (IoT): Indo além da conectividade
Internet das Coisas (IoT): Indo além da conectividadeLeonardo Marcão Florentino
 
Apresentação Fatec Norma 569-B
Apresentação Fatec Norma 569-BApresentação Fatec Norma 569-B
Apresentação Fatec Norma 569-BReginaldo F. Lopes
 
elektronik portfolyo nedir nasıl hazırlanır
elektronik portfolyo nedir nasıl hazırlanırelektronik portfolyo nedir nasıl hazırlanır
elektronik portfolyo nedir nasıl hazırlanırMerve Şimşek
 
Aula - Modelos de Processos de Desenvolvimento de Software / Mobile App
Aula - Modelos de Processos de Desenvolvimento de Software / Mobile AppAula - Modelos de Processos de Desenvolvimento de Software / Mobile App
Aula - Modelos de Processos de Desenvolvimento de Software / Mobile AppCloves da Rocha
 
FHIR API for .Net programmers by Mirjam Baltus
FHIR API for .Net programmers by Mirjam BaltusFHIR API for .Net programmers by Mirjam Baltus
FHIR API for .Net programmers by Mirjam BaltusFHIR Developer Days
 
Mapeamento do modelo conceitual para o lógico - Banco de Dados
Mapeamento do modelo conceitual  para o lógico - Banco de DadosMapeamento do modelo conceitual  para o lógico - Banco de Dados
Mapeamento do modelo conceitual para o lógico - Banco de Dadosinfo_cimol
 
Minicurso PostgreSQl
Minicurso PostgreSQlMinicurso PostgreSQl
Minicurso PostgreSQlCezar Souza
 
Melhores Mods para RimWorld
Melhores Mods para RimWorldMelhores Mods para RimWorld
Melhores Mods para RimWorldEduGosik1
 
Gestão de segurança da informação para concursos-questões CESPE 04
Gestão de segurança da informação para concursos-questões CESPE 04Gestão de segurança da informação para concursos-questões CESPE 04
Gestão de segurança da informação para concursos-questões CESPE 04Fernando Palma
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a pooSedu
 

Mais procurados (20)

Formação ITED Ensaios Coaxial
Formação ITED Ensaios CoaxialFormação ITED Ensaios Coaxial
Formação ITED Ensaios Coaxial
 
Aula 3 - Introdução a cloud computing
Aula 3 - Introdução a cloud computingAula 3 - Introdução a cloud computing
Aula 3 - Introdução a cloud computing
 
Qualidade de Software: Atividades e Cultura
Qualidade de Software: Atividades e CulturaQualidade de Software: Atividades e Cultura
Qualidade de Software: Atividades e Cultura
 
Timeline Evolução do Banco de Dados
Timeline Evolução do Banco de DadosTimeline Evolução do Banco de Dados
Timeline Evolução do Banco de Dados
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançado
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 
Componentes da cablagem estruturada
Componentes da cablagem estruturadaComponentes da cablagem estruturada
Componentes da cablagem estruturada
 
Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]
 
Internet das Coisas (IoT): Indo além da conectividade
Internet das Coisas (IoT): Indo além da conectividadeInternet das Coisas (IoT): Indo além da conectividade
Internet das Coisas (IoT): Indo além da conectividade
 
Apresentação Fatec Norma 569-B
Apresentação Fatec Norma 569-BApresentação Fatec Norma 569-B
Apresentação Fatec Norma 569-B
 
elektronik portfolyo nedir nasıl hazırlanır
elektronik portfolyo nedir nasıl hazırlanırelektronik portfolyo nedir nasıl hazırlanır
elektronik portfolyo nedir nasıl hazırlanır
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
 
Aula - Modelos de Processos de Desenvolvimento de Software / Mobile App
Aula - Modelos de Processos de Desenvolvimento de Software / Mobile AppAula - Modelos de Processos de Desenvolvimento de Software / Mobile App
Aula - Modelos de Processos de Desenvolvimento de Software / Mobile App
 
FHIR API for .Net programmers by Mirjam Baltus
FHIR API for .Net programmers by Mirjam BaltusFHIR API for .Net programmers by Mirjam Baltus
FHIR API for .Net programmers by Mirjam Baltus
 
Mapeamento do modelo conceitual para o lógico - Banco de Dados
Mapeamento do modelo conceitual  para o lógico - Banco de DadosMapeamento do modelo conceitual  para o lógico - Banco de Dados
Mapeamento do modelo conceitual para o lógico - Banco de Dados
 
Minicurso PostgreSQl
Minicurso PostgreSQlMinicurso PostgreSQl
Minicurso PostgreSQl
 
Melhores Mods para RimWorld
Melhores Mods para RimWorldMelhores Mods para RimWorld
Melhores Mods para RimWorld
 
Gestão de segurança da informação para concursos-questões CESPE 04
Gestão de segurança da informação para concursos-questões CESPE 04Gestão de segurança da informação para concursos-questões CESPE 04
Gestão de segurança da informação para concursos-questões CESPE 04
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 

Destaque

Como Construir um Compilador cap-1
Como Construir um Compilador cap-1Como Construir um Compilador cap-1
Como Construir um Compilador cap-1Maellson Marques
 
Compilador analise lexica
Compilador analise lexicaCompilador analise lexica
Compilador analise lexicaAdilmar Dantas
 
Gerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - CompiladoresGerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - CompiladoresAnderson Favaro
 
Compilers - Using Lex and YACC
Compilers - Using Lex and YACCCompilers - Using Lex and YACC
Compilers - Using Lex and YACCMichel Alves
 
Ficha javacc
Ficha javaccFicha javacc
Ficha javaccÆx Lynx
 
Como Construir um compilador-cap 2
Como Construir um compilador-cap 2Como Construir um compilador-cap 2
Como Construir um compilador-cap 2Maellson Marques
 
[TUTORIAL] PetitParser
[TUTORIAL] PetitParser[TUTORIAL] PetitParser
[TUTORIAL] PetitParserESUG
 
Poscomp-Cadernodequestes ano2011
Poscomp-Cadernodequestes ano2011Poscomp-Cadernodequestes ano2011
Poscomp-Cadernodequestes ano2011Maellson Marques
 
Bibliotecasdigitais
BibliotecasdigitaisBibliotecasdigitais
Bibliotecasdigitaisgueste4f45e5
 
Aspectos Teoricos de Analise Documentaria
Aspectos Teoricos de Analise DocumentariaAspectos Teoricos de Analise Documentaria
Aspectos Teoricos de Analise DocumentariaKlicia Mendonca
 
How to Talk About Pay-as-You-Throw
How to Talk About Pay-as-You-ThrowHow to Talk About Pay-as-You-Throw
How to Talk About Pay-as-You-ThrowWasteZero
 
AnáLise Da InformaçãO
AnáLise Da InformaçãOAnáLise Da InformaçãO
AnáLise Da InformaçãOlulinha
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Librarieselliando dias
 

Destaque (20)

Como Construir um Compilador cap-1
Como Construir um Compilador cap-1Como Construir um Compilador cap-1
Como Construir um Compilador cap-1
 
Compilador analise lexica
Compilador analise lexicaCompilador analise lexica
Compilador analise lexica
 
Gcc
GccGcc
Gcc
 
Gerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - CompiladoresGerador de Código-Objeto - Compiladores
Gerador de Código-Objeto - Compiladores
 
Compilers - Using Lex and YACC
Compilers - Using Lex and YACCCompilers - Using Lex and YACC
Compilers - Using Lex and YACC
 
Ficha javacc
Ficha javaccFicha javacc
Ficha javacc
 
JavaCC
JavaCCJavaCC
JavaCC
 
Como Construir um compilador-cap 2
Como Construir um compilador-cap 2Como Construir um compilador-cap 2
Como Construir um compilador-cap 2
 
Trabalho
TrabalhoTrabalho
Trabalho
 
Compiladores
CompiladoresCompiladores
Compiladores
 
[TUTORIAL] PetitParser
[TUTORIAL] PetitParser[TUTORIAL] PetitParser
[TUTORIAL] PetitParser
 
poscomp-Gabarito ano2010
poscomp-Gabarito ano2010poscomp-Gabarito ano2010
poscomp-Gabarito ano2010
 
Poscomp-Cadernodequestes ano2011
Poscomp-Cadernodequestes ano2011Poscomp-Cadernodequestes ano2011
Poscomp-Cadernodequestes ano2011
 
poscomp-Gabarito ano2011
poscomp-Gabarito ano2011poscomp-Gabarito ano2011
poscomp-Gabarito ano2011
 
Bibliotecasdigitais
BibliotecasdigitaisBibliotecasdigitais
Bibliotecasdigitais
 
Aspectos Teoricos de Analise Documentaria
Aspectos Teoricos de Analise DocumentariaAspectos Teoricos de Analise Documentaria
Aspectos Teoricos de Analise Documentaria
 
How to Talk About Pay-as-You-Throw
How to Talk About Pay-as-You-ThrowHow to Talk About Pay-as-You-Throw
How to Talk About Pay-as-You-Throw
 
AnáLise Da InformaçãO
AnáLise Da InformaçãOAnáLise Da InformaçãO
AnáLise Da InformaçãO
 
Compiladores 4
Compiladores 4Compiladores 4
Compiladores 4
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Libraries
 

Compilador-Analisador Léxico com FLEX + Linguagem C

  • 1. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico COMPILADORES: Analisador Léxico Aldisio Medeiros aldisiog@gmail.com Daniel Carvalho brodcearmusic2@gmail.com Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 2. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 3. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico ANÁLISE LÉXICA Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 4. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 5. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico TOKENS , PADRÕES E LEXEMAS Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 6. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 7. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 8. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 9. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 10. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico LEX PARA “C” Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 11. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico FLEX PARA “C” Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 12. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico ESTRUTURA LEX Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 13. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico ANÁLISE LÉXICA Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 14. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico TABELA DE SÍMBOLOS Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 15. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico TABELA DE SÍMBOLOS Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 16. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico TABELAS HASH Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 17. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico TABELAS HASH Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 18. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico SIMULANDO BUSCA DE SÍMBOLOS NA TABELA Setembro, 2014 Aldisio Medeiros | Daniel Carvalho
  • 19. Instituto Federal do Ceará - IFCE | Ciência da Computação Analisador Léxico EXEMPLO DE CODIGO DO LEX Neste link você encontra um exemplo de código do analizador léxico, salve no arquivo chamado: ANALISADOR_LEXICO.l http://pastebin.com/M49ZyuF0 Para compilar, é necessário o compilador GCC configurado. Compile com o seguinte comando: #gcc ANALISADOR_LEXICO.l -o ANALISADOR -lfl Neste link tem um exemplo de código a ser verificado pelo analisador léxico, salve no arquivo chamado: codigo_fonte.txt http://pastebin.com/v5t3gfX0 Para executar o analisador, passe como argumento um código fonte para que ele faça a separação de tokens.Execute o comando abaixo: #./ANALISADOR < codigo_fonte.txt Setembro, 2014 Aldisio Medeiros | Daniel Carvalho