Tema: Generación de código intermedio

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

Download "Tema: Generación de código intermedio"

Transcripción

1 Compiladores. Guía 10 1 Tema: Generación de código intermedio Objetivos Específicos Conocer las características y principal función de un generador de código. Analizar el funcionamiento, entrada y salida de un generador de código de un compilador. Implementar un generador de código para el lenguaje MUSIM. Material y Equipo Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Guía de Laboratorio Nº 10. Computadora con programa Dev C++ Introducción Teórica En esta guía se abordarán los conceptos pertenecientes al componente de generación de código, se implementara un generador de código en lenguaje C++ para el compilador del lenguaje MUSIM. Generación de código. La entrada para el generador de código consta de la representación intermedia del programa fuente producida por la etapa inicial junto con la información de la tabla de símbolos que se utilizan para determinar las direcciones de los objetos de datos durante la ejecución denotados por los hombres de la representación intermedia. Representaciones lineales: Tercetos Cuartetos Máquinas a pila Representaciones arborescentes: Árboles de análisis sintácticos Grafos dirigidos a cíclicos

2 2 Compiladores. Guía 10 Programas objeto: La salida del generador de código es un código preparado y adaptado para ser ejecutado, directa, o indirectamente, en una arquitectura específica. La adaptación consiste en aprovechar al máximo las características de la máquina para optimizar la ejecución en tiempo y en memoria. Lenguaje de máquina absoluto: El programa se coloca en una posición fija de memoria y se ejecuta inmediatamente. Un programa pequeño se puede compilar y ejecutar rápidamente pero demanda ubicaciones específicas de memoria. Lenguaje de máquina reubicable: Un programa reubicable permite que los subprogramas se compilen por separado. Los módulos se cargan y enlazan mediante un montador o enlazador. Se gana flexibilidad al poder compilar subrutinas por separado y llamarlas desde otros módulos. Si la máquina objeto no maneja reubicación automática el compilador debe proporcionar al montador información para que enlace los segmentos del programa. Lenguaje Ensamblador: El lenguaje ensamblador facilita el proceso de generación de código (se utilizan instrucciones simbólicas y macros). A cambio debe producirse un ensamblado tras la generación de código. Esto es útil en arquitecturas con poca memoria. Administración de la Memoria: Uno de los propósitos de la generación de código final es la traducir la representación simbólica en código intermedio de etiquetas y objetos de datos (variables, temporales, parámetros, etc.) a direcciones reales en el mapa físico de memoria.

3 Compiladores. Guía 10 3 Asignación de Registros: Las instrucciones que operan con registros son más cortas y rápidas. Realizar un uso eficiente de los registros es fundamental para generar buen código. Selección de instrucciones: La generación de código intermedio debe tener en cuenta el juego de instrucciones de la máquina destino. Las traducciones a código objeto debe ser, además de correcta, eficiente. Procedimiento En esta guía vamos a implementar el generador de código para nuestro mini proyecto del compilador MUSIM a ENSAMPOCO, para ello crearemos dos archivos en C++, uno de cabecera o extensión.h y uno de desarrollo extensión.cpp. Primero debe buscar su proyecto de este compilador creado en la guía 6 de analizador sintáctico. Abra el programa Dev C++ y abra el respectivo archivo de proyecto que tiene creado previamente (poseerá una extensión de archivo.dev ).

4 4 Compiladores. Guía 10 Posteriormente, añada al proyecto digite el siguiente código: un archivo fuente. Luego genera.h #ifndef GENERA_H #define GENERA_H #include <stdio.h> #include <iostream.h> #include <stdlib.h> class GeneraCodigo char *nombrefichero; // Nombre del fichero objeto de salida FILE *salida; // Fichero objeto de salida public: GeneraCodigo(char *unnombrefichero); ~GeneraCodigo(); void code(); void pushc(char constante); void pusha(char direccion); void load(); void store(); void neg(); void add(); void mul(); void div(); void mod(); void input(char direccion); void output(char direccion); void end(); ; #endif Al terminar deberá guardar el archivo con el nombre genera.h. A continuación agregara al proyecto otro archivo fuente. Dentro de este escribirá las definiciones de la clase declarada en el archivo anterior. Digite el siguiente codigo:

5 Compiladores. Guía 10 5 genera.cpp #include "genera.h" GeneraCodigo::GeneraCodigo(char *unnombrefichero) if ((salida=fopen(unnombrefichero,"w"))==null) cout<<"no se puede crear el fichero"<<unnombrefichero<<endl; exit(-3); GeneraCodigo::~GeneraCodigo(void) fclose(salida); void GeneraCodigo::code() cout<<".code"<<endl; fputs(".code\n",salida); void GeneraCodigo::pushc(char constante) cout<<"pushc "<<constante<<endl; fputs("pushc ",salida); fputc(constante,salida); fputc('\n',salida); void GeneraCodigo::pusha(char direccion) cout<<"pusha "<<direccion<<endl; fputs("pusha ",salida); fputc(direccion,salida); fputc('\n',salida); void GeneraCodigo::load() cout<<"load"<<endl; fputs("load\n",salida); void GeneraCodigo::store() cout<<"store"<<endl; fputs("store\n",salida);

