SlideShare a Scribd company logo
1 of 2
ESCUELA DE INGENIERÍAS
FACULTAD DE INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
PROGRAMA DE INGENIERÍA DE SISTEMAS E INFORMÁTICA

CURSO:                    Lenguajes y Compiladores
CODIGO:
PRERREQUISITOS:           Teoría de la Computación
SEMESTRE:                 V
INTENSIDAD HORARIA:       4 horas semanales
HABILITABLE:              NO

OBJETIVOS                                            CONTENIDO DEL CURSO

   •   Establecer las fases necesarias para             •    PRELIMINARES
       entender los Compiladores actuales.
                                                     Aspectos generales e historia
   •   Conocer las actividades del ciclo de          Importancia en el desarrollo de software
       desarrollo de un compilador.                  Modelo de Análisis y síntesis de la compilación
                                                     Arquitectura general de un Compilador
   •   Implementar cada uno de los módulos
       de un compilador de lenguaje de alto              •   ANÁLISIS LÉXICO
       nivel.
                                                     Aspectos Generales de las gramáticas
PROPOSITOS DE ENSEÑANZA                              regulares, autómatas y diagramas de transición
                                                     Administración y clasificación de los tipos de
   •   Brindar   a     los  estudiantes     el       datos
       conocimiento asociado con el análisis         Propósito general del análisis lexicográfico
       de lenguajes formales y su síntesis en
                                                     Arquitectura de la fase de análisis léxico y
       código de máquina.
                                                     aplicación al proyecto
                                                     Aspectos generales de la Tabla de Símbolos
   •   Reconocer mediante aplicación práctica
       los procesos de análisis lexicográfico,       Tipos de errores léxicos
       gramatical y semántico, como también
       los   procesos   de    generación     y           •   ANÁLISIS        ESTRUCTURAL            O
       optimización        de          código                SINTÁCTICO
       respectivamente.
                                                     Aspectos generales de las gramáticas
   •   Proporcionar un ejercicio de síntesis         independientes de contexto
       sobre la teoría, los métodos y las            Administración y clasificación de las estructuras
       técnicas aprendidas en lenguajes de           que conforman los enunciados de un lenguaje
       programación, estructuras de datos,           Propósito general del análisis sintáctico
       análisis de algoritmos y teoría de            Tipos de análisis sintácticos y mecanismos de
       lenguajes formales.                           implementación
                                                     Arquitectura de la fase de análisis sintáctico y
                                                     aplicación al proyecto
                                                     Aspectos asociados a la Tabla de Símbolos y la
                                                     generación de código
                                                     Tipos de errores sintácticos




                                                 1
•   ANÁLISIS SEMÁNTICO (SEMÁNTICA                            analizador léxico de algún lenguaje de
        DE LENGUAJES)                                            programación real. La segunda consiste
                                                                 en elaborar la gramática BNF del
Aspectos generales de las gramáticas                             lenguaje de programación.
atribuidas, tipos de atributos y su asociación
Traducción dirigida por la sintaxis
Administración y evaluación de las estructuras            BIBLIOGRAFIA
que conforman un código fuente analizado
                                                           •   KELLY, Dean. Teoría de Autómatas y
Propósito general del análisis semántico
                                                               Lenguajes Formales. Prentice Hall.
Mecanismos        de    implementación      (reglas
semánticas y evaluación de atributos)                      •   HOPCROFT Y ULLMAN. Introducción a la
Arquitectura de la fase de análisis semántica y                Teoría de Autómatas,        Lenguajes y
aplicación al proyecto                                         Computación. Editorial Cecsa.
Aspectos asociados a la Tabla de Símbolos y la
generación de código                                       •   AHO, JEFEY D. ULLMAN, Alfred V. The
Tipos de errores semánticos                                    Theory of Parsing, Translation, and
                                                               Compiling. Volume 1: Parsing. Prentice-
    •   ADMINISTRACIÓN DE ERRORES                                 Hall 1972

Aspectos generales de la administración de                 •   MARÍN, S, Diego Fernando. Material de
errores                                                        Clase Compiladores. Universidad del
Aplicación de la administración de errores en                  Quindío, 2004.
cada una de las fases de análisis
Mecanismos de implementación y aplicación al               •   AHO, SETHI, ULLMAN. Compilers.
proyecto                                                       Principles, Techniques and Tools. Addison-
                                                               Wesley 1986.
    •   FASE DE SÍNTESIS
                                                           •   TEUFEL, Schmidt. Compiladores.
                                                               Conceptos Fundamentales. Addison
