Tema 1: Introducción

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Tema 1: Introducción"

Transcripción

1 Tema 1: Introducción Procesamiento de Lenguajes Dept. de Lenguajes y Sistemas Informáticos Universidad de Alicante Procesamiento de Lenguajes Tema 1: Introducción 1 / 12

2 Definición de compilador Un compilador es un programa que traduce de un lenguaje fuente (normalmente un lenguaje de programación de alto nivel) a un lenguaje objeto (normalmente código máquina) IMPORTANTE: un compilador es un traductor Un IDE (Integrated Development Environment) no es un compilador, un IDE suele tener un buen editor, y llama al compilador y enlazador, y suele integrar un depurador. Procesamiento de Lenguajes Tema 1: Introducción 2 / 12

3 Tipos de procesadores de lenguaje LENGUAJE FUENTE LENGUAJE OBJETO traductor/conversor alto alto compilador alto bajo ensamblador medio/bajo bajo preprocesador alto alto intérprete alto medio (*) (*) la mayoría de los intérpretes actuales precompilan el programa fuente y generan un código intermedio Procesamiento de Lenguajes Tema 1: Introducción 3 / 12

4 Qué vamos a estudiar? Las técnicas y algoritmos que vamos a estudiar se aplican al diseño de compiladores, pero se pueden aplicar en otras tareas que requieran el procesamiento y/o traducción de lenguajes informáticos: Traductores automáticos de lenguajes humanos (ejemplo: internostrum, Apertium,...) Visores de PDF (evince, acroread,...) Navegadores web (Firefox, Chrome,...) Ficheros de configuración (.ini...)... Procesamiento de Lenguajes Tema 1: Introducción 4 / 12

5 Historia de los compiladores Los primeros compiladores eran humanos: Los primeros compiladores no humanos eran compiladores cruzados (cross-compilers): en una máquina se generaba código para ser ejecutado en otra máquina. Cuando se diseñaba una nueva arquitectura, lo primero que se hacía era diseñar un cross-compiler en una arquitectura conocida, para poder compilar el compilador nativo en la nueva arquitectura. Procesamiento de Lenguajes Tema 1: Introducción 5 / 12

6 Diseño de compiladores C C++ Pascal FORTRAN Cobol Ada 8086 RISC N lenguajes fuente M lenguajes objeto NxM compiladores Procesamiento de Lenguajes Tema 1: Introducción 6 / 12

7 Código intermedio FRONT END C C++ Pascal FORTRAN Cobol Ada Código Intermedio BACK END 8086 RISC N lenguajes fuente M lenguajes objeto N front end + M back end Procesamiento de Lenguajes Tema 1: Introducción 7 / 12

8 Código intermedio (mundo real) FRONT END C C++ Pascal FORTRAN Cobol Ada Código Intermedio 1 Código Intermedio 2 Código Intermedio 3 BACK END 8086 RISC Procesamiento de Lenguajes Tema 1: Introducción 8 / 12

9 Fases de un compilador Internamente, un compilador se organiza en varias fases o partes que interaccionan entre sí: 1 Análisis léxico 2 Análisis sintáctico 3 Análisis semántico 4 Gestión de errores 5 Tabla de símbolos 6 Generación de código intermedio 7 Optimización de código intermedio 8 Generación de código objeto 9 Optimización de código objeto Procesamiento de Lenguajes Tema 1: Introducción 9 / 12

10 Estructura estándar de un compilador Gestión errores Tab.Símbolos A. Semántico Programa fuente A. Léxico A. Sintáctico Generación Cód. Intermedio FRONT END Programa Cód.Intermedio Optimización Código Intermedio BACK END Generación Código Objeto Optimización Código Objeto Programa Cód. Objeto Procesamiento de Lenguajes Tema 1: Introducción 10 / 12

11 Cómo se especifica un traductor/compilador? Especificación léxica: expresiones regulares, AFD, diagramas de transiciones Especificación sintáctica: gramáticas independientes del contexto Especificación semántica: sistema de tipos, restricciones semánticas Especificación de la traducción: gramáticas de atributos, DDS, ETDS Procesamiento de Lenguajes Tema 1: Introducción 11 / 12

12 Ejemplo de traducción 2+35*4 suma(2,prod(35,4)) 2-3/(4+5*6) resta(2,div(3,suma(4,prod(5,6)))) suma(resta(2,3),4) resta(suma(resta(2,3),4),5) Hay dos formas de resolver este problema: 1 A mano (difícil) 2 Utilizando técnicas para el diseño de compiladores: análisis léxico, análisis sintáctico, traducción dirigida por la sintaxis (chupao) Procesamiento de Lenguajes Tema 1: Introducción 12 / 12

Tema 1: Introducción

Tema 1: Introducción Tema 1: Introducción Procesamiento de Lenguajes Dept. de Lenguajes y Sistemas Informáticos Universidad de Alicante Procesamiento de Lenguajes Tema 1: Introducción 1 / 12 Definición de compilador Un compilador

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