6 6 Compiladores. Guía 10 void GeneraCodigo::neg() cout<<"neg"<<endl; fputs("neg\n",salida); void GeneraCodigo::add() cout<<"add"<<endl; fputs("add\n",salida); void GeneraCodigo::mul() cout<<"mul"<<endl; fputs("mul\n",salida); void GeneraCodigo::div() cout<<"div"<<endl; fputs("div\n",salida); void GeneraCodigo::mod() cout<<"mod"<<endl; fputs("mod\n",salida); void GeneraCodigo::input(char direccion) cout<<"input "<<direccion<<endl; fputs("input ",salida); fputc(direccion,salida); fputc('\n',salida); void GeneraCodigo::output(char direccion) cout<<"output "<<direccion<<endl; fputs("output ",salida); fputc(direccion,salida); fputc('\n',salida); void GeneraCodigo::end() cout<<"end"<<endl; fputs("end\n",salida); Posteriormente, guarde el archivo con el nombre genera.cpp. Luego proceda a compilar el proyecto.

7 Compiladores. Guía 10 7 Análisis de resultados Vamos a integrar el generador de código al analizador sintáctico de la guía 6. Para ello dentro del analizador sintáctico, cree un objeto de la clase de generación de código y en los procedimientos que corresponda, llamar a las operaciones del generador de código que genere el código adecuado. Ahora coloque el siguiente archivo de texto en la misma carpeta para compilarlo. Corresponde a un pequeño programa en MUSIM/0. prueba.txt M R a; R b; c = a + b; W c; Pruebe su compilador sobre el archivo indicado. Investigación complementaria Investigue la generación de código ensamblador (asm) INTEL con Dev C++. Investigue las características y ventajas de los compiladores de una y varias pasadas. Bibliografía %29 Cuadernos didácticos. Conceptos básicos de procesadores de lenguaje. Juan Manuel Cueva Lovelle. Oviedo, Diciembre 1998.

8 8 Compiladores. Guía 10 Guía 10: Generación de código Hoja de cotejo: 10 Alumno: Máquina No: Docente: GL: Fecha: EVALUACION CONOCIMIENTO Del 20 al 30% % Nota Conocimie nto deficient e de los fundament os teóricos Conocimiento y explicación incompleta de los fundamentos teóricos Conocimiento completo y explicación clara de los fundamentos teóricos APLICACIÓN DEL CONOCIMIENTO Del 40% al 60% ACTITUD Del 15% al 30% TOTAL 100% No tiene actitud proactiva. Actitud propositiva y con propuestas no aplicables al contenido de la guía. Tiene actitud proactiva y sus propuestas son concretas.

Tema: Autómata de Pila

Tema: Autómata de Pila Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores 1 Tema: Autómata de Pila Contenido La presente guía aborda los autómatas de pila, y se enfoca en la aplicación que se le puede dar a estas

Más detalles

Diseño de compiladores. Organización de memoria. Organización de memoria. Organización de memoria. Zona de código 04/05/2014 ORGANIZACIÓN DE MEMORIA

Diseño de compiladores. Organización de memoria. Organización de memoria. Organización de memoria. Zona de código 04/05/2014 ORGANIZACIÓN DE MEMORIA Diseño de compiladores Gestión de la memoria / Generación de código ORGANIZACIÓN DE MEMORIA Organización de memoria Depende del tipo de lenguaje (declarativos, imperativos), del compilador y del sistema

Más detalles

Tema: Tabla de Símbolos

Tema: Tabla de Símbolos Compiladores. Guía 6 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: Tabla de Símbolos Contenido En esta guía se desarrollará una tabla de símbolos y se asociará al analizador

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

Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.

Toda copia en PAPEL es un Documento No Controlado a excepción del original. S U P E RIO R DE MISANTLA Apartado: 7.1 Copia No. Código:PD-SCD-1016 Versión No.: 02 Hoja : 2 de 12 4.- COMPETENCIAS A DESARROLLAR 4.1 Competencias Específicas: Diseña mediante el uso de reglas semánticas

Más detalles

Tema: INTÉRPRETE ENSAMPOCO/3

Tema: INTÉRPRETE ENSAMPOCO/3 Compiladores. Guía 11 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: INTÉRPRETE ENSAMPOCO/3 Contenido En esta práctica se desarrollará un intérprete de lenguaje ENSAMPOCO/3

Más detalles

GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos.

GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos. 1 Programación II, Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos. Objetivos Utilizar la sintaxis de las funciones

Más detalles

Tema: Configuración de red AD-HOC

Tema: Configuración de red AD-HOC Tema: Configuración de red AD-HOC Contenidos Configuración del servidor AD-HOC. Conexión de una segunda computadora a la red AD-HOC. Compartiendo la conexión a Internet. Objetivo Redes de datos inalámbricas.

Más detalles

Tema: Clases y Objetos en C#. Parte II.

Tema: Clases y Objetos en C#. Parte II. Programación II. Guía No. 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Clases y Objetos en C#. Parte II. Objetivos Implementar clases, objetos, propiedades, métodos y

Más detalles

Electrónica II. Guía 4

Electrónica II. Guía 4 Electrónica II. Guía 4 1 Facultad: Ingeniería. Escuela: Electrónica. Asignatura: Electrónica II. Lugar de ejecución: Fundamentos Generales (Edificio 3, 2da planta). COMPARADORES Objetivo General Verificar

Más detalles

Tema: Fuente de Alimentación de Rayos X

Tema: Fuente de Alimentación de Rayos X Facultad Escuela Lugar de Ejecución : Ingeniería. : Biomédica : Laboratorio de Biomédica Tema: Fuente de Alimentación de Rayos X Objetivos Analizar la fuente de alimentación de un sistema de rayos X Conocer

Más detalles

Procesos de Fabricación I. Guía 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO

Procesos de Fabricación I. Guía 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO Procesos de Fabricación I. Guía 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO Sistemas de Control Hidráulico y Neumático. Guía 8 1 Tema: CIRCUITOS ELECTROHIDRÁULICOS. Contenidos Válvulas de control direccional

Más detalles

Tema: Herramientas UML, Análisis y diseño UML

Tema: Herramientas UML, Análisis y diseño UML Programación II. Guía No.3 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Herramientas UML, Análisis y diseño UML Objetivos Conocer una herramienta de modelado para la solución

Más detalles

Pontificia Universidad Católica del Ecuador

Pontificia Universidad Católica del Ecuador 1. DATOS INFORMATIVOS: MATERIA O MÓDULO: Organización y Arquitectura de Computadoras CÓDIGO: CARRERA: NIVEL: Ingeniería de Sistemas 3ro No. CRÉDITOS: 4 CRÉDITOS TEORÍA: 4 CRÉDITOS PRÁCTICA: 0 SEMESTRE

Más detalles

Tema: Herramientas UML, Análisis y diseño UML

Tema: Herramientas UML, Análisis y diseño UML Programación II. Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Herramientas UML, Análisis y diseño UML Objetivo Conocer una herramienta de modelado para la solución

Más detalles

PROGRAMA DE LABORATORIO SECCIÓN: ÁREA A LA QUE PERTENECE: POS-REQUISITO: AUXILIAR:

PROGRAMA DE LABORATORIO SECCIÓN: ÁREA A LA QUE PERTENECE: POS-REQUISITO: AUXILIAR: UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA ESCUELA DE CIENCIAS PROGRAMA DE LABORATORIO CÓDIGO: 777 CRÉDITOS: 4 NOMBRE CURSO: ESCUELA: PRE-REQUISITO: Organización de Lenguajes y Compiladores

Más detalles

Unidad II: Análisis semántico

Unidad II: Análisis semántico Unidad II: Análisis semántico Se compone de un conjunto de rutinas independientes, llamadas por los analizadores morfológico y sintáctico. El análisis semántico utiliza como entrada el árbol sintáctico

Más detalles

Un. VI. Generador de código intermedio.

Un. VI. Generador de código intermedio. Un. VI. Generador de código intermedio. La administración de la memoria se da en esta etapa. Se debe considerar tanto la memoria estática como dinámica, y en esta se utilizan generalmente pilas. Los lenguajes

Más detalles

Procesos de Fabricación I. Guía 1 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO

Procesos de Fabricación I. Guía 1 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO Procesos de Fabricación I. Guía 1 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO Sistemas de Control Hidráulico y Neumático. Guía 2 1 Tema: UTILIZACIÓN DE SOFTWARE PARA DISEÑO Y SIMULACIÓN DE CIRCUITOS NEUMÁTICOS.

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 3.1 Fase de compilación y linkado (link, montado o enlace) Un programa escrito en un lenguaje de alto nivel, no puede ser ejecutado

Más detalles

UNIVERSIDAD DE GUADALAJARA

UNIVERSIDAD DE GUADALAJARA UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS ORGANIZACIÓN DE COMPUTADORAS

Más detalles

Tema V Generación de Código

Tema V Generación de Código Tema V Generación de Código Una vez que se ha realizado la partición HW/SW y conocemos las operaciones que se van a implementar por hardware y software, debemos abordar el proceso de estas implementaciones.

