Procesadores de lenguaje Ejercicios Análisis semántico

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Procesadores de lenguaje Ejercicios Análisis semántico"

Transcripción

1 Procesadores de lenguaje Ejercicios Análisis semántico Departamento de Ciencias de la Computación Universidad de Alcalá

2 Ejercicio 1 (propuesto) A partir de gramática de abajo se pide: Mostrar el árbol sintáctico decorado para la cadena de entrada aaaa Elaborar el grafo de dependencias para la evaluación en el orden correcto de todos los atributos. Indique la salida que produce el análisis de la entrada aaaa S S S AS S A A a printf( %d,s.v); S 0.v = A.v A.x = S 1.v A.x = 0 S.v = A.v A.v = A.x + 1

3 Ejercicio 2: Binario a decimal Considerar la siguiente gramática que genera números binarios: A AB B B 0 1 Obtener la gramática con atributos que al analizar un número binario calcule su equivalente en decimal. Mostrar el árbol para la cadena de entrada 101

4 Ejercicio 2: Binario a decimal Gramática con atributos: A AB { A 0.val = 2*A 1.val + B.val } A B { A.val = B.val} B 0 { B.val = 0 } B 1 { B.val = 1 }

5 Ejercicio 2: Binario a decimal

6 Ejercicio 3 (propuesto) Considerar la siguiente gramática: num dig num dig dig Añadirle atributos y acciones semánticas para que calcule su valor en decimal

7 Ejercicio 4: octal-decimal Dada la gramática de la página siguiente: Dibujar las gráficas de dependencias para cada regla Dibujar el árbol sintáctico para la expresión 345o Dibujar la gráfica de dependencia para el árbol sintáctico anterior y establecer una clasificación topológica para el mismo Generar el código correspondiente a las reglas semánticas asociadas al análisis de la expresión anterior

8 Ejercicio octal-decimal (semántica) num-base num carbase carbase o carbase d num num dígito num dígito dígito 0... dígito 7 dígito 8 dígito 9 num-base.val = num.val; num.base = carbase.base carbase.base = 8 carbase.base = 10 num 1.val = if dígito.val = error or num 2.val = error then error else num 2.val * num 1.base + dígito.val num 2.base= num 1.base dígito.base = num 1.base num.val = dígito.val dígito.base = num.base dígito.val = 0 dígito.val = 7 dígito.val = if dígito.base == 8 then error else 8 dígito.val = if dígito.base == 8 then error else 9

9 Octal-decimal. (Graf. de dependencias)

10 Octal-decimal. (Árbol sintáctico 345o) num_base num carbase num digito num digito digito

11 Octal-decimal. (Gráf. de dependencia)

12 Octal-decimal. (Código intermedio) a 1 =8; //carbase.base=8 a 2 =a 1 ; //m.base=8 a 3 =a 2 ; //m.base=8 a 4 =a 3 ; //m.base a 5 =a 4 ; //digito.base=8 a 6 =3; a 7 =a 6 ; a 8 = a 3 ; a 8 =4; if (a 9 =error a 7 ==error) then a 10 =error else a 10 =a 7 *a 3 +a 9 ; // a 10 =3*8+4=28 a 11 =a 2 ; //a 11 =8 a 12 =5; if (a 12 =error a 10 ==error) then a 13 =error else a 13 =a 10 *a 2 +a 12 ; // a 13 =28*8+5 a 13 =a 13 ;

13 Ejercicio 5 (propuesto) A partir de la gramática siguiente, amplíala con atributos sintetizados de manera que, cuando se reduzca por S, se muestre el número de a y b que contiene una frase cualquiera del lenguaje generado por la gramática: S (A) A A, D A D D a D b D (A)

14 Ejercicio 6 (propuesto) Amplie la gramática siguiente con atributos sintetizados para que obtenga el número decimal correspondiente al número binario de entrada: S C C 0 C C 1 C C 0 C 1 Construya el árbol sintáctico para la entrada incluyendo infomación topológica para nodos y hojas. Evalúe el árbol aplicando las reglas semánticas.

15 Ejercicio 6. Amplíe la gramática siguiente con atributos sintetizados para que calcule el valor mínimo y máximo de una lista de enteros. S L L num, L L num Presente las diferentes acciones semánticas para la entrada siguiente: 7, 8, 5, 3 $

16 Ejercicio 6. (Solución) S L L0 num, L1 L num S.maximo = L.maximo S.minimo = L.minimo L 0.minimo = MIN (num.valor, L 1.minimo) L 0.maximo = MAX (num.valor, L 1.maximo) L.maximo = num.valor L.minimo = num.valor

17 Ejercicio 7a Complete la gramática del ejercicio 7a con acciones semánticas que permitan calcular el número de listas de una expresión de entrada. L (A) A A (A) Tenga en cuenta que una lista está formada por una pareja de paréntesis balanceados, por lo que: ()(()) 3 listas (()) 2 listas ()() 2 listas (()(())) 4 listas

18 Ejercicio 7a. (Solución) L (A) A A(A) A.listas_antes = 1 L.total_listas = A.listas_despues A 1.listas_antes = A 0.listas_antes A 2.listas_antes = A 1.listas_despues + 1 A 0.listas_despues = A 2.listas_despues A A.listas_despues = A.listas_antes