Comunicación con la Computadora

Comunicación con la Computadora Comunicación con la Computadora Programación Básica Copyright CARIMOBITS Comunicación con la computadora Se logra a través de lenguajes de computadoras o lenguajes de programación. Tipos de lenguajes de

Más detalles

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

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

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

Bloque II. Elementos del lenguaje de programación Java

Bloque II. Elementos del lenguaje de programación Java Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida

Más detalles

4 o Ingeniería Informática

4 o Ingeniería Informática Esquema del tema 1. Introducción 4 o Ingeniería Informática II26 Procesadores de lenguaje Estructura de los compiladores e intérpretes 2. Etapas del proceso de traducción 3. La interpretación 4. La arquitectura

Más detalles

Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y

Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y 1. Paradigmas de programación Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y automáticamente convertibles

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

Introducción a compiladores. Universidad Autónoma de Aguascalientes Prof. Eduardo Serna-Pérez Correo-e: eduardo.serna@gmail.com

Introducción a compiladores. Universidad Autónoma de Aguascalientes Prof. Eduardo Serna-Pérez Correo-e: eduardo.serna@gmail.com Introducción a compiladores Universidad Autónoma de Aguascalientes Prof. Eduardo Serna-Pérez Correo-e: eduardo.serna@gmail.com Introducción a compiladores Definición de compilador Historia de los compiladores

Más detalles

Tema 1: Computadores y Programas

Tema 1: Computadores y Programas Tema 1: Computadores y Programas Ingeniería Informática Ingeniería Técnica en Informática de Sistemas Ingeniería Técnica en Informática de Gestión Departamento de Ciencia de la Computación e I.A. Universidad

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

Lenguajes de Programación

Lenguajes de Programación Lenguajes de Programación Mediante los programas se indica a la computadora que tarea debe realizar y cómo efectuarla, pero para ello es preciso introducir estas órdenes en un lenguaje que el sistema pueda

Más detalles

Tema 2. Software. Fundamentos de Informática Grado en Ingeniería Mecánica

Tema 2. Software. Fundamentos de Informática Grado en Ingeniería Mecánica Tema 2. Software. Fundamentos de Informática Grado en Ingeniería Mecánica Definición de software «Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que

Más detalles

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA. Unidad Zacatenco TESIS QUE PARA OBTENER EL TÍTULO DE:

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA. Unidad Zacatenco TESIS QUE PARA OBTENER EL TÍTULO DE: INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA Unidad Zacatenco Implementación de un traductor de instrucciones para microcontroladores MSP430, usando software libre

Más detalles

Soporte lógico de computadoras

Soporte lógico de computadoras Soporte lógico de computadoras Software: Sistemas Operativos Lenguajes de programación Lenguajes de Programación. Clasificación Proximidad del lenguaje al que entiende el ordenador: Bajo nivel: específico

Más detalles

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Introducción a la Programación 11 O. Humberto Cervantes Maceda Introducción a la Programación 11 O Humberto Cervantes Maceda Información del profesor Humberto Cervantes Maceda T 138 www.humbertocervantes.net/cursos Acerca de ustedes Nombre Carrera Qué experiencia

Más detalles

1. Resolución de problemas con computadoras

1. Resolución de problemas con computadoras Fundamentos de Programación I 1. Resolución de problemas con computadoras Luis Rodríguez Baena (luis.rodriguez@upsam.es) Universidad Pontificia de Salamanca Escuela Superior de Ingeniería y Arquitectura

Más detalles

Introducción a la Informática

Introducción a la Informática Introducción a la Informática El Software o Soporte Lógico Definición de SOFTWARE Conjunto de programas necesarios para realizar con el ordenador el tratamiento de la información. SW = Sistema Operativo

Más detalles

Capítulo 3. Definición de SOFTWARE. Estructura del SW. Software o soporte lógico

Capítulo 3. Definición de SOFTWARE. Estructura del SW. Software o soporte lógico Capítulo 3 Software o soporte lógico Definición de SOFTWARE Conjunto de programas necesarios para realizar con el ordenador el tratamiento de la información. SW = Sistema Operativo + Programas de aplicación

Más detalles

COMPILADORES Teoría e implementación. Jacinto Ruiz Catalán

COMPILADORES Teoría e implementación. Jacinto Ruiz Catalán COMPILADORES Teoría e implementación Jacinto Ruiz Catalán COMPILADORES. Teoría e implementación Jacinto Ruiz Catalán ISBN: 978-84-937008-9-8 EAN: 9788493700898 Copyright 2010 RC Libros RC Libros es un

Más detalles

Entre los más conocidos editores con interfaz de desarrollo tenemos:

Entre los más conocidos editores con interfaz de desarrollo tenemos: Herramientas de programación Para poder programar en ensamblador se precisa de algunas herramientas básicas, como un editor para introducir el código, un ensamblador para traducir el código a lenguaje

