Gramaticas Independientes del Contexto, ejemplos y ejercicios *
|
|
|
- Miguel Ángel Cortés del Río
- hace 7 años
- Vistas:
Transcripción
1 OpenStax-CNX module: m Gramaticas Independientes del Contexto, ejemplos y ejercicios * Carlos Arturo Cortés Fuentes This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 2.0 Gramáticas Independientes del Contexto, ejemplos y ejercicios Una Gramática independientes del contexto (GIC) es una gramática formal 1 en la que cada regla de producción es de la forma: Exp x Donde Exp es un símbolo no terminal 2 y x es una cadena de terminales y/o no terminales. El término independiente del contexto se reere al hecho de que el no terminal Exp puede siempre ser sustituido por x sin tener en cuenta el contexto en el que ocurra. Un lenguaje formal 3 es independiente de contexto 4 si hay una gramática libre de contexto que lo genera, este tipo de gramática fue creada por Backus-Naur 5 y se utiliza para describir la mayoría de los lenguajes de programación. Una GIC está compuesta por 4 elementos: 1. Símbolos terminales (elementos que no generan nada) 2. No terminales (elementos del lado izquierdo de una producción, antes de la echa "- >") 3. Producciones (sentencias que se escriben en la gramática) 4. Símbolo inicial (primer elemento de la gramática) Ejemplo 1: Teniendo un lenguaje que genera expresiones de tipo: Para determinar si una GIC esta bien escrita se utilizan los arboles de analisis sintáctico 6, así: Producciones: lista -> lista + digito lista -> lista - digito lista -> digito digito -> Arbol de analisis sintactico: * Version 1.1: May 29, :12 am
2 OpenStax-CNX module: m Figure 1 La gramática es correcta siempre y cuando el símbolo inicial este al lado izquierdo de las producciones y sea la raíz del árbol. Ejemplo 2: Hacer una gramática que genere el número 5 Símbolo inicial (no terminal): Exp y Símbolo terminal: 5 Exp -> 5 Ejemplo 3: Hacer una gramática que genere un dígito. Exp -> Arbol de analisis sintactico: Exp 3 Ejemplo 4: Hacer una gramática que repita muchas veces el número 5 Exp -> Exp 5 5 Prueba con el número 555
3 OpenStax-CNX module: m Figure 2 Ejemplo 5: Gramática que genera muchos dígitos Exp -> Exp dig dig dig -> Prueba: Figure 3 Ejemplo 6: Hacer una GIC que genere un número binario Exp -> Exp bin bin bin -> 0 1 Ó con una sola producción: Exp -> Exp 0 Exp Prueba:
4 OpenStax-CNX module: m Figure 4 Aunque esta producción puede generar expresiones como 0000, para evitar errores como este: dig -> 1 Exp 1 Exp -> Exp 0 Exp Nota 1: El símbolo inicial siempre debe estar en la primera producción de la gramática. Nota 2: Expresiones de tipo, Exp -> Exp 0 1, genera potencias de 10, ejemplo Figure 5 Ejemplo 7: Hacer una gramática que genere un conjunto de 1 seguido de un conjunto de 0, donde el número 1 debe ser impar y el número de 0 debe ser par. Exp -> unos ceros ceros -> ceros unos -> unos 11 1
5 OpenStax-CNX module: m Figure 6 Figure 7 Ejemplo 8: ¾Cuál es el lenguaje de la siguiente producción? Pal -> Pal letras letras Letras -> a b c d e f g... z R/ Es una GIC que genera palabras escritas en minúsculas. Ejemplo 9: Hacer una GIC que genere una frase cuya letra inicial de cada palabra sea mayúscula. Frase -> Frase Exp pal pal Exp -> Pal -> may pal min min -> a b c d... z may -> A B C D... Z
6 OpenStax-CNX module: m Figure 8 Ejercicios 1. Hacer una gramática independiente del contexto (G.I.C), que genere nombres de persona, mínimo un nombre y un apellido, máximo dos nombres y dos apellidos. Cada nombre y apellido debe comenzar por mayúscula. Nota: Se tiene en cuenta que =vacio; no se aceptan apellidos compuestos. nombre nom nom2 esp nom nom2 nom2 esp nom nom nom min may may A B C D... Z min a b c d... z esp Árbol de análisis sintáctico
7 OpenStax-CNX module: m Figure 9 2. Hacer una gramática independiente del contexto (G.I.C), que genere frases cuyas palabras empiecen en una vocal mayúscula y terminen en una consonante minúscula. En medio de la vocal mayúscula y la consonante pueden haber letras minúsculas. frase frase esp pal2 pal2 esp pal2 pal1 conmin pal1 pal2 min vocmay vocmay A E I O U min conmin vocmin conmin b c d f g... z vocnim a e i o u 3. Hacer una gramática independiente del contexto (G.I.C), que genere la sentencia condicional if con las siguientes restricciones: Siempre se va a comparar una variable con un número entero o una variable con otra variable. Los operadores relacionales son: < > ==!=
8 OpenStax-CNX module: m Las variables deben empezar en una letra y después de esa letra pueden haber cualquier cantidad de números o letras. Los números solamente van a ser enteros de cualquier cantidad de dígitos. Un número no debe empezar en cero, pero puede ser cero. Se pueden utilizar los operadores lógicos && (and) y II (or). Solamente se van a utilizar los paréntesis después del if y al nal del if. Solución 1 if2 if1 term if1 if cond5 inicio cond5 cond5 oprlog cond4 cond4 cond1 cond2 cond3 cond3 var opr var cond2 var opr cero cond1 var opr num2 oprlog '&&' 'II' opr < > ==!= var var todo letras todo A B C D... Z letras A B C D... Z num2 num2 num1 num3 num1 num3 cero num cero 0 inicio if ( term ) Solución 2 si if (exp) exp comp comp oplog exp comp var oprel num var oprel var oprel < > ==!= oplog '&&' 'II' var var numero var letra letra letra a b c d... z A B C D... Z numero num 0 num num dig num 0 dig dig
Gramaticas Independientes del Contexto, ejemplos y ejercicios
OpenStax-CNX module: m16320 1 Gramaticas Independientes del Contexto, ejemplos y ejercicios Carlos Arturo Cortés Fuentes This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution
LENGUAJES Y GRAMÁTICAS
LENGUAJES Y GRAMÁTICAS Orlando Arboleda Molina Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle 20 de septiembre de 2008 Contenido Lenguajes y Gramáticas Gramáticas Gramáticas
Región de Convergencia para la Transformada- Z
OpenStax-CNX module: m1956 1 Región de Convergencia para la Transformada- Z Benjamin Fite Translated By: Fara Meza Erika Jackson Based on Region of Convergence for the Z-transform by Benjamin Fite This
Programación 1. Tema I Clase de problemas. Notación BNF (Backus Naur Form) o notación de Backus Naur
Programación 1 Tema I Clase de problemas Notación BNF (Backus Naur Form) o notación de Backus Naur 1 Notación BNF o notación de Backus Naur Notación BNF: se utiliza para definir formalmente las reglas
Licenciatura de Matemáticas Informática I Notación algorítmica - Descripción BNF
Licenciatura de Matemáticas Informática I Notación algorítmica - Descripción BNF Dpto. Informática Noviembre 1998 1. Deniciones en forma BNF < > Símbolos no terminales. Declaraciones u objetos declarados
Clasificación y Propiedades de las Señales
OpenStax-CNX module: m12818 1 Clasificación y Propiedades de las Señales Melissa Selik Richard Baraniuk Michael Haag Ricardo von Borries Translated By: Fara Meza Erika Jackson Based on Signal Classications
Conceptos básicos sobre gramáticas
Procesamiento de Lenguajes (PL) Curso 2014/2015 Conceptos básicos sobre gramáticas Gramáticas y lenguajes Gramáticas Dado un alfabeto Σ, un lenguaje es un conjunto (finito o infinito) de cadenas de símbolos
COMPILADORES E INTERPRETES
COMPILADORES E INTERPRETES Análisis semántico: Estudia el significado de la sentencia Procesadores de lenguaje: Convierte un programa fuente hecho en un lenguaje fuente a un programa objeto hecho en un
Curso de Java Introducción a la Programación III
Curso de Java Introducción a la Programación III Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Operadores relacionales e igualdad 2 Estructuras de control condicional
Procesadores de Lenguaje
Procesadores de Lenguaje Repaso TALF Cristina Tîrnăucă Dept. Matesco, Universidad de Cantabria Fac. Ciencias Ing. Informática Primavera de 2013 La Jerarquía de Chomsky Cuatro niveles de lenguajes formales
Lenguajes y Compiladores Aspectos Formales (Parte 2) Compiladores
Facultad de Ingeniería de Sistemas Lenguajes y Aspectos Formales (Parte 2) 2007 1 Derivaciones El proceso de búsqueda de un árbol sintáctico para una cadena se llama análisis sintáctico. El lenguaje generado
Lenguajes y Compiladores Aspectos Formales (Parte 1) Compiladores
Facultad de Ingeniería de Sistemas Lenguajes y Aspectos Formales (Parte 1) 1 Aspectos Formales Los compiladores traducen lenguajes que están formalmente definidos a través de reglas que permiten escribir
6. Modulaciones M-arias
OpenStax-CNX module: m35715 1 6. Modulaciones M-arias Mariangela Mezoa Translated By: Mariangela Mezoa This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License
GUÍA BÁSICA DE SCHEME v.4
Esta guía básica pretende ser una introducción elemental al lenguaje de programación Scheme. Se presenta como una guía de comienzo rápido de tal forma que permita conocer de una forma muy esquemática los
Procesadores de lenguajes Ingeniería Informática Especialidad de Computación Tercer curso, segundo cuatrimestre
Procesadores de lenguajes Ingeniería Informática Especialidad de Computación Tercer curso, segundo cuatrimestre Escuela Politécnica Superior de Córdoba Universidad de Córdoba Curso académico: 2016-2017
Clase 14: Gramáticas libres de contexto
M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom [email protected] 1 Contenido Gramáticas libres de contexto Propiedades de los lenguajes libres de contexto
Se pueden agrupar las reglas que tienen la misma parte izquierda:
GRAMÁTICA DE CONTEXTO LIBRE Gramática de contexto libre G = (V N, V T, P, S) que genera oraciones copulativas: V N = { , , , , V T = {el, la, hombre, niña,
TUTORIAL PROLOG. Lenguajes de programación Universidad Nacional de Colombia Santiago Carvajal Castañeda Mario Andrés Moreno Norato
TUTORIAL PROLOG Lenguajes de programación Universidad Nacional de Colombia Santiago Carvajal Castañeda Mario Andrés Moreno Norato Prolog es un lenguaje de programación lógica de propósito general que se
Control de concurrencia en bases de datos relacionales
OpenStax-CNX module: m18939 1 Control de concurrencia en bases de datos relacionales Miguel-Angel Sicilia This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License
Receptor Superheterodino para detectar emisoras AM
OpenStax-CNX module: m41106 1 Receptor Superheterodino para detectar emisoras AM José Miguel Hobaica Alvarado This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License
Compiladores. Análisis Sintáctico Ascendente. Adrian Ulises Mercado Martínez. Facultad de Ingeniería, UNAM. 5 de septiembre de 2013
Compiladores Análisis Sintáctico Ascendente Adrian Ulises Mercado Martínez Facultad de Ingeniería, UNAM 5 de septiembre de 2013 Adrian Ulises Mercado Martínez (FI,UNAM) Compiladores 5/07/2013 1 / 34 Índice
JavaScript: Operadores
Las variables por sí solas son de poca utilidad. Hasta ahora, sólo se ha visto cómo crear variables de diferentes tipos y cómo mostrar su valor mediante la función alert(). Para hacer programas realmente
Procesadores de lenguajes Ingeniería Informática Especialidad de Computación Tercer curso, segundo cuatrimestre
Procesadores de lenguajes Ingeniería Informática Especialidad de Computación Tercer curso, segundo cuatrimestre Escuela Politécnica Superior de Córdoba Universidad de Córdoba Curso académico: 2013-2014
GRAMÁTICAS LIBRES DE CONTEXTO
GRAMÁTICAS LIBRES DE CONTEXTO Definición Una gramática libre de contexto (GLC) es una descripción estructural precisa de un lenguaje. Formalmente es una tupla G=, donde Vn es el conjunto
Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales
UNA / AREA TRANSDEPARTAMENTAL DE ARTES MULTIMEDIALES Licenciatura en Artes Multimediales Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales JavaScript Algoritmo
ÁRBOLES DE SINTAXIS. Los nodos no terminales (nodos interiores) están rotulados por los símbolos no terminales.
ÁRBOLES DE SINTAXIS ÁRBOL grafo dirigido acíclico. Los nodos no terminales (nodos interiores) están rotulados por los símbolos no terminales. Los nodos terminales (nodos hojas) están rotulados por los
Entendiendo las Graficas de Polos y Ceros en el Plano-Z
OpenStax-CNX module: m2966 Entendiendo las Graficas de Polos y Ceros en el Plano-Z Michael Haag Translated By: Fara Meza Erika Jackson Based on Understanding Pole/Zero Plots on the Z-Plane by Michael Haag
Expresiones Aritméticas, relacionales y lógicas. Prof. Hilda Contreras Programación 1
Expresiones Aritméticas, relacionales y lógicas Prof. Hilda Contreras Programación 1 [email protected] Expresión aritmética Similar a las fórmulas matemáticas Es una expresión que manipula
Algebra Lineal: Conceptos Básicos
OpenStax-CNX module: m12862 1 Algebra Lineal: Conceptos Básicos Michael Haag Justin Romberg Translated By: Fara Meza Erika Jackson Based on Linear Algebra: The Basics by Michael Haag Justin Romberg This
DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE
DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE REPRESENTACIÓN DE ALGORITMOS PSEUDOCÓDIGO El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al
- AnallogicA - Software para crear tablas de verdad
- AnallogicA - Software para crear tablas de verdad Henry Suarez [email protected] Año 2010 Proyecto de POO de la carrera de Ingeniería en Informática de la Universidad Nacional del Litoral. Módulos del
GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo:
Cuestionario Modulo 1.1 GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo: 1001 0110. 2. qué es Dato? Definición: Es toda
Eigenvectores y Eigenvalores *
OpenStax-CNX module: m12870 1 Eigenvectores y Eigenvalores * Michael Haag Justin Romberg Translated By: Fara Meza Erika Jackson Based on Eigenvectors and Eigenvalues by Michael Haag Justin Romberg This
Tema 2. Concepto de Algoritmo
Tema 2. Concepto de Algoritmo Objetivos Definir el concepto de algoritmo Resolver problemas sencillos mediante el diseño de un algoritmo Conocer los tipos de datos elementales y las operaciones sobre ellos
Ciencias de la Computación I
Ciencias de la Computación I Gramáticas Libres del Contexto y Lenguajes Libres del Contexto Gramáticas Formales Una gramática formal es una cuadrupla G = (N, T, P, S) N = conjunto finito de símbolos no
Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)
Repaso Lenguaje C OBJETOS Variables Constantes Variable: objeto del ambiente cuyo contenido puede cambiar. Constante: objeto cuyo contenido no puede cambiar. Variables: - un nombre que la identifica. Deben
UNIDAD 7: PROGRAMACIÓN EN R
UNIDAD 7: PROGRAMACIÓN EN R Técnicas Inteligentes en Bioinformática Master en Lógica, Computación e Inteligencia Artificial Dpto. Ciencias de la Computación e Inteligencia Artificial Francisco J. Romero
El lenguaje C. 1. Identificadores, constantes y variables
Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria
4. Códigos de Línea *
OpenStax-CNX module: m35716 1 4. Códigos de Línea * Mariangela Mezoa Translated By: Mariangela Mezoa This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0
16 Análisis sintáctico I
2 Contenido Recordando la estructura de un compilador Recordando el análisis léxico l análisis sintáctico Comparación con el análisis léxico l Rol del Parser Lenguajes de programación Gramáticas structura
El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan
El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan tanto la escritura como la lectura de programas En esencia,
2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA
CONTENIDOS: 1. TIPOS DE DATOS 2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIICADORES COMO LOCALIDADES DE MEMORIA OBJETIO EDUCACIONAL: El alumno conocerá las reglas para cambiar fórmulas matemáticas
Tema 3.- Predicados y sentencias condicionales
UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO PROGRAMACIÓN DECLARATIVA INGENIERÍA INFORMÁTICA ESPECIALIDAD DE COMPUTACIÓN CUARTO CURSO PRIMER
Sintaxis de PSeInt Tutorial
Sintaxis de Tutorial Introducción a la Programación (T.U.M - T.U.G. - T.U.E. - T.U.T. - Prof) Introducción a la Computación (T.U.R. - T.U.W.) Fundamentos de la Informática (Ing. en Minas - Ing. Electr.)
El programa en JavaScript debe ir encerrado entre la marca script e inicializada la propiedad type con la cadena text/javascript:
Javascript Qué es JavaScript? Es un lenguaje de scripting (Código interno en las páginas HTML) necesario para los elaboradores de sitios Web, mediante el cual se puede hacer que las páginas sean activas
Programación Web Tema 3.2 Java Script Estructura del Lenguaje. Ramón Alcarria ETSI en Topografía, Geodesia y Cartografía - UPM
Programación Web Tema 3.2 Java Script Estructura del Lenguaje Miguel Ángel Manso Emerson Castañeda Ramón Alcarria ETSI en Topografía, Geodesia y Cartografía - UPM Contenido Variables Operadores Estructuras
Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
DEFINICIONES BÁSICAS E INTRODUCCIÓN A LENGUAJES FORMALES
1 DEFINICIONES BÁSICAS E INTRODUCCIÓN A LENGUAJES FORMALES Los LENGUAJES FORMALES están formados por PALABRAS, las palabras son CADENAS y las cadenas están constituidas por SÍMBOLOS de un ALFABETO. SÍMBOLOS
3. Ortogonalización Gram-Schmidt y teoría básica de las Constelaciones
OpenStax-CNX module: m35711 1 3. Ortogonalización Gram-Schmidt y teoría básica de las Constelaciones Mariangela Mezoa Translated By: Mariangela Mezoa This work is produced by OpenStax-CNX and licensed
Lic. Edinson Cuero Ramos Página 1
INTRODUCCIÓN A LA PROGRAMACIÓN LOS DATOS Y LAS OPERACIONES BÁSICAS LOS DATOS. Un dato es la unidad básica de información y es el objeto sobre el que opera un computador. Los tipos de datos que manipulan
Pre-Laboratorio 1 MA-33A : Introducción a Matlab
Pre-Laboratorio 1 MA-33A 2007-1: Introducción a Matlab Gonzalo Hernández - Gonzalo Rios UChile - Departamento de Ingeniería Matemática 1 Interfaz de Matlab Al ejecutar el programa Matlab, se abrirá una
Escuela Normal Superior N 40 Mariano Moreno. Cuadernillo Propedéutico 2017 Nivel Superior
Escuela Normal Superior N 40 Mariano Moreno Cuadernillo Propedéutico 2017 Nivel Superior INDICE Página Datos 1 Tipos de Datos 2 Variables 3 Constantes 4 Operadores y Expresiones 5 Algoritmos - Algoritmos
Tema 2. Tipos predefinidos
Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 2. Tipos predefinidos 2.1 Tipos simples predefinidos El tipo Bool El tipo Int El tipo Integer
Series de Fourier: El Método de Eigenfunciones *
OpenStax-CNX module: m1893 1 Series de Fourier: El Método de Eigenfunciones * Justin Romberg Translated By: Fara Meza Erika Jackson Based on Fourier Series: Eigenfunction Approach by Justin Romberg This
EXPRESIONES Y OPERADORES
EXPRESIONES Y OPERADORES Una expresión es un conjunto de operandos y operadores cuyo resultado puede ser evaluado. Las expresiones constituyen la base de cualquier aplicación y se construyen agrupando
Introducción a Python. Cecilia Manzino
Características del lenguaje Es un lenguaje de programación multiparadigma, soporta la programación orientada a objetos, imperativa y, en menor medida, funcional. Es un lenguaje multiplataforma, puede
Clase 11: Gramáticas. Solicitado: Ejercicios 09: Gramáticas
Solicitado: Ejercicios 09: Gramáticas M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom [email protected] 1 Contenido Gramática Elementos de una gramática
Sentencias en LabVIEW *
OpenStax-CNX module: m18070 1 Sentencias en LabVIEW * Patxi Alkorta Egiguren This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 2.0 1 Sentencias de selección
Analizador Léxico. Programación II Margarita Álvarez. Analizador Léxico - Funciones
Analizador Léxico Programación II Margarita Álvarez Analizador Léxico - Funciones Función Principal Leer carácter por carácter de la entrada y elaborar como salida una secuencia de componentes léxicos
introducción a la computación
introducción a la computación representaciones computacionales Bruno Lara Guzmán Departamento de Computación, Facultad de Ciencias 20 de noviembre de 2013 (UAEM) introducción a la computación 20 de noviembre
Lección 2 Introducción al lenguaje C
Lección Introducción al lenguaje C Decimal Binario Hexadecimal A B C D E F Octal Equivalencia entre decimal, binario, hexadecimal y octal. Código ASCII (American Standard Code for Information Interchange)
Lenguaje TIMBA. Fundamentos de la Informática Int. a la Programación Resolución de Problemas y Algoritmos
Lenguaje TIMBA Fundamentos de la Informática Int. a la Programación Resolución de Problemas y Algoritmos Área de Servicios Dpto. De Informática - FCFMyN Orígenes El lenguaje TIMBA recibe este nombre por:
UNIDAD 2: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACiÓN R
UNIDAD 2: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACiÓN R Técnicas Inteligentes en Bioinformática Máster en Lógica, Computación e Inteligencia Artificial Dpto. Ciencias de la Computación e Inteligencia Artificial
Semántica: principales usos. Semántica: principales enfoques. Semántica Operacional. Sintaxis abstracta de un lenguaje (sujeto) Semántica Operacional
Semántica: principales enfoques Semántica Operacional Se define el significado mediante una máquina abstracta (con estados) y secuencias de cómputos sobre dicha máquina Semántica Denotacional El significado
UNIDAD 2 Descripción de un programa
Descripción de un programa Estructura general de un programa. Elementos básicos. Tipos de datos simples: enteros, reales y carácter. Representación de datos en memoria. Operaciones sobre tipos de datos
Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales.
Expresiones Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. Por ejemplo: a + (b + 3) / c Cada expresión toma un valor que
Computabilidad y lenguajes formales: Sesión 19. Gramáticas Incontextuales (Context Free Grammars)
Computabilidad y lenguajes formales: Sesión 19. Gramáticas Incontextuales (Context Free Grammars) Prof. Gloria Inés Alvarez V. Departamento de Ciencias e Ingeniería de la Computación Pontificia Universidad
INTRODUCCIÓN A COMPILADORES Y LENGUAJES FORMALES LENGUAJES FORMALES
Todos los derechos de propiedad intelectual de esta obra pertenecen en exclusiva a la Universidad Europea de Madrid, S.L.U. Queda terminantemente prohibida la reproducción, puesta a disposición del público
Lenguaje de Diseño. Primera Parte. Segundo Cuatrimestre 2017
Primera Parte Fund. de la Informática Int. a la Programación Int. a la Computación Resolución de Problemas y Algoritmos Segundo Cuatrimestre 2017 1 Etapas en el proceso de resolver un problema: 1- Comprender
Diseño de Compiladores I. Estructura General de un Compilador
Diseño de Compiladores I Estructura General de un Compilador PROGRAMA FUENTE COMPILADOR SALIDA Mensajes de Error 2 Un compilador es un programa que traduce un programa escrito en lenguaje fuente y produce
Inducción, Recursión y Alcance. Inducción, Recursión y alcance. Inducción, Recursión y Alcance. Inducción, Recursión y Alcance
Inducción, Recursión y alcance Especificación inductiva de tipos de datos Tipo de datos: Conjunto de valores Conjunto de operaciones sobre dichos valores ejemplo: Sea S el conjunto más pequeño tal que:
Compiladores e Intérpretes
Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Compiladores e Intérpretes Proyecto N 1 Sintaxis de MiniJava Segundo Cuatrimestre de 2018 1. Introducción Este documento
Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
UNIVERSIDAD MODULAR ABIERTA FACULTAD DE CIENCIAS ECONOMICAS
UNIVERSIDAD MODULAR ABIERTA FACULTAD DE CIENCIAS ECONOMICAS TITLE DOCENTE: ING. Mirna Lorena Blanco de Magaña DATO Información en bruto, sin ningún significado Dado un enunciado, evento o acción, los datos:
LENGUAJE. Tema 2 Elementos de un programa
LENGUAJE Tema 2 Elementos de un programa ELEMENTOS DE UN PROGRAMA Comentarios. Identificadores. Constantes. Variables. Operadores. Sentencias o instrucciones. COMENTARIOS Los comentarios en C pueden ocupar
8. Detección no Coherente para modulaciones OOK y FSK
OpenStax-CNX module: m36884 1 8. Detección no Coherente para modulaciones OOK y FSK Mariangela Mezoa Translated By: Mariangela Mezoa This work is produced by OpenStax-CNX and licensed under the Creative
Lenguajes y Compiladores Traducción Dirigida por la Sintaxis
Facultad de Ingeniería de Sistemas Lenguajes y Compiladores Traducción Dirigida por la Sintaxis 1 Definición Código Intermedio: estructura de código que posee una complejidad comprendida entre el código
Lenguaje de Diseño. Primera Parte. Resolución de Problemas y Algoritmos. Primer Cuatrimestre Ing. En Informática e Ing.
Primera Parte Resolución de Problemas y Algoritmos Ing. En Informática e Ing. En Computación Primer Cuatrimestre 2017 1 Lenguajes Algorítmicos Los algoritmos pueden describirse, en mayor o menor detalle,