19 Ejercicio 7b Complete la gramática siguiente con acciones semánticas que permitan calcular la profundidad de una expresión de entrada, entendida como el máximo número de anidamiento de todas las listas de la expresión. Ejemplos: ()(()) Profundidad 2 (()) Profundidad 2 ()() Profundidad 1 (()(())) Profundidad 3

20 Ejercicio 7b. (Solución) L (A) L.p = A.p + 1 A A(A) si A 1.p > A 2.p entonces A 0.p = A 1.p si_no A 0.p = A 2.p + 1 A A 0.p = 0

21 Ejercicio 7b (Árbol sintáctico).

22 Ejercicio 7b. Profundidad p=2 p=1 p=1 p=0 p=0 p=0

ANÁLISIS SEMÁNTICO. Especificación formal: Semántica Operacional, semántica denotacional, semántica Axiomática, Gramáticas con Atributos.

ANÁLISIS SEMÁNTICO. Especificación formal: Semántica Operacional, semántica denotacional, semántica Axiomática, Gramáticas con Atributos. ANÁLISIS SEMÁNTICO El análisis semántico dota de un significado coherente a lo que hemos hecho en el análisis sintáctico. El chequeo semántico se encarga de que los tipos que intervienen en las expresiones

Más detalles

GENERACIÓN DE CÓDIGO

GENERACIÓN DE CÓDIGO GENERACIÓN DE CÓDIGO INTRODUCCION La generación de código es la fase más compleja de un compilador, puesto que no sólo depende de las características del lenguaje fuente sino también de contar con información

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Gramáticas de Atributos

Gramáticas de Atributos Teoría de Lenguajes Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires Etapas de un Compilador Analizador Léxico Analizador Sintáctico (Parser)... Lexer: Genera secuencia de tokens Reporta

Más detalles

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8.

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. 1.) (HOLUB). Escribir un traductor que reconozca definiciones de C siguiendo el estilo antiguo, tal como: prueba(uno, dos, tres, cuatro,

Más detalles

Semántica Denotacional

Semántica Denotacional Semántica Denotacional Idea: El significado de un programa es la función denotada por el programa Componentes del metalenguaje para la definición semántica denotacional de un L.P.: Dominios sintácticos

Más detalles

Tiempo de Compilación. Programa fuente. Secuencia. de caracteres. Scanner. Secuencia. de símbolos Parser. Compilador.

Tiempo de Compilación. Programa fuente. Secuencia. de caracteres. Scanner. Secuencia. de símbolos Parser. Compilador. ORGANIZACIÓN DE LA MEMORIA EN TIEMPO DE EJECUCIÓN Compilador Tiempo de Compilación Programa fuente Secuencia de caracteres Scanner Secuencia de símbolos Parser Árbol sintáctico Analizador semántico Generador

Más detalles

Procesadores de lenguaje Tema 1: Introducción a los compiladores

Procesadores de lenguaje Tema 1: Introducción a los compiladores Procesadores de lenguaje Tema 1 Introducción a los compiladores Salvador Sánchez, Daniel Rodríguez Departamento de Ciencias de la Computación Universidad de Alcalá Resumen del tema Traductores Estructura

Más detalles

Nota 2. Luis Sierra. Marzo del 2010

Nota 2. Luis Sierra. Marzo del 2010 Nota 2 Luis Sierra Marzo del 2010 Cada mecanismo de definición de conjuntos que hemos comentado sugiere mecanismos para definir funciones y probar propiedades. Recordemos brevemente qué son las funciones

Más detalles

Gramática abstracta. Gramática abstracta. Forma de escribirlas: Pizquierda : Pderecha <Predicado> atributos o acc. semánticas}