Más detalles

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para

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 5 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

JavaCC Parte I. 1 Compiladores / Guía VII / Ciclo Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores.

JavaCC Parte I. 1 Compiladores / Guía VII / Ciclo Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores. 1 Compiladores / Guía VII / Ciclo 02-2016 Centro de Investigación y Transferencia de Tecnología JavaCC Parte I Contenido Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores En la presente

Más detalles

Procesos de Fabricación I. Guía 1 1 ESTUDIO DEL TRABAJO INDUSTRIAL

Procesos de Fabricación I. Guía 1 1 ESTUDIO DEL TRABAJO INDUSTRIAL Procesos de Fabricación I. Guía 1 1 ESTUDIO DEL TRABAJO INDUSTRIAL Estudio del Trabajo Industrial. Guía 3 1 Tema: CURSOGRAMA SINOPTICO Y ANALITICO Contenidos 1. FASES DEL ESTUDIO DEL METODO 2. EL REGISTRO

Más detalles

Objetivo. Introducción. Tema: GENERACION DE CODIGO. Compiladores, Guía 11 1

Objetivo. Introducción. Tema: GENERACION DE CODIGO. Compiladores, Guía 11 1 Compiladores, Guía 11 1 Tema: GENERACION DE CODIGO. Facultad : Ingeniería Escuela :Computación Asignatura:Compiladores Objetivo Reconocer las diferentes instrucciones para la generación de código.ensamblador

Más detalles

PROGRAMA ANALÍTICO DE ASIGNATURA

PROGRAMA ANALÍTICO DE ASIGNATURA UNIVERSIDAD AUTÓNOMA DEL ESTADO DE HIDALGO COORDINACIÓN DE DOCENCIA DIRECCIÓN DE PLANEACIÓN Y DESARROLLO EDUCATIVO _ 1.- DATOS GENERALES 1.1 INSTITUTO: CIENCIAS BASICAS E INGENIERIA PROGRAMA ANALÍTICO

Más detalles

Tema 2 Introducción a la Programación en C.

Tema 2 Introducción a la Programación en C. Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes

Más detalles

: Algorítmica y Estructura de Datos I

: Algorítmica y Estructura de Datos I FACULTAD POLITÉCNICA DIRECCIÓN ACADÉMICA PROGRAMA DE ESTUDIO I. IDENTIFICACIÓN Carrera : Ingeniería de Sistemas CARGA HORARIA (Horas reloj) Asignatura : Algorítmica y Estructura de Datos I Carga Horaria

Más detalles

Tema: Excel Formulas, Funciones y Macros

Tema: Excel Formulas, Funciones y Macros 1 Facultad Escuela Lugar de Ejecución : Ingeniería. : Biomédica : Laboratorio de Biomédica Tema: Excel Formulas, Funciones y Macros Objetivos Específicos Conocer los conceptos básicos en relación a la

Más detalles

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

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

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

Tema: S7-1200, Valores Analógicos.

Tema: S7-1200, Valores Analógicos. Autómatas Programables. Guía 7 1 Tema: S7-1200, Valores Analógicos. Objetivo General Conocer como se opera con valores analógicos en el PLC S7-1200 de Siemens Objetivos Específicos Conectar correctamente

Más detalles

Procesos de Fabricación I. Guía 1 1 SISTEMAS HIDRÁULICOS Y NEUMÁTICOS.

Procesos de Fabricación I. Guía 1 1 SISTEMAS HIDRÁULICOS Y NEUMÁTICOS. Procesos de Fabricación I. Guía 1 1 SISTEMAS HIDRÁULICOS Y NEUMÁTICOS. Sistemas Hidráulicos y Neumáticos. Guía 5 1 Tema: Visualización de elementos y manejo de Software FluidSim Pneumatic Contenidos Simbología

Más detalles

Tema: Punteros a Objetos. Puntero this.

Tema: Punteros a Objetos. Puntero this. Programación II. Guía 6 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Punteros a Objetos. Puntero this. Objetivos Manejar objetos por medio de punteros. Utilizar el puntero

Más detalles

ARQUITECTURA DE COMPUTADORAS II. Propósito del curso : Ingeniería Ingeniería en Sistemas. Hardware. Clave de la materia: 413

ARQUITECTURA DE COMPUTADORAS II. Propósito del curso : Ingeniería Ingeniería en Sistemas. Hardware. Clave de la materia: 413 UNIVERSIDAD AUTÓNOMA DE CHIHUAHUA Clave: 08MSU007H Clave: 08USU4053W FACULTAD DE INGENIERÍA PROGRAMA DEL CURSO: ARQUITECTURA DE COMPUTADORAS II DES: Ingeniería Ingeniería en Sistemas Programa(s) Educativo(s):

Más detalles

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación 1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos

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