Más detalles

Bienvenidos a la presentación: Introducción a conceptos básicos de programación.

Bienvenidos a la presentación: Introducción a conceptos básicos de programación. Bienvenidos a la presentación: Introducción a conceptos básicos de programación. 1 Los programas de computadora son una serie de instrucciones que le dicen a una computadora qué hacer exactamente. Los

Más detalles

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los

Más detalles

LENGUAJES DE PROGRAMACIÓN

LENGUAJES DE PROGRAMACIÓN 7 LENGUAJES DE PROGRAMACIÓN 7.1. Lenguajes de programación. Evolución. El soporte lógico, o software, de una computadora es el conjunto de programas asociados a dicha computadora. Hemos visto en el tema

Más detalles

Generalidades Computacionales

Generalidades Computacionales Capítulo 2 Generalidades Computacionales 2.1. Introducción a los Computadores Definición: Un computador es un dispositivo electrónico que puede transmitir, almacenar, recuperar y procesar información (datos).

Más detalles

TEMA 1. INTRODUCCIÓN. 1. Diferentes niveles en la arquitectura de un computador

TEMA 1. INTRODUCCIÓN. 1. Diferentes niveles en la arquitectura de un computador TEMA 1. INTRODUCCIÓN 1. Diferentes niveles en la arquitectura de un computador.» Máquinas virtuales 2. Máquinas multinivel actuales. 3. Evolución histórica de las máquinas multinivel. 1 1. Diferentes niveles

Más detalles

Unidad 9. Entornos de Desarrollo

Unidad 9. Entornos de Desarrollo Unidad 9 Entornos de Desarrollo Contenido Introducción Entornos de Desarrollo Propiedades de un Entorno Introducción En muchas ocasiones se usan los términos de Entornos de Programación y Entorno de Desarrollo

Más detalles

Traductores Push Down para Gramáticas LL

Traductores Push Down para Gramáticas LL Push Down para Gramáticas LL Extensión de Autómatas Universidad de Cantabria Outline El Problema 1 El Problema 2 3 4 El Problema Podemos resolver el problema de la palabra para lenguajes generados por

Más detalles

Capitulo III. Diseño del Sistema.

Capitulo III. Diseño del Sistema. Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje

Más detalles

construcción de programas Prof. Eliana Guzmán U.

construcción de programas Prof. Eliana Guzmán U. Unidad II. Metodología para la construcción de programas Prof. Eliana Guzmán U. Semestre: A-2015 Introducción Resolver un problema con una computadora conduce a la escritura de un programa y a su ejecución.

Más detalles

Algoritmos y programas

Algoritmos y programas Algoritmo Algoritmos y programas Secuencia ordenada de pasos que resuelve un problema concreto. Características - Corrección (sin errores). - Precisión (ausencia de ambigüedades). - Repetitividad (solución

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

TEMARIO DE PROFESORES TÉCNICOS DE F.P. SISTEMAS Y APLICACIONES INFORMÁTICAS

TEMARIO DE PROFESORES TÉCNICOS DE F.P. SISTEMAS Y APLICACIONES INFORMÁTICAS TEMARIO DE PROFESORES TÉCNICOS DE F.P. SISTEMAS Y APLICACIONES INFORMÁTICAS "Publicado en el B.O.E. de 13 de febrero de 1.996" OCTUBRE 1997 SISTEMAS Y APLICACIONES INFORMÁTICAS 1. Representación y comunicación

Más detalles

EDWIN CAMILO CUBIDES GARZÓN

EDWIN CAMILO CUBIDES GARZÓN Análisis del interpretador de expresiones matemáticas: Java Mathematical Expression Parser (JEP). Extensión a funciones de C n en C m, y a funciones definidas a trozos EDWIN CAMILO CUBIDES GARZÓN UNIVERSIDAD

Más detalles

MÓDULO 1: Sistemas de Cómputo

MÓDULO 1: Sistemas de Cómputo Asignatura: PROGRAMACIÓN Código: TE243 Prerrequisitos: Algebra Lineal (S)* Intensidad horaria: 80 H.P.S. MÓDULO 1: Sistemas de Cómputo Introducción: un sistema de cómputo es un conjunto de elementos electrónicos

Más detalles

Un largo etcétera de desventajas respecto a otros lenguajes de programación.

Un largo etcétera de desventajas respecto a otros lenguajes de programación. HISTORIA DE VISUAL BASIC El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code) nació en el año 1964 como una herramienta destinado a principiantes, buscando una forma sencilla

Más detalles

INTRODUCCION. Docente: Ing. Mirko Manrique Ronceros

INTRODUCCION. Docente: Ing. Mirko Manrique Ronceros INTRODUCCION La computadora es la máquina más versátil concebida por el hombre. Aunque inicialmente es construida como un mecanismo de cálculo de prestaciones superiores a los primeros dispositivos mecánicos