Gramática abstracta. Gramática abstracta. Forma de escribirlas: Pizquierda : Pderecha <Predicado> atributos o acc. semánticas} Gramática abstracta Nos permite enlazar más fácilmente el análisis sintáctico con el semántico se comienza a manejar cuestiones que trabaja el semántico. Denota los aspectos importantes del lenguaje (equivalente

Más detalles

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION CICLO: 02/ 2012 UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION Nombre de la Practica: Lugar de Ejecución: Tiempo Estimado: MATERIA: GUIA DE LABORATORIO #05 Estructura Condicional

Más detalles

ESTRUCTURAS CONDICIONALES EN PHP: SWITCH, CASE, BREAK. EJEMPLOS DE USO Y EJERCICIOS RESUELTOS. (CU00820B)

ESTRUCTURAS CONDICIONALES EN PHP: SWITCH, CASE, BREAK. EJEMPLOS DE USO Y EJERCICIOS RESUELTOS. (CU00820B) APRENDERAPROGRAMARCOM ESTRUCTURAS CONDICIONALES EN PHP: SWITCH, CASE, BREAK EJEMPLOS DE USO Y EJERCICIOS RESUELTOS (CU00820B) Sección: Cursos Categoría: Tutorial básico del programador web: PHP desde cero

Más detalles

Tema 5 Sentencias de control de flujo. Fundamentos de Informática

Tema 5 Sentencias de control de flujo. Fundamentos de Informática Tema 5 Fundamentos de Informática Sentencias de Control Tipos de sentencias de control: Comprobación lógica para bifurcar el flujo de un programa. Sentencias de control condicional o alternativo Comprobación

Más detalles

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz Compiladores y Lenguajes de Programación Maria de Guadalupe Cota Ortiz Organizaciones que rigen las normas para estandarización de Lenguajes de Programación IEEE (Instituto de Ingenieros Eléctricos y Electrónicos)

Más detalles

Hoja de problemas Estructuras de Control

Hoja de problemas Estructuras de Control Departamento de Estadística, I.O. y Computación Ingeniería Técnica Industrial - Electrónica Industrial Fundamentos de Informática Hoja de problemas Estructuras de Control 1. Cuál es el efecto de las siguientes

Más detalles

Bases de Datos XPath - XQuery 1. XML: XPath - XQuery. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006

Bases de Datos XPath - XQuery 1. XML: XPath - XQuery. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos XPath - XQuery 1 XML: XPath - XQuery Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos XPath - XQuery 2 XPath - XQuery Ambos son estándares para acceder y obtener datos

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 11. Cálculo Relacional

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 11. Cálculo Relacional FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 11. Cálculo Relacional 1.- Introducción. 2.- Cálculo Relacional Orientado a Tuplas. 3.- Cálculo Relacional vs Álgebra Relacional: Algoritmo

Más detalles

CLASE # 5 TÉCNICAS DE CAJA BLANCA

CLASE # 5 TÉCNICAS DE CAJA BLANCA CLASE # 5 TÉCNICAS DE CAJA BLANCA 750105M - TÉCNICAS DE PRUEBAS DE SOFTWARE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN UNIVERSIDAD DEL VALLE SEMESTRE 2013A - DOCENTE BEATRIZ FLORIAN GAVIRIA Basado Parcialmente

Más detalles

OPERADORES LÓGICOS Y DE COMPARACIÓN EN PHP. PRIORIDADES. EJEMPLOS. EJERCICIOS RESUELTOS. (CU00818B)

OPERADORES LÓGICOS Y DE COMPARACIÓN EN PHP. PRIORIDADES. EJEMPLOS. EJERCICIOS RESUELTOS. (CU00818B) APRENDERAPROGRAMAR.COM OPERADORES LÓGICOS Y DE COMPARACIÓN EN PHP. PRIORIDADES. EJEMPLOS. EJERCICIOS RESUELTOS. (CU00818B) Sección: Cursos Categoría: Tutorial básico del programador web: PHP desde cero

Más detalles

UNIVERSIDAD DE SEVILLA PRÁCTICAS DE LABORATORIO ANÁLISIS SINTÁCTICO (1) LENGUAJES FORMALES Y AUTÓMATAS CURSO 2006/2007

UNIVERSIDAD DE SEVILLA PRÁCTICAS DE LABORATORIO ANÁLISIS SINTÁCTICO (1) LENGUAJES FORMALES Y AUTÓMATAS CURSO 2006/2007 UNIVERSIDAD DE SEVILLA E. T. S. INGENIERÍA INFORMÁTICA LENGUAJES Y SISTEMAS INFORMÁTICOS PRÁCTICAS DE LABORATORIO ANÁLISIS SINTÁCTICO (1) LENGUAJES FORMALES Y AUTÓMATAS CURSO 2006/2007 Qué es el análisis

Más detalles

Tecnólogo Informático- Estructuras de Datos y Algoritmos- 2009

Tecnólogo Informático- Estructuras de Datos y Algoritmos- 2009 Árboles Ejemplos de estructuras arborescentes: con forma de árbol Regla de Alcance: los objetos visibles en un procedimiento son aquellos declarados en él mismo o en cualquier ancestro de él (cualquier

Más detalles

PRACTICA 6. VECTORES Y MATRICES.

PRACTICA 6. VECTORES Y MATRICES. PRACTICA 6. VECTORES Y MATRICES. 1. Introducción. Los vectores y matrices son uno de los medios principales para el almacenamiento de los datos en un programa. En esta práctica veremos todos los conceptos

Más detalles

Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado Facultad de Ingeniería. Escuela de computación. 2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 3 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas

Más detalles

Lenguaje C Funciones. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Lenguaje C Funciones. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Lenguaje C Funciones Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Qué es una función o rutina/subrutina? Se presenta como un subalgoritmo

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

Notas de Clase. Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia. 21 de febrero de 2004

Notas de Clase. Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia. 21 de febrero de 2004 Árboles Notas de Clase Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia 21 de febrero de 2004 Índice 1. Definición 1 2. Términos Básicos 2

Más detalles

Introducción a la Computación TFA

Introducción a la Computación TFA Introducción a la Computación TFA Departamento de Informática Facultad de Ciencias Físico, Matemáticas y Naturales- UNSL Lenguaje de Diseño de Algoritmos Estructura de Control Condicional Simple y Múltiple

Más detalles

Capítulo 1: Sistemas de representación numérica Introducción. Dpto. de ATC, Universidad de Sevilla - Página 1 de 8

Capítulo 1: Sistemas de representación numérica Introducción. Dpto. de ATC, Universidad de Sevilla - Página 1 de 8 Dpto. de ATC, Universidad de Sevilla - Página de Capítulo : INTRODUCCIÓN SISTEMAS DE REPRESENTACIÓN NUMÉRICA Introducción Bases de numeración Sistema decimal Sistema binario Sistema hexadecimal REPRESENTACIÓN

Más detalles

Capítulo 1. MANUAL DE USUARIO

Capítulo 1. MANUAL DE USUARIO Capítulo 1. MANUAL DE USUARIO 1.1 SUCESIONES GRÁFICAS Lo primero que se hará es mostrar la pantalla que se encontrará el usuario cuando ejecute la aplicación, indicando las zonas en las que se divide esta:

Más detalles

Conceptos básicos: 1,2 puntos

Conceptos básicos: 1,2 puntos Procesadores del Lenguaje 1 Universidad Rey Juan Carlos Departamento de Lenguajes y Sistemas Informáticos I 8 de junio de 2009 Parcial primero. Conceptos básicos y problemas. Entrega en 90 minutos. Lea

Más detalles

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos: Tutorial de UML Introducción: El Lenguaje de Modelamiento Unificado (UML - Unified Modeling Language) es un lenguaje gráfico para visualizar, especificar y documentar cada una de las partes que comprende

Más detalles

Ingeniería en Informática

Ingeniería en Informática Departamento de Informática Universidad Carlos III de Madrid Ingeniería en Informática Aprendizaje Automático Junio 2007 Normas generales del examen El tiempo para realizar el examen es de 3 horas No se

Más detalles

DIAGRAMA PERT - EJEMPLO

DIAGRAMA PERT - EJEMPLO http://www.iusc.es/recursos/gesproy/textos/03.03.02.04.htm 1 de 1 24/11/2005 06:39 Construcción El primer paso en la creación de un diagrama PERT es dibujar el nodo que representa el inicio del proyecto,

Más detalles

Práctica 7: Programación con Matlab

Práctica 7: Programación con Matlab Práctica 7: Programación con Matlab 1. Se pide: a) Definir la función f x x) = x ( 1 2 1 si si 2 x 2 x < 2 ó x > 2 b) Diseñar un programa que obtenga f(x) si x es un escalar, pero si es un intervalo (vector

Más detalles

1. Descripción y objetivos

1. Descripción y objetivos Pruebas 1 1. Descripción y objetivos Las pruebas son prácticas a realizar en diversos momentos de la vida del sistema de información para verificar: El correcto funcionamiento de los componentes del sistema.

Más detalles

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación.

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación. Descripción de la semántica de ALFA En esta descripción sólo se mencionarán los aspectos en los que el lenguaje de programación ALFA pueda diferir de otros lenguajes de programación de alto nivel. Se sobreentienden

Más detalles

Examen Principios de Programación Febrero 2012

Examen Principios de Programación Febrero 2012 Por favor siga las siguientes indicaciones: Escriba con lápiz. Escriba su nombre y número de documento en todas las hojas que entregue. Numere las hojas e indique el total de hojas en la primera de ellas.

Más detalles

SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS

SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º, Año 2004/2005 SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS Contenidos: 1. Descripción general de Maude 2. Comandos básicos 3. Formato

Más detalles

PROCEDIMIENTOS Y FUNCIONES DE LA PROGRAMACIÓN (VISUAL BASIC)

PROCEDIMIENTOS Y FUNCIONES DE LA PROGRAMACIÓN (VISUAL BASIC) PROCEDIMIENTOS Y FUNCIONES DE LA PROGRAMACIÓN (VISUAL BASIC) REPASO (CLASES Y OBJETOS): Un objeto es una combinación de código y datos que puede tratarse como una unidad. Un objeto puede ser una porción

Más detalles

Carrera: IFM - 0423 3-2-8. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Carrera: IFM - 0423 3-2-8. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Matemáticas para computación Licenciatura en Informática IFM - 0423 3-2-8 2.- HISTORIA

Más detalles

Proyecto Scratch: http://scratch.mit.edu/projects/38518614/

Proyecto Scratch: http://scratch.mit.edu/projects/38518614/ Proyecto Scratch: http://scratch.mit.edu/projects/38518614/ SISTEMAS DE NUMERACÍON Dos de los sistemas de numeración más utilizados son el sistema decimal, que se emplea en la vida cotidiana, y el sistema

Más detalles

TEMA 1: INTRODUCCIÓN

TEMA 1: INTRODUCCIÓN 1 DISEÑO Y DESARROLLO DE COMPILADORES TEMA 1: INTRODUCCIÓN Qué es un Compilador? Un compilador no es más que un traductor, es decir, un programa que nos permite pasar información de un lenguaje a otro.

Más detalles

Sistemas de Numeración

Sistemas de Numeración Sistemas de Numeración Objetivo: Conoce los sistemas de numeración diferentes al decimal Ser capaces de transformar una cifra de un sistema a otro 1 Introducción El sistema de numeración usado de forma

Más detalles

UNIDAD I: LÓGICA PROPOSICIONAL

UNIDAD I: LÓGICA PROPOSICIONAL UNIDAD I: LÓGICA PROPOSICIONAL ASIGNATURA: INTRODUCCIÓN A LA COMPUTACIÓN CARRERAS: LICENCIATURA Y PROFESORADO EN CIENCIAS DE LA COMPUTACIÓN DEPARTAMENTO DE INFORMÁTICA FACULTAD DE CIENCIAS FÍSICO MATEMÁTICA

Más detalles

Proyecto Unico Interpretador de SetCalc

Proyecto Unico Interpretador de SetCalc Universidad Simón Bolívar Dpto. de Computación y Tecnología de la Información CI3721 - Traductores e Interpretadores Abril-Julio 2008 Proyecto Unico Interpretador de SetCalc A continuación se describe

Más detalles

Ciencias de la Computación I

Ciencias de la Computación I Ciencias de la Computación I Propiedades de Clausura de los Lenguajes Regulares y Lenguajes Libres del Contexto Propiedades de Clausura de Lenguajes Regulares Los lenguajes regulares (LR son cerrados bajo

Más detalles

TEMA 14. Modelos de representación de diagramas

TEMA 14. Modelos de representación de diagramas TEMA 14. Modelos de representación de diagramas Un diagrama es un dibujo en el que se muestran las relaciones entre las diferentes partes que componen un conjunto o sistema. También se puede entender como

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

Instructivo. VIDEOS EN: www.vimeo.com/apolosoft INTRODUCCION

Instructivo. VIDEOS EN: www.vimeo.com/apolosoft INTRODUCCION RUBROS Instructivo INTRODUCCION Se puede definir los Rubros como los ítems que ayuda a construir los pagos constituidos o no como salario que se aplican al momento de realizar el cálculo de la Nómina.

Más detalles

Guía de Modelo Relacional y Conversión de Entidad-Relación a Relacional

Guía de Modelo Relacional y Conversión de Entidad-Relación a Relacional Guía de Modelo Relacional y Conversión de Entidad-Relación a Relacional Prof. Claudio Gutiérrez, Aux. Mauricio Monsalve Primavera de 2007 1. Problemas conceptuales 1. Qué es una relación? Qué es un esquema

Más detalles

SISTEMAS DE NUMERACIÓN (11001, 011) 1.2 1.2 0.2 0.2 1.2 0.2 1.2 1.2 = + + + + + + + = 1 1 4 8 (32,12)

SISTEMAS DE NUMERACIÓN (11001, 011) 1.2 1.2 0.2 0.2 1.2 0.2 1.2 1.2 = + + + + + + + = 1 1 4 8 (32,12) SISTEMAS DE NUMERACIÓN 1. Expresa en base decimal los siguientes números: (10011) ; ( 11001,011 ) 4 (10011) = 1. + 0. + 0. + 1. + 1. = 16 + + 1 = 19 (11001, 011) 1. 1. 0. 0. 1. 0. 1. 1. 4 1 = + + + + +

Más detalles

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO 1º) Considérese un número estrictamente positivo del sistema de números máquina F(s+1, m, M, 10). Supongamos que tal número es: z = 0.d 1 d...d s 10 e Responde

Más detalles

DECODIFICADORES. Para cualquier código dado en las entradas solo se activa una de las N posibles salidas. 2 N

DECODIFICADORES. Para cualquier código dado en las entradas solo se activa una de las N posibles salidas. 2 N DECODIFICADORES Tienen como función detectar la presencia de una determinada combinación de bits en sus entradas y señalar la presencia de este código mediante un cierto nivel de salida. Un decodificador

Más detalles

Análisis Semántico en Procesadores de Lenguaje

Análisis Semántico en Procesadores de Lenguaje Análisis Semántico en Procesadores de Lenguaje Cuaderno Nº 38 Ingeniería Informática Francisco Ortín Soler Juan Manuel Cueva Lovelle Maria Cándida Luengo Díez Aquilino Adolfo Juan Fuente José Emilio Labra

Más detalles

Introducción a ANTLR. Procesadores de Lenguaje. 1 de 25

Introducción a ANTLR. Procesadores de Lenguaje. 1 de 25 Introducción a ANTLR Procesadores de Lenguaje 1 de 25 Introducción a ANTLR Qué es ANTLR? ANother Tool for Language Recognition Herramienta para construir traductores entre lenguajes informáticos Genera

Más detalles

UNIVERSIDADES DE ANDALUCÍA PRUEBA DE ACCESO A LA UNIVERSIDAD CURSO 2011-2012 ECONOMÍA DE LA EMPRESA CRITERIOS ESPECÍFICOS DE CORRECCIÓN El examen consta de tres partes (en cada una de sus opciones) que

Más detalles

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Por Andrés Raúl Bruno Saravia Entrega Nº 5. Cómo declaramos una variable en Lenguaje C? En C siempre se deben declarar las variables.

Más detalles

PROBLEMAS TECNOLOGÍA INDUSTRIAL II. CONTROL DIGITAL

PROBLEMAS TECNOLOGÍA INDUSTRIAL II. CONTROL DIGITAL PROBLEMAS TECNOLOGÍA INDUSTRIAL II. CONTROL DIGITAL 1. 2. 3. 4. 5. 6. a) Convierta el número (5B3) 16 al sistema decimal b) Convierta el número (3EA) 16 al sistema binario c) Convierta el número (235)