FACULTAD DE INGENIERÍAS INGENIERIA DE SISTEMAS ARQUITECTURA DEL COMPUTADOR TECNICO

FACULTAD DE INGENIERÍAS INGENIERIA DE SISTEMAS ARQUITECTURA DEL COMPUTADOR TECNICO FACULTAD DE INGENIERÍAS INGENIERIA DE SISTEMAS ARQUITECTURA DEL COMPUTADOR TECNICO 02002222 3 (Tres) 48 Horas 96 Horas 3017564812 [email protected] Ing. Javier Castro 9:30 am a 3:30 pm MMC El poder

Más detalles

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria 1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo

Más detalles

Tema 6 Organización y gestión de la memoria

Tema 6 Organización y gestión de la memoria Departamento de Tecnologías de la Información Tema 6 Organización y gestión de la memoria Ciencias de la Computación e Inteligencia Artificial Índice 6.1 Organización de la memoria en tiempo de ejecución

Más detalles

Laboratorio de Diseño de Robots Móviles Practica No. 2 Sistema mínimo del microcontrolador PIC16F877

Laboratorio de Diseño de Robots Móviles Practica No. 2 Sistema mínimo del microcontrolador PIC16F877 Laboratorio de Diseño de Robots Móviles Practica No. 2 Sistema mínimo del microcontrolador PIC16F877 Objetivo: Conocer la estructura y características de la tarjeta con un microcontrolador PIC que se dispone

Más detalles

PROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07

PROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07 PROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07 1. En qué método de análisis sintáctico puede suceder que en la construcción del árbol de derivación de las posibles expansiones de un símbolo no terminal

Más detalles

Construyendo Programas más Complejos

Construyendo Programas más Complejos Arquitectura de Ordenadores Construcciones de Alto Nivel en Ensamblador Abelardo Pardo [email protected] Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Construyendo Programas más

Más detalles

Procesos de Fabricación I. Guía 1 MOTORES DE COMBUSTION INTERNA I

Procesos de Fabricación I. Guía 1 MOTORES DE COMBUSTION INTERNA I Procesos de Fabricación I. Guía 1 MOTORES DE COMBUSTION INTERNA I Tema: Análisis del Sistema de Encendido. Contenidos El Sistema de Encendido Convencional. El Sistema de Encendido Electrónico y/o Digital

Más detalles

Tema: Perdidas en Cableado Coaxial

Tema: Perdidas en Cableado Coaxial Tema: Perdidas en Cableado Coaxial Contenidos Características del cableado coaxial Terminales Coaxiales Perdidas por sobrecarga de redes coaxiales Objetivos Específicos Materiales y Equipo Fundamentos

Más detalles

Nombre de la asignatura: Programación Básica. Créditos: Objetivo de aprendizaje

Nombre de la asignatura: Programación Básica. Créditos: Objetivo de aprendizaje Nombre de la asignatura: Programación Básica Créditos: 2 4-6 Objetivo de aprendizaje Plantear metodológicamente la solución de problemas susceptibles de ser computarizados a través del manejo de técnicas

Más detalles

Tema: Repaso sobre el uso del IDE de Microsoft Visual C#.

Tema: Repaso sobre el uso del IDE de Microsoft Visual C#. Programación IV. Guía No. 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Tema: Repaso sobre el uso del IDE de Microsoft Visual C#. Objetivos Específicos Identificar los principales

Más detalles

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros

Más detalles

Funciones como Subprogramas en C++

Funciones como Subprogramas en C++ FUNCIONES Cuando es necesario escribir programas complicados para resolver problemas complejos, una práctica común entre los programadores es descomponer el algoritmo (el diagrama de flujo) en varias partes.

Más detalles

Tema: S7-200, Escalado de Valores analógicos

Tema: S7-200, Escalado de Valores analógicos Autómatas Programables. Guía 8 1 Tema: S7-200, Escalado de Valores analógicos Objetivo General Configurar las entradas analógicas del módulo EM235 en el S7-200 Objetivos Específicos Conectar correctamente

Más detalles

CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES SYLLABUS ARQUITECTURA DE COMPUTADORES

CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES SYLLABUS ARQUITECTURA DE COMPUTADORES Facultad de Ingeniería en Ciencias Aplicadas pág. 1 CARRERA DE INGENIERÍA EN SISTEAS COPUTACIONALES SYLLAUS ARQUITECTURA DE COPUTADORES 1. ISIÓN La Carrera de Ingeniería en Sistemas Computacionales forma

Más detalles

Tema: Materiales y equipos para la manipulación de fibra óptica.

Tema: Materiales y equipos para la manipulación de fibra óptica. Fundamentos de Cableado Voz y Datos. Guía 5 1 Tema: Materies y equipos para la manipulación de fibra óptica. Contenidos Facultad: Ingeniería Escuela: Electrónica Asignatura: Fundamentos de Cableado Voz