Aspectos generales de la generación de código                  Wesley Iberoamericana 1995
intermedio
Aspectos generales de la generación de código              •   AHO, A. V., HOPCROFT, J. E., y ULLMAN,
Tipos de traducción, máquinas abstractas                       J.D. Data Structures and Algorithms.
Optimización de código y sus estrategias de
implementación                                             •   LEWIS, H. y PAPADIMITRIOU, C.
                                                               Elements of the Theory of Computation.
METODOLOGIA
                                                           •   SIPSER, Michael.       Introduction to the
   •    El curso se desarrollará mediante                      Theory of Computation.
        talleres de desarrollo por parte de los
        estudiantes.

   •    Se dejarán algunos temas para                     Elaboró: Oscar Eduardo Sánchez García
        investigación o autoestudio con asesoría          Docente de Teoría de la Computación
        del profesor.                                     II Semestre Académico del 2012
                                                          Universidad Pontificia Bolivariana
   •    Los    estudiantes  desarrollarán  un             República de Colombia
        proyecto que consta de dos partes. La
        primera consiste en construir un




                                                      2

More Related Content

Viewers also liked

Doctic modelopropuestadeintervencin
Doctic modelopropuestadeintervencinDoctic modelopropuestadeintervencin
Doctic modelopropuestadeintervencinOscar Eduardo
 
Codigo ejemplo j2 me
Codigo ejemplo   j2 meCodigo ejemplo   j2 me
Codigo ejemplo j2 meOscar Eduardo
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasElias Peña
 
Subir una aplicación a google play
Subir una aplicación a google playSubir una aplicación a google play
Subir una aplicación a google playOscar Eduardo
 
Teoría computación
Teoría computaciónTeoría computación
Teoría computaciónOscar Eduardo
 
Recursos economicos de centroamérica
Recursos economicos de centroaméricaRecursos economicos de centroamérica
Recursos economicos de centroaméricaDavid Mejia
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionBoris Salleg
 
Aprendiendo uml en 24 horas
Aprendiendo uml en 24 horasAprendiendo uml en 24 horas
Aprendiendo uml en 24 horasOscar Eduardo
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico maryr_
 

Viewers also liked (17)

Doctic modelopropuestadeintervencin
Doctic modelopropuestadeintervencinDoctic modelopropuestadeintervencin
Doctic modelopropuestadeintervencin
 
Cod intermedio
Cod intermedioCod intermedio
Cod intermedio
 
Codigo ejemplo j2 me
Codigo ejemplo   j2 meCodigo ejemplo   j2 me
Codigo ejemplo j2 me
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colas
 
Subir una aplicación a google play
Subir una aplicación a google playSubir una aplicación a google play
Subir una aplicación a google play
 
Teoría computación
Teoría computaciónTeoría computación
Teoría computación
 
Recursos economicos de centroamérica
Recursos economicos de centroaméricaRecursos economicos de centroamérica
Recursos economicos de centroamérica
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacion
 
Isw
IswIsw
Isw
 
Iswii
IswiiIswii
Iswii
 
Presentacion rup
Presentacion rupPresentacion rup
Presentacion rup
 
Iswiii
IswiiiIswiii
Iswiii
 
Aprendiendo uml en 24 horas
Aprendiendo uml en 24 horasAprendiendo uml en 24 horas
Aprendiendo uml en 24 horas
 
Inventario tic
Inventario ticInventario tic
Inventario tic
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Framework Android
Framework AndroidFramework Android
Framework Android
 
Clasificacion de Interpretes
Clasificacion de InterpretesClasificacion de Interpretes
Clasificacion de Interpretes
 

Similar to Lenguajes y compiladores

Similar to Lenguajes y compiladores (20)

Programa teoria computacion_2011-1
Programa teoria computacion_2011-1Programa teoria computacion_2011-1
Programa teoria computacion_2011-1
 
intro_lenguajes.pptx
intro_lenguajes.pptxintro_lenguajes.pptx
intro_lenguajes.pptx
 