Más detalles

Capítulo 1 Lenguajes formales 6

Capítulo 1 Lenguajes formales 6 Capítulo 1 Lenguajes formales 6 1.8. Operaciones entre lenguajes Puesto que los lenguajes sobre Σ son subconjuntos de Σ, las operaciones usuales entre conjuntos son también operaciones válidas entre lenguajes.

Más detalles

ELECTRÓNICA DIGITAL. Una señal es la variación de una magnitud que permite transmitir información. Las señales pueden ser de dos tipos:

ELECTRÓNICA DIGITAL. Una señal es la variación de una magnitud que permite transmitir información. Las señales pueden ser de dos tipos: ELECTRÓNICA DIGITAL INDICE 1. TIPOS DE SEÑALES... 3 1.1. SEÑALES ANALÓGICAS... 3 1.2. SEÑALES DIGITALES... 3 2. REPRESENTACIÓN DE LAS SEÑALES DIGITALES... 3 2.1. CRONOGRAMAS... 3 2.2. TABLA DE VERDAD...

Más detalles

Materia: Informática. Nota de Clases Sistemas de Numeración

Materia: Informática. Nota de Clases Sistemas de Numeración Nota de Clases Sistemas de Numeración Conversión Entre Sistemas de Numeración 1. EL SISTEMA DE NUMERACIÓN 1.1. DEFINICIÓN DE UN SISTEMA DE NUMERACIÓN Un sistema de numeración es un conjunto finito de símbolos