Más detalles

Tema: Entorno a C# y Estructuras Secuenciales.

Tema: Entorno a C# y Estructuras Secuenciales. Tema: Entorno a C# y Estructuras Secuenciales. Programación I, Guía 3 1 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos Utilizar el entorno de programación

Más detalles

C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid

C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid C1 INTRODUCCIÓN AL LENGUAJE C Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid Índice 1. Lenguajes de Programación 1. Definición. 2. Niveles

Más detalles

Curso de Programación en C. Licenciatura, FCQeI. APUNTADORES.

Curso de Programación en C. Licenciatura, FCQeI. APUNTADORES. APUNTADORES. La memoria de una máquina esta ordenada en forma de celdas numeradas consecutivamente y que se pueden manipular individualmente o en grupos contiguos. La siguiente figura muestra una representación

Más detalles

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual. Manual de Dev-C++ 4.9.9.2 Página 1 de 11 Introducción Dev-C++ es un IDE (entorno de desarrollo integrado) que facilita herramientas para la creación y depuración de programas en C y en C++. Además, la

Más detalles

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS TÉCNICO EN CONTROL DE LA CALIDAD

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS TÉCNICO EN CONTROL DE LA CALIDAD UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS TÉCNICO EN CONTROL DE LA CALIDAD CICLO: I-2015 GUIA DE LABORATORIO # 1 Nombre de la Práctica: Control Estadístico parte I Entorno Lugar de Ejecución:

Más detalles

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema

Más detalles

Tema: CREACIÓN DE DIAGRAMAS ESQUEMATICOS CON MICROSOFT VISIO

Tema: CREACIÓN DE DIAGRAMAS ESQUEMATICOS CON MICROSOFT VISIO Empremática Guía 13 1 Facultad: Ingeniería Escuela: Computación Asignatura: Empremática Tema: CREACIÓN DE DIAGRAMAS ESQUEMATICOS CON MICROSOFT VISIO Objetivos: Visio. Crear diferentes tipos de diagramas

Más detalles

Sistemas. POSTREQUISITO: CATEGORÍA: Obligatorio SECCION: A HORAS POR SEMANA

Sistemas. POSTREQUISITO: CATEGORÍA: Obligatorio SECCION: A HORAS POR SEMANA UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS PROGRAMA DEL CURSO DE ARQUITECTURA DE COMPUTADORES Y ENSAMBLADORES 1 CODIGO: 778 CREDITOS: 5 ESCUELA: Ciencias

Más detalles

Tema 7. Generación de código

Tema 7. Generación de código Departamento de Tecnologías de la Información Tema 7 Generación de código Ciencias de la Computación e Inteligencia Artificial Índice 7.1 Visión general 7.2 Código de tres direcciones 2 Índice 7.1 Visión

Más detalles

Universidad Católica de Santiago del Estero Facultad de Matemática Aplicada Carrera de Ingeniería en Electrónica

Universidad Católica de Santiago del Estero Facultad de Matemática Aplicada Carrera de Ingeniería en Electrónica PLANIFICACIÓN DE CÁTEDRA AÑO: 2006 1. IDENTIFICACION. 1.1.Asignatura: INFORMÁTICA 1.2.Carrera: Ingeniería en Electrónica. 1.3.Régimen: Primer cuatrimestre. 1.4.Promoción: Con examen final. 1.5. Correlativas:

Más detalles

Manual de turbo pascal

Manual de turbo pascal Universidad Nacional Experimental De Los Llanos Occidentales Ezequiel Zamora UNELLEZ-Barinas Manual de turbo pascal Bachilleres: Martinez Ninibeth C.I:20.867.002 Mora Yaco C.I:17.205.073 Estructura de

Más detalles

1 Fuente Trifásica ST M. 1 Motor asíncrono de jaula de ardilla 1 Variador de velocidad G110 de Siemens 1 Alambre, tenazas.

1 Fuente Trifásica ST M. 1 Motor asíncrono de jaula de ardilla 1 Variador de velocidad G110 de Siemens 1 Alambre, tenazas. Contenido Facultad: Ingeniería Escuela: Ingeniería Electrónica Asignatura: Electrónica industrial Variador de velocidad G110 de Siemens. Objetivos Específicos Utilizar el variador de velocidad G110 de

Más detalles

Jesús Manuel Carrera Velueta José Juan Almeida García Fecha de elaboración: Mayo 6 de 2010 Fecha de última actualización:

Jesús Manuel Carrera Velueta José Juan Almeida García Fecha de elaboración: Mayo 6 de 2010 Fecha de última actualización: PROGRAMA DE ESTUDIO Programa Educativo: Área de Formación : Licenciatura en Ingeniería Ambiental Sustantiva profesional. Programa elaborado por: PROGRAMACIÓN APLICADA Horas teóricas: 1 Horas prácticas:

Más detalles

SILABO DE ADMINISTRACION DE LA PRODUCCION

SILABO DE ADMINISTRACION DE LA PRODUCCION UNIVERSIDAD PRIVADA DE TACNA FACULTAD DE CIENCIAS EMPRESARIALES 2009 II SILABO DE ADMINISTRACION DE LA PRODUCCION I. DATOS GENERALES: 1.1. ESCUELA PROFESIONAL : CIENCIAS CONTABLES Y FINANCIERAS 1.2. CODIGO

Más detalles

Guía práctica de estudio 05: Diagramas de flujo

Guía práctica de estudio 05: Diagramas de flujo Guía práctica de estudio 05: Diagramas de flujo Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Revisado por: Ing. Laura Sandoval Montaño Guía práctica de estudio 05: Diagramas de

Más detalles

Sistemas Operativos Practica 1: procesos y concurrencia.

Sistemas Operativos Practica 1: procesos y concurrencia. Sistemas Operativos Practica 1: procesos y concurrencia. Objetivos: Introducir al alumno a los conceptos de programa, concurrencia, paralelismo y proceso o tarea. Manejo del concepto de concurrencia haciendo

Más detalles

ENTORNO DE DESARROLLO Y COMPILACIÓN DE PELLES C

ENTORNO DE DESARROLLO Y COMPILACIÓN DE PELLES C 2010 UNAN LEON Departamento de Computación Ing. En Sistemas Sabatino Autor: Ing.Karina Esquivel Alvarado. Asignatura: Programación II. ENTORNO DE DESARROLLO Y COMPILACIÓN DE PELLES C OBJETIVOS: Conocer

Más detalles

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje.

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje. Modulo 1. Introducción a los lenguajes de programación La solución de problemas mediante en uso de un computador nos lleva a desarrollar programas o aplicaciones, la construcción de estos programas debe

Más detalles

LABORATORIO DE PROCESADORES DE LENGUAJE Curso: Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison

LABORATORIO DE PROCESADORES DE LENGUAJE Curso: Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison LABORATORIO DE PROCESADORES DE LENGUAJE Curso: 2008-2009 Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison Planteamiento del problema En esta práctica se trata de realizar, mediante el

Más detalles

Procesadores de lenguaje Tema 6 La tabla de símbolos

Procesadores de lenguaje Tema 6 La tabla de símbolos Procesadores de lenguaje Tema 6 La tabla de símbolos Departamento de Ciencias de la Computación Universidad de Alcalá Resumen La tabla de símbolos. Requerimientos de información. Diseño de la tabla de

Más detalles

Tema: Introducción al IDE de Microsoft Visual C#.

Tema: Introducción al IDE de Microsoft Visual C#. Tema: Introducción al IDE de Microsoft Visual C#. Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express mientras crea el formulario más

Más detalles

Qué es un programa informático?

Qué es un programa informático? Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s

Más detalles

Computadora y Sistema Operativo

Computadora y Sistema Operativo Computadora y Sistema Operativo Según la RAE (Real Academia de la lengua española), una computadora es una máquina electrónica, analógica o digital, dotada de una memoria de gran capacidad y de métodos

Más detalles

Procesos de Fabricación I. Guía 1 MOTORES DE COMBUSTION INTERNA I

Procesos de Fabricación I. Guía 1 MOTORES DE COMBUSTION INTERNA I Procesos de Fabricación I. Guía 1 MOTORES DE COMBUSTION INTERNA I Tema: OPERACIÓN DEL MOTOR DE 4 TIEMPOS DIESEL. Contenidos El Motor encendido por compresión, partes del motor, descripción del ciclo Diesel.

Más detalles

Unidad I: Organización del Computador. Ing. Marglorie Colina

Unidad I: Organización del Computador. Ing. Marglorie Colina Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar

Más detalles

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TRABAJO DE PRÁCTICAS. Convocatoria de junio de 2013

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TRABAJO DE PRÁCTICAS. Convocatoria de junio de 2013 TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Ingeniería Técnica en Informática de Sistemas Segundo curso Departamento de Informática y Análisis Numérico Escuela Politécnica Superior Universidad de Córdoba

Más detalles

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:

Más detalles

Sobre cómo dividir un programa ensamblador x86 (modo Real) en módulos compilables por separado.

Sobre cómo dividir un programa ensamblador x86 (modo Real) en módulos compilables por separado. Sobre cómo dividir un programa ensamblador x86 (modo Real) en módulos compilables por separado. Fuente de la información de partida para este documento: http://homepage.mac.com/eravila/asmix86.html PRIMERO

Más detalles

Código Intermedio. Compiladores II 1