Más detalles

02 Lenguajes de programación y compiladores

02 Lenguajes de programación y compiladores 2 Contenido Introducción Lenguaje de programación Traductor Compilador Interprete Lenguaje compilado Lenguaje interpretado Compiladores (just in time) Lenguaje ensamblador Programa objeto Lenguajes de

Más detalles

GUÍA DOCENTE PROCESADORES DE LENGUAGE

GUÍA DOCENTE PROCESADORES DE LENGUAGE Año académico 2015-16 GUÍA DOCENTE PROCESADORES DE LENGUAGE Profesorado: Jordi Planes Cid Maria Teresa Alsinet Bernadó Información general de la asignatura Denominación Carácter PROCESADORES DE LENGUAGE

Más detalles

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 Módulo 1. Fundamentos de Computadores Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 1 CONTENIDO Tema 1. Introducción

Más detalles

Introducción a la Informática

Introducción a la Informática Introducción a la Informática Software de la Computadora Universidad Tecnológica de los Andes Ing. Ronald Rentería Ayquipa SOFTWARE DEL COMPUTADOR REPRESENTACIÓN DIGITAL DE LA INFORMACIÓN La representación

Más detalles

Nombre de la asignatura: Programación Estructurada. Créditos: 3-2 - 5. Aportación al perfil

Nombre de la asignatura: Programación Estructurada. Créditos: 3-2 - 5. Aportación al perfil Nombre de la asignatura: Programación Estructurada Créditos: 3-2 - 5 Aportación al perfil Diseñar, analizar y construir equipos y/o sistemas electrónicos para la solución de problemas en el entorno profesional,

Más detalles

Breve 1 y 2 Introducción. Arquitectura básica y Sistemas Operativos. Programación. Fundamentos de Informática