Más detalles

Matrices Invertibles y Elementos de Álgebra Matricial

Matrices Invertibles y Elementos de Álgebra Matricial Matrices Invertibles y Elementos de Álgebra Matricial Departamento de Matemáticas, CCIR/ITESM 12 de enero de 2011 Índice 91 Introducción 1 92 Transpuesta 1 93 Propiedades de la transpuesta 2 94 Matrices

Más detalles

Notas de Teórico. Sistemas de Numeración

Notas de Teórico. Sistemas de Numeración Departamento de Arquitectura Instituto de Computación Universidad de la República Montevideo - Uruguay Sistemas de umeración Arquitectura de Computadoras (Versión 5. - 4) SISTEMAS DE UMERACIÓ Introducción

Más detalles

OR (+) AND( ). AND AND

OR (+) AND( ). AND AND Algebra de Boole 2.1.Introducción 2.1. Introducción El Algebra de Boole es un sistema matemático que utiliza variables y operadores lógicos. Las variables pueden valer 0 o 1. Y las operaciones básicas

Más detalles

La división A/B de dos números A (a3a2a1a0) y B (b3b2b1b0) de 4 bits, calculando el cociente Q (q3q2q1q0) y el resto R (r3r2r1r0), puede realizarse

La división A/B de dos números A (a3a2a1a0) y B (b3b2b1b0) de 4 bits, calculando el cociente Q (q3q2q1q0) y el resto R (r3r2r1r0), puede realizarse Pasar de base 2 a base 10: (1011010) 2, (0100111001) 2 Pasar de base 10 a base 2: 21, 58, 73 Pasar de base 10 a base 2, octal y hexadecimal: 35, 97 Pasar a base 2 y a base 10: (157) 8, (430) 8 Pasar a