Código Intermedio. Compiladores II 1 Código Intermedio Compiladores II 1 Usos del Código Intermedio Múltiples lenguajes y compiladores n+m módulos -> n*m compiladores Optimización Representación de fácil modificación Modelos de generación

Más detalles

Amplificador inversor y no inversor

Amplificador inversor y no inversor Facultad Escuela Lugar de Ejecución : Ingeniería. : Electrónica : Fundamentos Generales (Edificio 3, 2da planta) Amplificador inversor y no inversor Objetivo General Implementar los circuitos amplificadores

Más detalles

TEMA 4. ARQUITECTURA IA-64

TEMA 4. ARQUITECTURA IA-64 TEMA 4. ARQUITECTURA IA-64 Stalling, W.Computer Organization and Architecture cap. 15 Intel IA-64 Architecture Software Developer s Manual Generalidades IA-64 Desarrollo conjunto Intel-HP Nueva arquitectura

Más detalles

Técnicas de Programación

Técnicas de Programación Técnicas de Programación 2.1.- Introducción: unos conceptos previos y primeros conceptos de la API Introducción La resolución de un problema con medios informáticos implica generalmente la siguiente secuencia

Más detalles

Tema 8 Gestión de la memoria en tiempo de ejecución.

Tema 8 Gestión de la memoria en tiempo de ejecución. Traductores, Compiladores e Intérpretes 1 Tema 8 Gestión de la memoria en tiempo de ejecución. S Organización de la memoria en tiempo de ejecución. Cuando un programa se ejecuta sobre un sistema operativo

Más detalles

MINISTERIO DE SALUD Y PROTECCIÓN SOCIAL BOGOTÁ, AGOSTO DE 2015

MINISTERIO DE SALUD Y PROTECCIÓN SOCIAL BOGOTÁ, AGOSTO DE 2015 CERTIFICADOS DE DEFUNCION ANTECEDENTE PARA REGISTRO CIVIL EN INSTITUCIONES PRESTADORAS DE SERVICIOS DE SALUD A TRAVÉS DE LA FIRMA MÓDULO DE NACIMIENTOS Y DEFUNCIONES DEL REGISTRO UNICO DE AFILIADOS RUAF

Más detalles

P L A N I F I C A C I O N

P L A N I F I C A C I O N P L A N I F I C A C I O N ESTABLECIMIENTO: INSTITUTO SUPERIOR JUJUY CARRERA: TECNICATURA SUPERIOR EN INFORMATICA CON ORIENTACION EN SISTEMAS DE INFORMACION ASIGNATURA: HS. CATEDRA: MODALIDAD: PROFESOR:

Más detalles

Tema: Configuración de Redes PAN

Tema: Configuración de Redes PAN Tema: Configuración de Redes PAN Contenidos Configuración de Print Server Inalámbrico (Via software). Configuración de Print Server Inalámbrico (Vía HTML). Configuración de Cámara Web Inalámbrica (Vía

Más detalles

Elementos de un programa en C

Elementos de un programa en C Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución

Más detalles

TAREA 1 ARITMETICA PARA BCD Y ASCII.

TAREA 1 ARITMETICA PARA BCD Y ASCII. 1 Facultad: Ingeniería. Escuela: Electrónica. Asignatura: Microprocesadores. TAREA 1 ARITMETICA PARA BCD Y ASCII. Objetivos específicos Conocer el manejo de los caracteres ASCII para la presentación en

Más detalles

GUÍA DOCENTE Fundamentos de Computadores

GUÍA DOCENTE Fundamentos de Computadores GUÍA DOCENTE 2015-2016 Fundamentos de Computadores 1. Denominación de la asignatura: Fundamentos de Computadores Titulación Grado en Ingeniería Informática Código 6352 2. Materia o módulo a la que pertenece

Más detalles

Guía 3 1. Objetivo General Conocer las actividades básicas de gestión de un servidor SCADA.

Guía 3 1. Objetivo General Conocer las actividades básicas de gestión de un servidor SCADA. Guía 3 1 Tema: Gestión del servidor SCADA Lugar de ejecución: Edificio de Electrónica (Laboratorio de ). Tiempo de ejecución: 2hrs. Objetivo General Conocer las actividades básicas de gestión de un servidor

Más detalles

Introducción a la arquitectura de computadores

Introducción a la arquitectura de computadores Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina

Más detalles

Tema II: Metodología para la construcción de programas. Profesora: Nelly García Mora

Tema II: Metodología para la construcción de programas. Profesora: Nelly García Mora Tema II: Metodología para la construcción de programas Profesora: Nelly García Mora 1. Metodologías de Programación Metodología de programación: es un conjunto o sistema de métodos, principios y reglas,

Más detalles

Programación Estructurada

Programación Estructurada Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 2 Nombre: El lenguaje de programación C Contextualización Una constante en todos los lenguajes de programación (viejos y nuevos) es la implementación

Más detalles