SILABO INF.102
SILABO INF.102SILABO INF.102
SILABO INF.102
 
Teoría de la computación presentación
Teoría de la computación presentaciónTeoría de la computación presentación
Teoría de la computación presentación
 
Silabo fundamentos programación
Silabo fundamentos programaciónSilabo fundamentos programación
Silabo fundamentos programación
 
Software
SoftwareSoftware
Software
 
Tema1 prog logica
Tema1 prog logicaTema1 prog logica
Tema1 prog logica
 
tema1.ppt
tema1.ppttema1.ppt
tema1.ppt
 
tema1.ppt
tema1.ppttema1.ppt
tema1.ppt
 
tema1.ppt
tema1.ppttema1.ppt
tema1.ppt
 
Programación lineal
Programación linealProgramación lineal
Programación lineal
 
Silabo fund programación abril agosto2015
Silabo fund programación abril agosto2015Silabo fund programación abril agosto2015
Silabo fund programación abril agosto2015
 
TEMARIO - SCD - 1016-Lenguajes y Automatas II.pdf
TEMARIO - SCD - 1016-Lenguajes y Automatas II.pdfTEMARIO - SCD - 1016-Lenguajes y Automatas II.pdf
TEMARIO - SCD - 1016-Lenguajes y Automatas II.pdf
 
Automatas y compiladores clase1
Automatas y compiladores clase1Automatas y compiladores clase1
Automatas y compiladores clase1
 
7492681 m-algoritmos
7492681 m-algoritmos7492681 m-algoritmos
7492681 m-algoritmos
 
Silabo finaltl 2019 i
Silabo finaltl 2019 iSilabo finaltl 2019 i
Silabo finaltl 2019 i
 
Lenguajes de programación i
Lenguajes de programación   iLenguajes de programación   i
Lenguajes de programación i
 
programacion
programacionprogramacion
programacion
 
Programa instruccional C4 (2013-1)
Programa instruccional C4 (2013-1)Programa instruccional C4 (2013-1)
Programa instruccional C4 (2013-1)
 
Expresión Oral y Escrita
Expresión Oral y EscritaExpresión Oral y Escrita
Expresión Oral y Escrita
 

More from Oscar Eduardo

More from Oscar Eduardo (17)

Introducción a IngSW_2022.pptx
Introducción a IngSW_2022.pptxIntroducción a IngSW_2022.pptx
Introducción a IngSW_2022.pptx
 
Trayecto de actividades_diplomado
Trayecto de actividades_diplomadoTrayecto de actividades_diplomado
Trayecto de actividades_diplomado
 
Modelo pruebas
Modelo pruebasModelo pruebas
Modelo pruebas
 
Comunicación
ComunicaciónComunicación
Comunicación
 
Modelos de Mediación
Modelos de MediaciónModelos de Mediación
Modelos de Mediación
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
 
User stories
User storiesUser stories
User stories
 
App upb móvil 20141
App upb móvil 20141App upb móvil 20141
App upb móvil 20141
 
Analisis sintáctico
Analisis sintácticoAnalisis sintáctico
Analisis sintáctico
 
Arquitectura sistema
Arquitectura sistemaArquitectura sistema
Arquitectura sistema
 
Generalidades sobre windows phone 7.5
Generalidades sobre windows phone 7.5Generalidades sobre windows phone 7.5
Generalidades sobre windows phone 7.5
 
Notacion uml
Notacion umlNotacion uml
Notacion uml
 
Iswii
IswiiIswii
Iswii
 
Isw
IswIsw
Isw
 
Programación
ProgramaciónProgramación
Programación
 
Gramaticas y lic
Gramaticas y licGramaticas y lic
Gramaticas y lic
 
Javame sdk-datasheet-167819
Javame sdk-datasheet-167819Javame sdk-datasheet-167819
Javame sdk-datasheet-167819
 