Breve 1 y 2 Introducción. Arquitectura básica y Sistemas Operativos. Programación. Fundamentos de Informática Breve 1 y 2 Introducción. Arquitectura básica y Sistemas Operativos. Programación Fundamentos de Informática Componentes de un ordenador 2 Componentes de un ordenador CPU Central Processing Unit (Unidad

Más detalles

Lenguaje C++ Introducción 6. Introducción a la Computación Tc1001 Programación en Lenguaje C++

Lenguaje C++ Introducción 6. Introducción a la Computación Tc1001 Programación en Lenguaje C++ Programación en Lenguaje C++ Lenguaje C++ Introducción 6 Charles Babbage definió a mediados del siglo XIX lo que él llamó la máquina analítica. Se considera a esta máquina el diseño del primer ordenador.

Más detalles

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador.

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador. PRINCIPALES TIPOS DE SOFTWARE Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador. Software de aplicación: Son programas escritos para realizar funciones específicas

Más detalles

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA Programa: Algoritmo (secuencia no ambigua, finita y ordenada de instrucciones para la resolución de un determinado problema) traducido

Más detalles

SOFTWARE COMPILADOR EN LENGUAJE DE ALTO NIVEL QUE GENERA CÓDIGO ENSAMBLADOR PARA LA IMPLEMENTACIÓN EN MICROCONTROLADORES PIC 16X

SOFTWARE COMPILADOR EN LENGUAJE DE ALTO NIVEL QUE GENERA CÓDIGO ENSAMBLADOR PARA LA IMPLEMENTACIÓN EN MICROCONTROLADORES PIC 16X SOFTWARE COMPILADOR EN LENGUAJE DE ALTO NIVEL QUE GENERA CÓDIGO ENSAMBLADOR PARA LA IMPLEMENTACIÓN EN MICROCONTROLADORES PIC 16X JULIÁN ROBERTO HERNÁNDEZ DÍAZ JAVIER MEZA CARABALLO CORPORACIÓN UNIVERSITARIA

Más detalles

Instituto Tecnológico de Celaya

Instituto Tecnológico de Celaya LENGUAJES Lenguaje es el empleo de notaciones, señales y vocales (voz, palabras) para expresar ideas, comunicarse, y establecer relaciones entre los seres humanos. Un lenguaje no sólo consta de palabras,

Más detalles

Informática I para Bachillerato

Informática I para Bachillerato CIMAT Introducción a la programación en C/C++ CIMAT Sesión 1 Temario Evaluación Noticias y Material del Curso Sobre la clase: Tareas Objetivo del Curso Inicio de curso Temario: 1 Introducción a la Programación

Más detalles

Practica 1. Introducción a MATLAB

Practica 1. Introducción a MATLAB Practica 1. Introducción a MATLAB David Rozado Fernández Informática Aplicada - Grado en Ingeniería Química, UAM, 2009/2010 1 Fecha en la que se debería haber completado la practica Grupo A: 19 de Febrero

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

Programación Visual con. Gambas

Programación Visual con. Gambas Programación Visual con Gambas Juan Matías Olmos 2010 1 CAPITULO I Programación y Lenguajes de Programación Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una

Más detalles

JAVA A TOPE: TRADUCTORES Y COMPILADORES CON LEX/YACC, JFLEX/CUP Y JAVACC. EDICIÓN ELECTRÓNICA

JAVA A TOPE: TRADUCTORES Y COMPILADORES CON LEX/YACC, JFLEX/CUP Y JAVACC. EDICIÓN ELECTRÓNICA JAVA A TOPE: TRADUCTORES Y COMPILADORES CON LEX/YACC, JFLEX/CUP Y JAVACC. EDICIÓN ELECTRÓNICA AUTORES: ILUSTRACIÓN DE PORTADA: SERGIO GÁLVEZ ROJAS MIGUEL ÁNGEL MORA MATA JOSÉ MIGUEL GÁLVEZ ROJAS Sun, el

Más detalles

Estructura de Bases de datos. Leonardo Víquez Acuña

Estructura de Bases de datos. Leonardo Víquez Acuña Estructura de Bases de datos Leonardo Víquez Acuña Lenguajes de Bases de Datos Un sistema de bases de datos proporciona Un lenguaje de definición de datos para especificar el esquema de la base de datos

Más detalles

AcuSQL Pre-compilador de SQL Embebido

AcuSQL Pre-compilador de SQL Embebido AcuSQL Pre-compilador de SQL Embebido RESUMEN EJECUTIVO AcuSQL es una sencilla y rentable solución para aquellos que utilizan sentencias SQL embebidas en sus programas COBOL para acceder fuentes de datos

Más detalles

Introducción a la Computación

Introducción a la Computación Introducción a la Computación MCC Marco Antonio Crúz Chávez 2003 Sistema de información Es un sistema incluido en otro sistema mayor que recibe, almacena, procesa y distribuye información. Los principales

Más detalles

INSTITUTO POLITÉCNICO NACIONAL

INSTITUTO POLITÉCNICO NACIONAL INSTITUTO POLITÉCNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA DE INGENIERÍA Y CIENCIAS SOCIALES Y ADMINISTRATIVAS DESARROLLO DE UN COMPILADOR PARA PSEUDOCÓDIGO EN LENGUAJE ESPAÑOL T E S I S QUE

Más detalles

Programación de Sistemas

Programación de Sistemas 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Programación de sistemas Ingeniería en Sistemas Computacionales SCC - 0425 4-2-10

Más detalles

Proyecto final de carrera: Entorno gráfico para la ejecución y depuración de código intermedio

Proyecto final de carrera: Entorno gráfico para la ejecución y depuración de código intermedio Proyecto final de carrera: Entorno gráfico para la ejecución y depuración de código intermedio Autor: Alberto Domínguez Dirigido por: D. Emilio Vivancos Valencia, Septiembre de 2010 1 Resumen El proyecto

Más detalles

GUÍA DOCENTE EXPERIENCIA PILOTO DE CRÉDITOS EUROPEOS UNIVERSIDADES ANDALUZAS DATOS BÁSICOS DE LA ASIGNATURA PROCESADORES DE LENGUAJES

GUÍA DOCENTE EXPERIENCIA PILOTO DE CRÉDITOS EUROPEOS UNIVERSIDADES ANDALUZAS DATOS BÁSICOS DE LA ASIGNATURA PROCESADORES DE LENGUAJES GUÍA DOCENTE EXPERIENCIA PILOTO DE CRÉDITOS EUROPEOS UNIVERSIDADES ANDALUZAS DATOS BÁSICOS DE LA ASIGNATURA NOMBRE: PROCESADORES DE LENGUAJES CÓDIGO: 3104004 AÑO DE PLAN DE ESTUDIO: 2005 TIPO (troncal/obligatoria/optativa)

Más detalles

PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ

PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ FACULTAD DE CIENCIAS E INGENIERÍA IMPLEMENTACIÓN DE UNA HERRAMIENTA DE TRADUCCIÓN Y VERIFICACIÓN DE PROGRAMAS DISEÑADOS EN DIAGRAMA DE FLUJO UTILIZANDO COMO PASO

Más detalles

JAVA A TOPE: TRADUCTORES Y COMPILADORES CON LEX/YACC, JFLEX/CUP Y JAVACC. EDICIÓN ELECTRÓNICA

JAVA A TOPE: TRADUCTORES Y COMPILADORES CON LEX/YACC, JFLEX/CUP Y JAVACC. EDICIÓN ELECTRÓNICA JAVA A TOPE: TRADUCTORES Y COMPILADORES CON LEX/YACC, JFLEX/CUP Y JAVACC. EDICIÓN ELECTRÓNICA AUTORES: ILUSTRACIÓN DE PORTADA: SEGÚN IDEA DE: SERGIO GÁLVEZ ROJAS MIGUEL ÁNGEL MORA MATA JOSÉ MIGUEL GÁLVEZ

Más detalles

UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 1.

UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 1. UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes Tema 1 Introducción Javier Vélez Reyes jvelez@lsi.uned.es Objetivos del Tema Aprender

Más detalles

Figura 4.1 Clasificación de los lenguajes de bases de datos

Figura 4.1 Clasificación de los lenguajes de bases de datos 1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto Este capítulo describen los distintos lenguajes para bases de datos, la forma en que se puede escribir un lenguaje

Más detalles

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización Página 1 de 17 CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC303_3 Versión 5 Situación RD 1201/2007 Actualización Competencia

Más detalles

Introducción a la programación. Caso práctico Ada María y Juan Ada

Introducción a la programación. Caso práctico Ada María y Juan Ada Página 1 de 49 08/07/2013 Introducción a la programación. Caso práctico La evolución de Internet y de las nuevas tecnologías, así como las diferentes posibilidades para establecer nuevas líneas de negocio

Más detalles

Introducción a las bases de datos

Introducción a las bases de datos Introducción a las bases de datos Juan Ignacio Rodríguez de León Abstract Aplicaciones de los sistemas de bases de datos. Sistemas de bases de datos frente a sistemas de archivos. Visión de los datos.

Más detalles

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas Unidad I Introducción a la programación de Sistemas M.C. Juan Carlos Olivares Rojas Agenda 1.1 Qué es y que estudia la programación de sistemas? 1.2 Herramientas desarrolladas con la teoría de programación

Más detalles

GLOSARIO. Análisis Bottom-Up: Técnica utilizada en tareas de ingeniería inversa la cual parte de

GLOSARIO. Análisis Bottom-Up: Técnica utilizada en tareas de ingeniería inversa la cual parte de GLOSARIO Análisis Bottom-Up: Técnica utilizada en tareas de ingeniería inversa la cual parte de una descripción de bajo nivel (código fuente) para generar descripciones con un mayor grado de abstracción.

Más detalles

Programador en Plataforma Java y XML

Programador en Plataforma Java y XML Programador en Plataforma Java y XML Java Fundamentos Módulo 1: Java Básico Introducción En la presente unidad, se detalla los fundamentos de la tecnología Java, reconociendo las 3 plataformas que la conforman.

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

implantación Fig. 1. Ciclo de vida tradicional

implantación Fig. 1. Ciclo de vida tradicional 1. Ciclo de vida tradicional de los sistemas de software En ingeniería de software, la descripción tradicional del ciclo de vida del software está basada en un modelo conocido como el modelo de cascada

Más detalles

El conjunto de conocimientos científicos y técnicos que hacen posible la resolución de forma automática de problemas por medio de las computadoras.

El conjunto de conocimientos científicos y técnicos que hacen posible la resolución de forma automática de problemas por medio de las computadoras. 1 Conceptos Generales 1.1 Definición de Informática Una posible definición de informática podría ser: El conjunto de conocimientos científicos y técnicos que hacen posible la resolución de forma automática

Más detalles

INSTITUTO OFICIAL PATRIA AREA DE COMPUTACIÓN PRIMER CAMPEONISIMO DE INFORMÁTICA 2013 GUIA DE ESTUDIO

INSTITUTO OFICIAL PATRIA AREA DE COMPUTACIÓN PRIMER CAMPEONISIMO DE INFORMÁTICA 2013 GUIA DE ESTUDIO INSTITUTO OFICIAL PATRIA AREA DE COMPUTACIÓN PRIMER CAMPEONISIMO DE INFORMÁTICA 2013 GUIA DE ESTUDIO 1. Cuáles son las partes principales que conforman una computadora personal? Monitor, teclado, ratón,

Más detalles

TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS.

TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. Concepto y Funciones del SGBD. Lenguajes de los SGBD. Niveles de Abstracción. Arquitectura ANSI/SPARC. Componentes del SGBD. 1. Concepto y Funciones del SGBD.

Más detalles

Lección 01. Introducción a los Lenguajes de Programación. Contenido. Conceptos Básicos. Lenguaje de Programación. Introducción al Lenguaje Maquina

Lección 01. Introducción a los Lenguajes de Programación. Contenido. Conceptos Básicos. Lenguaje de Programación. Introducción al Lenguaje Maquina Lección 01 Introducción a los Lenguajes de Programación Contenido Conceptos Básicos Lenguaje de Programación Introducción al Lenguaje Maquina Introducción al Lenguaje Ensamblador Introducción al Lenguaje

Más detalles

DISEÑO DE UN CURSO INTERACTIVO Y ADAPTATIVO DE PROCESADORES DE LENGUAJES

DISEÑO DE UN CURSO INTERACTIVO Y ADAPTATIVO DE PROCESADORES DE LENGUAJES Alfonseca, M., Carro, R.M., Pulido, E. and Rodríguez, P. (2000): Diseño de un curso interactivo y adaptativo de procesadores de lenguajes. Proceedings of JENUI 2000: VI Jornadas sobre la Enseñanza Universitaria

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

IMPLEMENTACION DE UN INTERPRETE SQL EN MANAGED CODE PARA DISPOSITIVOS MOVILES

IMPLEMENTACION DE UN INTERPRETE SQL EN MANAGED CODE PARA DISPOSITIVOS MOVILES IMPLEMENTACION DE UN INTERPRETE SQL EN MANAGED CODE PARA DISPOSITIVOS MOVILES Sebastián Mariano Salomón Luis Rogero Lucero Daniel Alejandro Giménez Gabriel Mamani Federico Martín Pascual Ing. Cesar Ignacio

Más detalles

CONTENIDO. 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador.

CONTENIDO. 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador. CONTENIDO 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador. 4. Sistemas numéricos. 4.1 Generalidades. 42 Sistema binario. 4.3 Sistema octal,. 4.4 Sistema decimal. 4.5 Sistema

Más detalles

Cristian Blanco www.cristianblanco.es

Cristian Blanco www.cristianblanco.es INSTALACIÓN Y USO DE ENTORNOS DE DESARROLLO 2.1 ENTORNO DE DESARROLLO INTEGRADO Un entorno de desarrollo integrado (en inglés integrated development environment) es un programa informático compuesto por

Más detalles

Programa Analítico 2010. Asignatura: Resolución de problemas de Optimización en Entornos Industriales

Programa Analítico 2010. Asignatura: Resolución de problemas de Optimización en Entornos Industriales Programa Analítico 2010 Asignatura: Resolución de problemas de Optimización en Entornos Industriales CARRERA: LCC AÑO: 5º CREDITO HORARIO: 8 hs áulicas semanales DESPLIEGUE (primer semestre, segundo semestre

Más detalles

Lenguaje de programación. COMPILADORES Unidad I: Introducción al proceso de compilación

Lenguaje de programación. COMPILADORES Unidad I: Introducción al proceso de compilación COMPILADORES Unidad I: Introducción al proceso de compilación Flor Prof. Flor Narciso GIDyC-Departamento de Computación LABSIULA-Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de

Más detalles

CAPÍTULO 2 SOPORTE LÓGICO DE UN COMPUTADOR

CAPÍTULO 2 SOPORTE LÓGICO DE UN COMPUTADOR CAPÍTULO 2 SOPORTE LÓGICO DE UN COMPUTADOR En el capítulo anterior distinguimos soporte lógico, de soporte físico a la hora de definir los distintos componentes de un computador. En este capítulo vamos

Más detalles

Introducción a los Tipos Abstractos de Datos

Introducción a los Tipos Abstractos de Datos Página 1 de 8 Introducción a los Tipos Abstractos de Datos Introducción: Concepto de abstracción Abstracción funcional y abstracción de datos Construcción de tipos abstractos de datos Especificación de

Más detalles

Sesión 6.3: Historia de los Lenguajes de Programación. Dr. Alberto A. Del Barrio García

Sesión 6.3: Historia de los Lenguajes de Programación. Dr. Alberto A. Del Barrio García Sesión 6.3: Historia de los Lenguajes de Programación Dr. Alberto A. Del Barrio García Curso Evolución de la Informática CTIF Madrid Sur Índice Definición Prehistoria II GM y Posguerra Década de los 50:

Más detalles

Code::Blocks. Marzo 2010 Mat. Renato Leriche Vázquez 1

Code::Blocks. Marzo 2010 Mat. Renato Leriche Vázquez 1 Code::Blocks Marzo 2010 Mat. Renato Leriche Vázquez 1 Qué es Code::Blocks? Es un IDE (Integrated Development Environment, Ambiente de Desarrollo Integrado) para C/C++, esto es: Una aplicación que contiene

Más detalles

AUDITORIA A AMBIENTES DE DESARROLLO, APLICACIONES EN PRODUCCION, SERVICIOS DE TI, CONTRATACION DE RECURSOS DE TI. VIVIANA GÓMEZ BARCO PRESENTADO A:

AUDITORIA A AMBIENTES DE DESARROLLO, APLICACIONES EN PRODUCCION, SERVICIOS DE TI, CONTRATACION DE RECURSOS DE TI. VIVIANA GÓMEZ BARCO PRESENTADO A: AUDITORIA A AMBIENTES DE DESARROLLO, APLICACIONES EN PRODUCCION, SERVICIOS DE TI, CONTRATACION DE RECURSOS DE TI. VIVIANA GÓMEZ BARCO 1700612708 PRESENTADO A: ING. CARLOS HERNAN GÓMEZ ASIGNATURA: AUDITORIA

Más detalles

Trabajo Practico. alumno SOFTWARE. Derechos Reservados Marcelo Tejeda - Tutoriales on line. www.3globos.com.ar

Trabajo Practico. alumno SOFTWARE. Derechos Reservados Marcelo Tejeda - Tutoriales on line. www.3globos.com.ar Se entiende por software al conjunto de programas necesarios para el funcionamiento de un sistema, un informe y los datos con los que se trabaja. No son materiales, se suele referir a ellos como componentes

Más detalles

ESCUELA NORMAL PROFESOR CARLOS A. CARRILLO

ESCUELA NORMAL PROFESOR CARLOS A. CARRILLO ESCUELA NORMAL PROFESOR CARLOS A. CARRILLO Primer Semestre Licenciatura en Educación Primaria Profesor: Cruz Jorge Fernández Alumna: Sandra Carina Villalobos Olivas Unidad II ACTIVIDAD 3 Software Se conoce

Más detalles

FACULTAD DE INGENIERÍA DE SISTEMAS SÍLABO. 1.5 HORAS SEMANALES : 4 HORAS (Teoría: 02; Laboratorio: 02)

FACULTAD DE INGENIERÍA DE SISTEMAS SÍLABO. 1.5 HORAS SEMANALES : 4 HORAS (Teoría: 02; Laboratorio: 02) FACULTAD DE INGENIERÍA DE SISTEMAS I. DATOS GENERALES: SÍLABO 1.1 CURSO : COMPILADORES 1.2 CODIGO : IV1066 1.3 CICLO : VI 1.4 CREDITOS : 3 1.5 HORAS SEMANALES : 4 HORAS ( 02; Laboratorio: 02) II. FUNDAMENTACION:

Más detalles

Competencias generales vinculadas a los distintos módulos Módulo de Formación Básica

Competencias generales vinculadas a los distintos módulos Módulo de Formación Básica Competencias generales vinculadas a los distintos módulos Módulo de Formación Básica C1. Capacidad para la resolución de los problemas matemáticos que puedan plantearse en la ingeniería. Aptitud para aplicar

Más detalles

InAge: Una Herramienta para el Desarrollo y Simulación de Sociedades de Agentes Reactivos

InAge: Una Herramienta para el Desarrollo y Simulación de Sociedades de Agentes Reactivos InAge: Una Herramienta para el Desarrollo y Simulación de Sociedades de Agentes Reactivos Sayde Alcántara Santiago 1, Carlos Alberto Fernández-y-Fernández 2, Ricardo Ruiz-Rodríguez 3 1 Instituto Nacional

Más detalles

Unidad III El lenguaje de programación C 1. 2. 3. 4. 5. 6. 7. 8.

Unidad III El lenguaje de programación C 1. 2. 3. 4. 5. 6. 7. 8. Unidad III 1. Introducción. 2. Breve historia del C. 3. Lenguajes de programación de alto nivel, bajo nivel y nivel medio. 4. Compiladores e intérpretes. 5. Compilación, enlace y generación de un programa

Más detalles

Unidad II. - Las técnicas en las que se basó, las categorías de análisis o ejes centrales que permiten guiar el proceso de investigación.

Unidad II. - Las técnicas en las que se basó, las categorías de análisis o ejes centrales que permiten guiar el proceso de investigación. Unidad II Metodología de Solución de Problemas 2.1 Descripción del problema (enunciado). Este aspecto nos indica describir de manera objetiva la realidad del problema que se esta investigando. En la descripción

Más detalles

1) DIFERENCIAS ENTRE SISTEMA OPERATIVO MAQUINA VIRTUAL Y MAQUUINA SUBDYACENTE MAQUUINA SUBDYACENTE

1) DIFERENCIAS ENTRE SISTEMA OPERATIVO MAQUINA VIRTUAL Y MAQUUINA SUBDYACENTE MAQUUINA SUBDYACENTE 1) DIFERENCIAS ENTRE SISTEMA OPERATIVO MAQUINA VIRTUAL Y MAQUUINA SUBDYACENTE DIFERENCIAS ENTRE SISTEMA OPERATIVO QUE ES UNA MAWINA VIRTUAL? MAQUUINA SUBDYACENTE Una máquina virtual es un contenedor deel

Más detalles

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación )

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación ) Clase:003 1 Unidad I Introducción a la programación de Dispositivos Móviles (Continuación ) 2 Entornos de Desarrollo Virtualizaciones. Agenda IDE s. Y Lenguajes de Programación. 3 Virtualización Que es

Más detalles

Hardware: componentes físicos (UCP, discos, impresora, circuitos de E/S,...) Software: componentes lógicos (lo que no es hardware)

Hardware: componentes físicos (UCP, discos, impresora, circuitos de E/S,...) Software: componentes lógicos (lo que no es hardware) 1. Niveles de organización de computadoras Hardware y software Enfoque de máquina multinivel Clasificación de computadoras Hardware y Software Hardware: componentes físicos (UCP, discos, impresora, circuitos

Más detalles