Más detalles

Tema 7: ESPACIOS VECTORIALES AFINES

Tema 7: ESPACIOS VECTORIALES AFINES Tema 7: ESPACIOS VECTORIALES AFINES Prof. Rafael López Camino Departamento de Geometría y Topología Universidad de Granada Material docente para el alumno Asignatura: Geometría I. Curso 2003/04 Licenciatura:

Más detalles

Trabajo Práctico Nº 1 SISTEMAS DE NUMERACION

Trabajo Práctico Nº 1 SISTEMAS DE NUMERACION Trabajo Práctico Nº 1 SISTEMAS DE NUMERACION 66.70 Estructura del Computador OBJETIVOS: Elementos que definen un sistema numérico. Conversiones entre sistemas. Diferentes formas de representar números

Más detalles

Documentación Técnica: 1er Proyecto

Documentación Técnica: 1er Proyecto Universidad de San Carlos de Guatemala Facultad de Ingeniería Curso: Organización de Lenguajes y Compiladores 1 Documentación Técnica: 1er Proyecto Erik Vladimir Girón Márquez Carnet # 200313492 Sección

Más detalles

Problemas de algoritmos y programación. Lista de problemas de algoritmos y programación

Problemas de algoritmos y programación. Lista de problemas de algoritmos y programación Problemas de algoritmos y programación Lista de problemas de algoritmos y programación Contenido 1. Conceptos básicos de computación 2 1.1. Representación de la información en decimal, binario y hexadecimal...........

Más detalles

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle: PL/SQL (Procedural Language/Structured Query Language) PL/SQL es el lenguaje de programación que proporciona Oracle para extender el SQL estándar con otro tipo de instrucciones y elementos propios de los

Más detalles

Aprendizaje Automatizado

Aprendizaje Automatizado Aprendizaje Automatizado Aprendizaje Automatizado Programas que mejoran su comportamiento con la experiencia. Dos formas de adquirir experiencia: A partir de ejemplos suministrados por un usuario (un conjunto

Más detalles

Solución al Examen de Prácticas de Programación (Ingeniería Informática)

Solución al Examen de Prácticas de Programación (Ingeniería Informática) Solución al Examen de Prácticas de Programación (Ingeniería Informática) Junio 2006 Parte I. Cuestiones (3 puntos=50% nota del examen) 1) Se desea crear un conjunto de clases para representar en un programa