Lenguajes y compiladores

  • 1. ESCUELA DE INGENIERÍAS FACULTAD DE INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN PROGRAMA DE INGENIERÍA DE SISTEMAS E INFORMÁTICA CURSO: Lenguajes y Compiladores CODIGO: PRERREQUISITOS: Teoría de la Computación SEMESTRE: V INTENSIDAD HORARIA: 4 horas semanales HABILITABLE: NO OBJETIVOS CONTENIDO DEL CURSO • Establecer las fases necesarias para • PRELIMINARES entender los Compiladores actuales. Aspectos generales e historia • Conocer las actividades del ciclo de Importancia en el desarrollo de software desarrollo de un compilador. Modelo de Análisis y síntesis de la compilación Arquitectura general de un Compilador • Implementar cada uno de los módulos de un compilador de lenguaje de alto • ANÁLISIS LÉXICO nivel. Aspectos Generales de las gramáticas PROPOSITOS DE ENSEÑANZA regulares, autómatas y diagramas de transición Administración y clasificación de los tipos de • Brindar a los estudiantes el datos conocimiento asociado con el análisis Propósito general del análisis lexicográfico de lenguajes formales y su síntesis en Arquitectura de la fase de análisis léxico y código de máquina. aplicación al proyecto Aspectos generales de la Tabla de Símbolos • Reconocer mediante aplicación práctica los procesos de análisis lexicográfico, Tipos de errores léxicos gramatical y semántico, como también los procesos de generación y • ANÁLISIS ESTRUCTURAL O optimización de código SINTÁCTICO respectivamente. Aspectos generales de las gramáticas • Proporcionar un ejercicio de síntesis independientes de contexto sobre la teoría, los métodos y las Administración y clasificación de las estructuras técnicas aprendidas en lenguajes de que conforman los enunciados de un lenguaje programación, estructuras de datos, Propósito general del análisis sintáctico análisis de algoritmos y teoría de Tipos de análisis sintácticos y mecanismos de lenguajes formales. implementación Arquitectura de la fase de análisis sintáctico y aplicación al proyecto Aspectos asociados a la Tabla de Símbolos y la generación de código Tipos de errores sintácticos 1
  • 2. ANÁLISIS SEMÁNTICO (SEMÁNTICA analizador léxico de algún lenguaje de DE LENGUAJES) programación real. La segunda consiste en elaborar la gramática BNF del Aspectos generales de las gramáticas lenguaje de programación. atribuidas, tipos de atributos y su asociación Traducción dirigida por la sintaxis Administración y evaluación de las estructuras BIBLIOGRAFIA que conforman un código fuente analizado • KELLY, Dean. Teoría de Autómatas y Propósito general del análisis semántico Lenguajes Formales. Prentice Hall. Mecanismos de implementación (reglas semánticas y evaluación de atributos) • HOPCROFT Y ULLMAN. Introducción a la Arquitectura de la fase de análisis semántica y Teoría de Autómatas, Lenguajes y aplicación al proyecto Computación. Editorial Cecsa. Aspectos asociados a la Tabla de Símbolos y la generación de código • AHO, JEFEY D. ULLMAN, Alfred V. The Tipos de errores semánticos Theory of Parsing, Translation, and Compiling. Volume 1: Parsing. Prentice- • ADMINISTRACIÓN DE ERRORES Hall 1972 Aspectos generales de la administración de • MARÍN, S, Diego Fernando. Material de errores Clase Compiladores. Universidad del Aplicación de la administración de errores en Quindío, 2004. cada una de las fases de análisis Mecanismos de implementación y aplicación al • AHO, SETHI, ULLMAN. Compilers. proyecto Principles, Techniques and Tools. Addison- Wesley 1986. • FASE DE SÍNTESIS • TEUFEL, Schmidt. Compiladores. Conceptos Fundamentales. Addison Aspectos generales de la generación de código Wesley Iberoamericana 1995 intermedio Aspectos generales de la generación de código • AHO, A. V., HOPCROFT, J. E., y ULLMAN, Tipos de traducción, máquinas abstractas J.D. Data Structures and Algorithms. Optimización de código y sus estrategias de implementación • LEWIS, H. y PAPADIMITRIOU, C. Elements of the Theory of Computation. METODOLOGIA • SIPSER, Michael. Introduction to the • El curso se desarrollará mediante Theory of Computation. talleres de desarrollo por parte de los estudiantes. • Se dejarán algunos temas para Elaboró: Oscar Eduardo Sánchez García investigación o autoestudio con asesoría Docente de Teoría de la Computación del profesor. II Semestre Académico del 2012 Universidad Pontificia Bolivariana • Los estudiantes desarrollarán un República de Colombia proyecto que consta de dos partes. La primera consiste en construir un 2