Más detalles

Informática. Temas 27/03/2014. Carrera: Bioingeniería Profesora: Lic. S. Vanesa Torres JTP: Ing. Thelma Zanon

Informática. Temas 27/03/2014. Carrera: Bioingeniería Profesora: Lic. S. Vanesa Torres JTP: Ing. Thelma Zanon Informática Carrera: Bioingeniería Profesora: Lic. S. Vanesa Torres JTP: Ing. Thelma Zanon Temas O Sistema de Numeración O Conversión entre números decimales y binarios. O El tamaño de las cifras binarias

Más detalles

ICM00794. Fundamentos de Computación www.icm.espol.edu.ec/materias/icm00794

ICM00794. Fundamentos de Computación www.icm.espol.edu.ec/materias/icm00794 Estructuras de Control Condicionales y Lazos Ejercicios Repaso de Bases Numéricas Los humanos a través del tiempo hemos adoptado diferentes formas de numeración, tanto en símbolos como bases. Las formas

Más detalles

Informática 1 Sistemas numéricos: decimal, binario, octal y hexadecimal FCFA Febrero 2012

Informática 1 Sistemas numéricos: decimal, binario, octal y hexadecimal FCFA Febrero 2012 Informática 1 Sistemas numéricos: decimal, binario, octal y hexadecimal CONVERSIONES DE UN SISTEMA A OTRO Para la realización de conversiones entre números de bases diferentes se efectúan operaciones aritméticas

Más detalles

Ejemplos básicos de webmathematica para profesores

Ejemplos básicos de webmathematica para profesores Ejemplos básicos de webmathematica para profesores Cualquier cálculo hecho dentro Mathematica puede ser realizado usando webmathematica con dos limitaciones significativas. Primero, al usar webmathematica,

Más detalles

Guía Corta: Alcance y Asociaciones. 1. Preliminares: Nombres y Asociaciones

Guía Corta: Alcance y Asociaciones. 1. Preliminares: Nombres y Asociaciones Universidad Simón Bolívar Departamento de Computación y Tecnología de la Información CI3641 Lenguajes de Programación I Guía Corta: Alcance y Asociaciones Esta guía presenta algunos conceptos básicos y

Más detalles

Ejercicios. 1. Definir en Maxima las siguientes funciones y evaluarlas en los puntos que se indican:

Ejercicios. 1. Definir en Maxima las siguientes funciones y evaluarlas en los puntos que se indican: Ejercicios. 1. Definir en Maxima las siguientes funciones y evaluarlas en los puntos que se indican: 2. Graficar las funciones anteriores, definiendo adecuadamente los rangos de x e y, para visualizar

Más detalles

Aritmética finita y análisis de error

Aritmética finita y análisis de error Aritmética finita y análisis de error Escuela de Ingeniería Informática de Oviedo (Dpto. de Matemáticas-UniOvi) Computación Numérica Aritmética finita y análisis de error 1 / 47 Contenidos 1 Sistemas decimal

Más detalles

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008 INTRODUCCIÓN Estructura de Datos Tipos Abstractos de Datos (TAD S) Para poder obtener un programa que resuelva un problema dado, son necesarios varios pasos : La formulación y especificación del problema

Más detalles

DEFINICION. Ing. M.Sc. Fulbia Torres Asignatura: Estructuras de Datos Barquisimeto 2006

DEFINICION. Ing. M.Sc. Fulbia Torres Asignatura: Estructuras de Datos Barquisimeto 2006 ARBOLES ESTRUCTURAS DE DATOS 2006 DEFINICION Un árbol (tree) es un conjunto finito de nodos. Es una estructura jerárquica aplicable sobre una colección de elementos u objetos llamados nodos; uno de los

Más detalles

Gramaticas Independientes del Contexto, ejemplos y ejercicios *

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

Más detalles

GENERACIÓN Y CONSTRUCCIÓN DE DOCUMENTOS XML

GENERACIÓN Y CONSTRUCCIÓN DE DOCUMENTOS XML RUEDA TORRES DULCE CAROLINA 3CM2 GENERACIÓN Y CONSTRUCCIÓN DE DOCUMENTOS XML Java & XML DESARROLLO > Generating Sample En este ejercicio se genera un documento XML en base a las reglas establecidas en

Más detalles

❷ Aritmética Binaria Entera

❷ Aritmética Binaria Entera ❷ Una de las principales aplicaciones de la electrónica digital es el diseño de dispositivos capaces de efectuar cálculos aritméticos, ya sea como principal objetivo (calculadoras, computadoras, máquinas

Más detalles

Examen de Fundamentos de la Programación (Modelo 1)

Examen de Fundamentos de la Programación (Modelo 1) Examen de Fundamentos de la Programación (Modelo 1) 27 de noviembre de 2007 1. Qué escribe el siguiente programa si se teclea 5? int num, resultado; for (resultado=0; num; resultado++) num -= 2; printf

Más detalles

EXÁMENES DE REPASO Teoría de Autómatas y Lenguajes Formales UNIVERSIDAD FRANCISCO DE VITORIA

EXÁMENES DE REPASO Teoría de Autómatas y Lenguajes Formales UNIVERSIDAD FRANCISCO DE VITORIA EXÁMENES DE REPASO Teoría de Autómatas y Lenguajes Formales UNIVERSIDAD FRANCISCO DE VITORIA 1ER PARCIAL TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Examen parcial 12/02/2003 1.- Usa el lema de bombeo para

Más detalles

Opciones Bandeja de Entrada Workflow. Mantenimiento Proyecto Génesis. Universidad Complutense de Madrid

Opciones Bandeja de Entrada Workflow. Mantenimiento Proyecto Génesis. Universidad Complutense de Madrid Opciones Bandeja de Entrada Workflow Mantenimiento Proyecto Génesis Universidad Complutense de Madrid Tabla de contenidos 1 INTRODUCCIÓN...3 1.1 ACCESO A LA BANDEJA DE WORKFLOW...3 1.2 OPCIONES PARA EL

Más detalles

Representación de números en binario

Representación de números en binario Representación de números en binario Héctor Antonio Villa Martínez Programa de Ciencias de la Computación Universidad de Sonora El sistema binario es el más utilizado en sistemas digitales porque es más

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

DESCRIPCIÓN ESPECÍFICA

DESCRIPCIÓN ESPECÍFICA DESCRIPCIÓN ESPECÍFICA NÚCLEO: Sector Comercio y Servicios SUBSECTOR: Informática Nombre del Módulo: ARQUITECTURA DE COMPUTADORES total: 60 horas Objetivo General: Explicar el funcionamiento interno de

Más detalles

Funciones mas importantes para el manejo de Caracteres

Funciones mas importantes para el manejo de Caracteres Caracteres Un carácter es un símbolo que la computadora puede representar. Cuando se asigna una constante de carácter a una variable tipo char, esta debe estar entre apostrofes. char letra= a ; Funciones

Más detalles

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

Clase 25 de agosto. - Son los conjuntos de estados (válidos o no) para las condiciones de entrada.

Clase 25 de agosto. - Son los conjuntos de estados (válidos o no) para las condiciones de entrada. Clase 25 de agosto Decisiones: - validaciones - casos de prueba Clases de equivalencias: - Son los conjuntos de estados (válidos o no) para las condiciones de entrada. Condiciones de entrada: - valor numérico

Más detalles

Manual de Lisp para IACS (Curso 91 92)

Manual de Lisp para IACS (Curso 91 92) Dpto. de Álgebra, Computación, Geometría y Topología Universidad de Sevilla Manual de Lisp para IACS (Curso 91 92) Sevilla, 1992 Contenido 1 Introducción 1 1.1 Introducción............................

Más detalles

Estructura de Datos y de la Información. Pilas y expresiones aritméticas

Estructura de Datos y de la Información. Pilas y expresiones aritméticas Estructura de Datos y de la Información Pilas y expresiones aritméticas LIDIA Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

GESTION DE NEGOCIOS. Clasificación de las Unidades de Negocio UNIDAD DE NEGOCIO

GESTION DE NEGOCIOS. Clasificación de las Unidades de Negocio UNIDAD DE NEGOCIO GESTION DE NEGOCIOS Gestión del Negocios son las aéreas, sucursales, línea de productos por las que requerimos analizar sus ingresos, costos y gastos. Clasificación de las Unidades de Negocio UNIDAD DE

Más detalles

Processadors de Llenguatge II. Compiladores

Processadors de Llenguatge II. Compiladores Processadors de Llenguatge II Compiladores Que es un compilador Un traductor es cualquier programa que toma un texto escrito en un lengiaje y da como salida en otro lenguaje(llamado objeto) texto lenguaje

Más detalles

CUADERNILLO DE ACTIVIDADES Y TAREAS TECNOLOGÍA III (Hoja de Cálculo)

CUADERNILLO DE ACTIVIDADES Y TAREAS TECNOLOGÍA III (Hoja de Cálculo) UNIVERSIDAD AUTÓNOMA DE GUADALAJARA Unidad Académica de Educación Secundaria y Media Superior CUADERNILLO DE ACTIVIDADES Y TAREAS (Hoja de Cálculo) 3er. AÑO SECUNDARIA 2010/2011 ! "! ##"$%&# '#()* + #()($#(

Más detalles

Tema 7: Optimización sobre Redes Muchos de los problemas de Investigación Operativa pueden modelizarse y resolverse sobre un grafo: conjunto de

Tema 7: Optimización sobre Redes Muchos de los problemas de Investigación Operativa pueden modelizarse y resolverse sobre un grafo: conjunto de Tema 7: Optimización sobre Redes Muchos de los problemas de Investigación Operativa pueden modelizarse y resolverse sobre un grafo: conjunto de vértices o nodos conectados con arcos y/o aristas. Diseñar

Más detalles

Primer Parcial de Programación 3 (1/10/2009)

Primer Parcial de Programación 3 (1/10/2009) Primer Parcial de Programación (/0/009) Instituto de Computación, Facultad de Ingeniería Este parcial dura horas y contiene carillas. El total de puntos es 0. En los enunciados llamamos C* a la extensión

Más detalles