Tabla de Símbolos. Programación II Margarita Álvarez
|
|
- Jaime Pereyra Aranda
- hace 7 años
- Vistas:
Transcripción
1 Programación II Margarita Álvarez La tabla de símbolos es una estructura global utilizada por distintos módulos del compilador. Es el principal atributo heredado. Almacena todos los nombres declarados en el programa y sus atributos (tipo, valor, dirección, parámetros, etc.) Contiene una entrada para cada uno de los símbolos definidos en el programa fuente. Sobre los identificadores, y opcionalmente sobre las palabras reservadas y las constantes. Información sobre el lexema, tipo de datos, ámbito y dirección en memoria. Se usa en las distintas fases del compilador para: Recuperar los atributos de un nombre. Verificar que todos los identificadores son declarados antes de utilizarlos (cuando el lenguaje así lo requiere). Detectar múltiples definiciones de un identificador en un mismo alcance (cuando el lenguaje así lo requiere). Permitir la declaración de un mismo nombre con alcances diferentes (cuando el lenguaje así lo requiere). 1
2 Entrada a la Cada entrada a la corresponde a la declaración de un nombre. Existen dos formas habituales para representación de un nombre: Si hay un límite superior pequeño para la longitud de un nombre entonces los caracteres del nombre se pueden almacenar en la entrada de la Tabla de Símbolos. Si no hay límite para la longitud de un nombre se puede usar un esquema indirecto. En lugar de asignar la cantidad de espacio máxima para guardar el lexema en cada entrada de la tabla, se puede utilizar el espacio más eficientemente colocando en el registro para un nombre un puntero a una tabla de caracteres que da la posición de comienzo del primer carácter del lexema. Operaciones principales: Insertar: introduce un símbolo tras una declaración. Buscar: recupera información asociada a un símbolo. Eliminar: borra la información de un símbolo cuando ya no se utiliza. Principalmente hay tres estructuras de implementación: Listas lineales simple o doblemente enlazadas, normalmente de tamaño variable. Es un sistema sencillo, pero lento cuando hay muchas entradas. Tabla de símbolos ordenada Tablas de dispersión (hash), su eficacia depende de la tabla de dispersión elegida. Es la más utilizada. 2
3 Listas lineales: es la estructura más sencilla y fácil de implementar para una. id 1 info 1 id 2 info 2 id n Se almacenan los nombres y su información asociada. Los nombres nuevos se añaden a la lista en el orden en que aparecen. La posición final se marca con un puntero disponible que apunta hacia donde irá la siguiente entrada a la tabla de símbolos. La búsqueda de un nombre se realiza hacia atrás desde el final hasta el comienzo. Si se alcanza el comienzo sin encontrar el nombre se produce un fallo. info n disponible Tabla de símbolos ordenada: con este método se tiene siempre la tabla ordenada alfabéticamente por sus identificadores. Realizando este trabajo adicional de clasificación (por ejemplo, insertando el identificador en el lugar que le corresponde) es más sencillo realizar la búsqueda en la tabla. Las dos formas más empleadas de realizar la búsqueda son la secuencial y la binaria. 3
4 Hashing: consiste en determinar una función que transforme el identificador en un valor entero que corresponde con un índice y que este comprendido entre 1 y N (N es el tamaño de la tabla) de tal forma que el número de colisiones sea pequeño o nulo. Se denomina colisión al fenómeno de que dos claves diferentes den la misma dirección. Las diferentes formas de solucionar son: Hashing abierto Hashing con overflow Hashing con encadenamiento Hashing abierto: al darse una colisión, en este hashing se mira en la ranura siguiente o en la siguiente, etc. hasta encontrar una ranura libre y en ese sitio es donde se incluye el nuevo elemento o clave. Ejemplo: suponga identificadores que comienzan con las letras A,B,C,E F,G y H. La función hashing es la de dar la posición en la tabla de acuerdo con el orden que ocupa la inicial del identificador en el alfabeto. Así, B estaría en la posición 2, C en la posición 3, etc. CASA DATO HELLO A B C D E F G H Los identificadores son: CASA, DATO,,, HELLO 4
5 Hashing con overflow: al darse una colisión, en vez de dejarla en la misma tabla, se pasa a otra tabla que se va llenando secuencialmente. Para que la búsqueda de los elementos colisionados sea rápida, se les tiene encadenados a su entrada principal todos los sinónimos que dieron la misma dirección. CASA DATO HELLO Tabla Hash A B C D E F G H Overflow HOY CATA Hashing con almacenamiento: con esta técnica se dispone de una tabla de N elementos llamada células que sólo contiene una dirección a la propiamente dicha. Para las colisiones hay un encadenamiento en la. Células A B C D E F G H CASA DATO HELLO HOY 5
6 Comparación Cada esquema se evalúa en el tiempo para añadir n entradas y realizar e consultas. Una lista lineal es lo más fácil de implementar pero su rendimiento es pobre cuando e y n se vuelven grandes. Los esquemas de hashing proporcionan un mayor rendimiento con un mayor esfuerzo de programación y gasto de espacio. Es útil que un compilador pueda aumentar dinámicamente la Tabla de Símbolos durante la compilación. Si la tiene tamaño fijo al escribir el compilador el tamaño debe ser lo suficientemente grande como para albergar cualquier programa fuente. Es muy probable que dicho tamaño sea demasiado grande para la mayoría de los programas e inadecuado para otros. 6
Tabla de Símbolos. Programación II Margarita Álvarez
Programación II Margarita Álvarez La tabla de símbolos es una estructura global utilizada por distintos módulos del compilador. Es el principal atributo heredado. Almacena todos los nombres declarados
Más detallesProcesadores 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 detallesCapítulo 3. Clasificación en Memoria Secundaria
Capítulo 3. Clasificación en Memoria Secundaria INTRODUCCIÓN Las memorias secundarias (cintas magnéticas, discos duros, ) se caracterizan en general porque el acceso es secuencial. Es decir, en un instante
Más detallesEstructuras Dinámicas de datos.
Estructuras Dinámicas de datos. Las estructuras dinámicas de datos son estructuras que crecen a medida que ejecuta un programa. Una estructura dinámica de datos es una colección de elementos llamadas nodos
Más detallesAnálisis semántico. Análisis semántico. Índice (I)
Análisis semántico Índice (I) Marina de la Cruz Alfonso Ortega Objetivo del análisis semántico Decisiones para la construcción de un analizador semántico Análisis semántico con Bison Nivel de indirección
Más detallesANÁLISIS SEMÁNTICO LA TABLA DE SÍMBOLOS
Todos los derechos de propiedad intelectual de esta obra pertenecen en exclusiva a la Universidad Europea de Madrid, S.L.U. Queda terminantemente prohibida la reproducción, puesta a disposición del público
Más detallesEstructura de datos y algoritmos. Tema V TDA DINÁMICOS NO LINEALES: Árboles: árboles binarios
Estructura de datos y algoritmos Tema V TDA DINÁMICOS NO LINEALES: Árboles: árboles binarios TEMA V : TIPOS DE DATOS ABSTRACTOS NO LINEALES: ÁRBOLES 5.1 Conceptos y definiciones 5.2 Árboles perfectamente
Más detallesCapítulo 5. LISTAS. 5.1 Listas y listas vinculadas. Una lista es una colección lineal de elementos.
53 Capítulo 5. LISTAS. 5.1 Listas y listas vinculadas. Una lista es una colección lineal de elementos. Las listas pueden ser almacenadas en arreglos ( de qué manera?), pero las listas enlazadas proporcionan
Más detallesUNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.
Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Procedimientos para asignación y liberación de memoria. Tipos de datos recursivos.
Más detallesFICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 4. Técnicas de Dispersión. Definición y Manejo.
FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 4. Técnicas de Dispersión. Definición y Manejo. 1.- Introducción. 2.- Funciones de Dispersión. 3.- Saturación Progresiva. 4.- Empaquetado
Más detalles2.2 Nombres, Ligado y Ámbito
2.2 Nombres, Ligado y Ámbito Ligado estático y dinámico, reglas de ámbito y prueba de tipos. Conceptos Nombres e Identificadores Variables Tipos Ámbito Constantes Nombres Identificador que designa en el
Más detallesUNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.
Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Procedimientos para asignación y liberación de memoria. Tipos de datos recursivos.
Más detallesUnidad Nº V Listas Enlazadas
Instituto Universitario Politécnico Santiago Mariño Unidad Nº V Listas Enlazadas Lista Enlazadas Es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta
Más detallesTema 13: Apuntadores en C
Tema 13: Apuntadores en C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1 Contenido Introducción
Más detallesEl operador contenido ( ) permite acceder al contenido de
3. Memoria Dinámica y Punteros Objetivos: Distinguir los conceptos de memoria estática y memoria dinámica Comprender el concepto de puntero como herramienta de programación Conocer cómo se definen y cómo
Más detallesTEMA 2. ORGANIZACIONES DE FICHEROS Y ESTRUCTURAS DE ACCESO
TEMA 2. ORGANIZACIONES DE FICHEROS Y ESTRUCTURAS DE ACCESO 1. Introducción 2. Conceptos fundamentales de organizaciones de ficheros 3. Dispositivos de almacenamiento secundario 4. Ficheros desordenados
Más detallesFICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 3. Estructuras de Almacenamiento. Básicas. Definición y Manejo.
FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 3. Estructuras de Almacenamiento Básicas. Definición y Manejo. 1.- Búsqueda de Información. Definición de Clave. 2.- Definición y Manejo
Más detallesEstructuras de Datos Dinámicas Contenido del Tema
T E M A 2 Estructuras de Datos Dinámicas Contenido del Tema 2.1. Introducción a las estructuras de datos dinámicas. 2.2. Tipo Puntero 2.3. Aplicación: Listas enlazadas. Introducción a las Estructuras de
Más detallesÁrboles balanceados (AVL) Tablas de dispersión (Hash) Colas de prioridad (Heap)
Práctico 4 Árboles balanceados (AVL) Tablas de dispersión (Hash) Colas de prioridad (Heap) Clasificación de ejercicios: (I) Imprescindibles (R) Recomendados (C) Complementarios Árboles balanceados (AVL)
Más detallesGeneración de Código Intermedio
Generación de Código Intermedio Programación II Margarita Álvarez Generación de código intermedio Con la generación de código intermedio se inicia la tarea de síntesis. Aunque un programa fuente se puede
Más detallesINDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación
INDICE Prologo XI Capitulo 1. Algoritmos y programas 1.1. Configuraciones de una computadora 1 1.2. Lenguajes de programación 2 1.3. Resolución de problemas 1.3.1. Fase de resolución del problema 3 1.3.1.1.
Más detallesTema 2. Concepto de Algoritmo
Tema 2. Concepto de Algoritmo Objetivos Definir el concepto de algoritmo Resolver problemas sencillos mediante el diseño de un algoritmo Conocer los tipos de datos elementales y las operaciones sobre ellos
Más detallesDiseño de Compiladores I. Estructura General de un Compilador
Diseño de Compiladores I Estructura General de un Compilador PROGRAMA FUENTE COMPILADOR SALIDA Mensajes de Error 2 Un compilador es un programa que traduce un programa escrito en lenguaje fuente y produce
Más detallesTipos Recursivos de Datos
1/1 Tipos Recursivos de Datos Josefina Sierra Santibáñez 27 de noviembre de 2016 2/1 Introducción La recursividad no sólo se puede aplicar a la definición de procedimientos (i.e. funciones o acciones),
Más detallesTema 5 Tabla de Símbolos
Traductores, Compiladores e Intérpretes 1 Tema 5 También se la llama tabla de nombres o tabla de identificadores y tiene dos funciones principales: - Efectuar chequeos semánticos. - Generación de código.
Más detallesTablas Asociativas (Hash) Tablas: filas & columnas de información Especificación algebraica
Tablas Asociativas (Hash) Tablas: filas & columnas de información Una tabla tiene varios campos (tipos de información) Una guía telefónica podría tener campos como: nombre, dirección, número de teléfono,
Más detallesAPUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable.
APUNTADORES Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No hay que confundir una dirección de memoria con el contenido
Más detallesTEMA 0 Gestión de Memoria Dinámica
TEMA 0 Gestión de Memoria Dinámica ESTRUCTURAS DE DATOS 1 Objetivos Tema preliminar para entender el uso de la herramienta básica en la gestión de memoria dinámica: punteros Objetivos: Conocer el concepto
Más detallesUNIDAD I. Universidad del Zulia Costa Oriental del Lago. Conceptos Básicos
Costa Oriental del Lago UNIDAD I Conceptos Básicos Comandos internos y externos. Estructura básicas: entidad, atributo, base de datos, clave primaria y secundaria, registro y archivo de datos empresas
Más detallesModelo Físico. M. Andrea Rodríguez-Tastets. II Semestre Universidad de Concepción,Chile andrea
Bases de Modelo Físico M. -Tastets Universidad de Concepción,Chile www.inf.udec.cl\ andrea andrea@udec.cl de un solo II Semestre - 2014 Bases de de un solo de un solo Bases de Objetivos de la Unidad Entender
Más detallesEs común al crear estructuras de datos y luego trabajar sobre las mismas, tener la necesidad de realizar búsquedas en forma más frecuente que la
Es común al crear estructuras de datos y luego trabajar sobre las mismas, tener la necesidad de realizar búsquedas en forma más frecuente que la necesidad de realizar inserciones. Por ejemplo si tenemos
Más detallesTEMA 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 detallesAnálisis y Diseño de Algoritmos Tablas de Hash
Análisis y Diseño de Algoritmos Tablas de Hash Guillermo Morales-Luna Arturo Díaz Pérez CONTENIDO 1. Dispersión 2. Funciones de dispersión (a) Método de división (b) Método de multiplicación 3. Direccionamiento
Más detallesSegundo Parcial de Programación 2 7 de junio de 2017
Instituto de Computación. Facultad de Ingeniería. Universidad de la República Segundo Parcial de Programación 2 7 de junio de 2017 Problema 1 (30 puntos) Considere un TAD T que permita almacenar a lo sumo
Más detallesAnalizador Léxico. Programación II Margarita Álvarez. Analizador Léxico - Funciones
Analizador Léxico Programación II Margarita Álvarez Analizador Léxico - Funciones Función Principal Leer carácter por carácter de la entrada y elaborar como salida una secuencia de componentes léxicos
Más detallesTarea 5 Gestión de Archivos
1 Tarea 5 1. Cuál es la diferencia entre un campo y un registro? Un campo es el elemento de datos básico. Un campo individual contiene un valor único, como el apellido de un empleado, una fecha o el valor
Más detallesTema 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 detallesUnidad 3: Gestión de Archivos
Unidad 3: Gestión de Archivos Tema 6, Implementación del Sistema de Archivos: 6.1 Estructura del Sistema de Archivos. 6.2 Métodos de Asignación: Continua, enlazada, indexada. 6.3 Fiabilidad del sistema
Más detallesTema 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 detallesPUNTEROS (APUNTADORES)
2010 UNAN LEON Departamento de Computación Ing. En Sistemas Sabatino Autor: Ing: Karina Esquivel Alvarado. Asignatura: Algoritmo y Estructura de Datos. PUNTEROS (APUNTADORES) TEMA 4: PUNTEROS (APUNTADORES)
Más detallesProfesor: José Miguel Rubio L.
Profesor: José Miguel Rubio L. Magíster en Ingeniería Informática Ingeniero Civil en Informática Licenciado en Ciencias de la Ingeniería Técnico en Programación Oficina: 3-20 e-mail 1: jose.rubio.l@ucv.cl
Más detallesTema 10. Indexación y asociación
Tema 10. Indexación y asociación Juan Ignacio Rodríguez de León Resumen Conceptos básicos. Índices ordenados. Archivos de índices de árbol B+. Archivos de índices de árbol B. Asociación estática. Asociación
Más detallesAbelardo Pardo. Iria Estévez Ayres. Damaris Fuentes Lorenzo. Pablo Basanta Val. Pedro J. Muñoz Merino. Hugo A. Parada.
Arquitectura de sistemas Abelardo Pardo University of Sydney School of Electrical and Information Engineering NSW, 2006, Australia Autor principal del curso de 2009 a 2012 Iria Estévez Ayres Damaris Fuentes
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesEXAMEN EXTRAORDINARIO Informática y Computación IV
Nombre del alumno: EXAMEN EXTRAORDINARIO Informática y Computación IV Lee cada una de las preguntas y contesta con una V para verdedero o una F en caso de que sea falso lo que se propone. Una base de datos
Más detallesExperiencia en gestión de proyectos, bases de datos, licenciatura en informática o afines
1. DATOS GENERALES DEL CURSO Nombre del curso Estructuración de Datos Programa al que pertenece Créditos Horas teoría 35 Horas práctica 70 Eje de formación Perfil deseable del profesor LICENCIATURA EN
Más detallesCurso 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 detallesTema 6: Memoria dinámica
: Programación 2 Curso 2013-2014 Índice 1 2 3 El tamaño es fijo y se conoce al implementar el programa Declaración de variables int i=0; char c; float vf[3]={1.0, 2.0, 3.0}; i c vf[0] vf[1] vf[2] 0 1.0
Más detallesTablas de dispersión (hash tables)
Tablas de dispersión (hash tables) La dispersión es una técnica empleada para realizar inserciones, eliminaciones y búsquedas en un tiempo promedio constante. La estructura de datos ideal para la tabla
Más detallesTema: Punteros.Puntero this en C#.
POO. Guía No.7 1 Tema: Punteros.Puntero this en C#. Facultad: Ingeniería Escuela: Computación Asignatura: Programación Orientada a Objetos Materiales y Equipo Computadora con el software C#. Guía Número
Más detallesEstructuras de Datos y Algoritmos Tema 3: Arrays y listas enlazadas
Estructuras de Datos y Algoritmos Tema 3: Arrays y listas enlazadas Departamento de Informática Universidad de Valladolid Curso 2011-12 Grado en Ingeniería Informática Grado en Ingeniería Informática de
Más detallesEstructura de Datos. Listas Enlazadas
Estructura de Datos Listas Enlazadas Conceptos de Lista enlazada Una lista enlazada es una secuencia de nodos que se interconectan mediante sus campos de enlace. Nodo: un objeto creado desde una clase
Más detallesDiseño de base de datos: Modelo Entidad Relación (I)
Diseño de base de datos: Modelo Entidad Relación (I) I. Fases del desarrollo para lograr un buen diseño El proceso de diseño de una base de datos comienza por una descripción detallada del sistema de información
Más detallesA l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año -
Trabajo práctico Nº 7 (Resolución de problemas Estructura: pila y cola). Realiza el programa de cada situación problemática. 1- Cargar en una pila n letras del abecedario.(n debe ser menor a 30) 2- En
Más detalles1
Curso: BORLAN DELPHI 5 Curso de desarrollo de aplicaciones Windows utilizando el entorno de programación Borland Delphi 5. Se estudian las particularidades del lenguaje Delphi, así como su sintaxis; sus
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesAlonso Ramirez Manzanares Computación y Algoritmos 03.05
Tablas de hash (2) mat-151 Alonso Ramirez Manzanares Computación y Algoritmos 03.05 Tablas de hash: resolviendo colisiones por encadenamiento cuando el número de elementos en total es proporcional al número
Más detallesUNIVERSIDAD CATÓLICA DEL NORTE PROGRAMA DE ESTUDIOS IDENTIFICACIÓN DE LA ASIGNATURA. Nombre: Estructuras de Datos y Archivos
1 UNIVERSIDAD CATÓLICA DEL NORTE PROGRAMA DE ESTUDIOS IDENTIFICACIÓN DE LA ASIGNATURA Nombre: Estructuras de Datos y Archivos Código: CC- 672 Fecha Actualización: 30/07/2008 Unidad Responsable: Departamento
Más detallesUnidad III Análisis Léxico. M.C. Juan Carlos Olivares Rojas
Unidad III Análisis Léxico M.C. Juan Carlos Olivares Rojas Agenda 3.1 Introducción a los Autómatas finitos y expresiones regulares. 3.2 Analizador de léxico. 3.3 Manejo de localidades temporales de memoria
Más detallesUnidad 3: Gestión de Archivos
Unidad 3: Gestión de Archivos Tema 5, Sistema de Archivos: 5.1 Introducción: Requisitos para el almacenamiento de información. 5.2 Archivo: Concepto y operaciones con archivos. 5.3 Métodos de Acceso: Acceso
Más detallesAnálisis Semántico y Traducción Dirigida por la Sintaxis. Programación II Margarita Álvarez
Análisis Semántico y Traducción Dirigida por la Sintaxis Programación II Margarita Álvarez Análisis Semántico Comprobación estática Comprobación de tipos: la aplicación de los operadores y operandos deben
Más detallesTema 6. Ordenación, búsqueda e intercalación interna
Fundamentos de Programación I Tema 6. Ordenación, búsqueda e intercalación interna Luís Rodríguez Baena (luis.rodriguez@upsam.net) Universidad Pontificia de Salamanca (campus Madrid) Escuela Superior de
Más detallesFicheros Contenido del Tema
Ficheros Contenido del Tema T E M A 3 3.1. Introducción. 3.2. Conceptos básicos. 3.3. Operaciones sobre ficheros. 3.4. Tipos de ficheros. 3.5. Organización de ficheros. 3.6. Primitivas de acceso. 3.7.
Más detallesAl concluir está práctica el estudiante será capaz de elaborar programas utilizando apuntadores y arreglos.
Apuntadores Práctica 13 Alumno: Grupo: Fecha: Instituto Politécnico Nacional Secretaria Académica Dirección de Educación Superior ESIME Culhuacan Ingeniería en Computación Fundamentos de Programación Objetivo
Más detallesApuntadores en C y C++
Apuntadores en C y C++ Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Prof. Marcos A. Gil T. 8 de diciembre de 2004 1. Introducción Los apuntadores en C y C++ son una herramienta
Más detalles1.2.4 Listas enlazadas
1.2.4 Listas enlazadas Las listas enlazadas son tipos de datos dinámicos que se construyen con nodos. Un nodo es un registro con al menos, dos campos, uno de ellos contiene las componentes y se le denomina
Más detallesGestión de archivos. Gestión de archivos
Gestión de archivos Secciones Tanenbaum: 6.1.2 6.1.5 6.2.1 6.2.4 6.3.1 6.3.5 6.4 1 Gestión de archivos Generalidades y objetivos Estructura de archivos: secuencia de bytes, secuencia de registros, o árbol
Más detallesProgramación Orientada a Objetos en C++
Unidad I Programación Orientada a Objetos en C++ Programación Orientada a Objetos en C++ Programación I - 0416202 Contenido Esta lección abarca los siguientes temas: Estructura y declaración de una clase
Más detallesEste material es de uso exclusivo para estudio, los textos fueron tomados textualmente de varios libros por lo que está prohibida su impresión y
Este material es de uso exclusivo para estudio, los textos fueron tomados textualmente de varios libros por lo que está prohibida su impresión y distribución. Listas Enlazadas Estructuras de datos dinámicas
Más detalles6. El TDA Lista Implementación con listas enlazadas. es de tipo genérico T. Pueden existir elementos repetidos (a diferencia de los conjuntos).
6. El TDA Lista 6.1. Definición 6.2. Operaciones del TDA 6.3. Implementación con vectores 6.4. Implementación con listas enlazadas 6.5. Comparativa Bibliografía: -Weiss - Aho, Hopcroft y Ullman 6.1. Definición
Más detallesIngeniera de Sistemas: Luz Esperanza Espitia Tutora de Estructura de datos.
Ingeniera de Sistemas: Luz Esperanza Espitia Tutora de Estructura de datos. Con relación a la Estructura LISTA Indicar objetos reales que se puedan modelar con dicha estructura. Listas de Ordenes de visitas
Más detallesCompiladores: Análisis Léxico. Pontificia Universidad Javeriana Cali Ingeniería de Sistemas y Computación Prof. Gloria Inés Alvarez V.
Compiladores: Análisis Léxico Pontificia Universidad Javeriana Cali Ingeniería de Sistemas y Computación Prof. Gloria Inés Alvarez V. Análisis Léxico Programa Lenguaje Fuente Análisis Léxico (Token, Lexema)
Más detallesLISTAS ENLAZADAS FUNDAMENTOS TEORICOS
LISTAS ENLAZADAS FUNDAMENTOS TEORICOS Una lista enlazada es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta al siguiente elemento por un «enlace»
Más detallesEl nivel Interno. Índice Tema 3
El nivel Interno Índice Tema 3 iel nivel Interno...1 Introducción...2 Etapas de acceso a la base de datos...2 Gestor de Disco...3 Gestor de Ficheros...3 Agrupamiento...4 Interactivos...4 Entrearchivos...4
Más detallesTABLA DE SÍMBOLOS. Evidentemente cada lenguaje de programación tiene unas características propias que se reflejan en la tabla de símbolos.
TABLA DE SÍMBOLOS La tabla de símbolos es una estructura de datos que contiene toda la información relativa a cada identificador que aparece en el programa fuente. Los identificadores pueden ser de variables,
Más detallesLaboratorio de Arquitectura de Redes. Punteros en lenguaje C
Laboratorio de Arquitectura de Redes Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones con punteros Operaciones
Más detallesMicroSoft Access (2 de 4)
Gestor de bases de datos MicroSoft Access (2 de 4) Departament d Informàtica de Sistemes i Computadors 1 Preliminares Instrucciones para el estudio: Leer detenidamente el material Realizar los ejemplos
Más detallesCAPÍTULO 3 ESTRUCTURAS DE DATOS ESTÁTICAS
CAPÍTULO 3 ESTRUCTURAS DE DATOS ESTÁTICAS Capítulo 3 Estructuras de datos estáticas 1/37 1. INTRODUCCIÓN Las estructuras de datos se utilizan, generalmente, para procesar una colección de valores que están
Más detallesUnidad V Análisis Semántico. M.C. Juan Carlos Olivares Rojas
Unidad V Análisis Semántico M.C. Juan Carlos Olivares Rojas Agenda 5.1 Analizador semántico 5.2 Verificación de tipos en expresiones. 5.3 Conversión de tipos. 5.4 Acciones agregadas en un analizador sintáctico
Más detallesGuia#9: Punteros en C#.
Guia#9: Punteros en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos. Conocer el concepto de punteros y su aplicación en C#. Desarrollar aplicaciones en
Más detallesAnálisis semántico Tabla de símbolos, chequeo de tipos y representaciones internas
Análisis semántico Tabla de símbolos, chequeo de tipos y representaciones internas Análisis semático c 2001 José Fortes Gálvez p.1 Análisis?... semántico? La semántica corresponde al significado asociado
Más detallesNecesidad de las memorias secundarias.
Contenido del Tema 4.1. Introducción. 4.2. Conceptos básicos. 4.3. Operaciones sobre ficheros. 4.4. Tipos de ficheros. 4.5. Organización de ficheros. 4.6. Primitivas de acceso. 4.7. Ordenación externa.
Más detallesElementos 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 detallesTema 05: Tablas hash. M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom
Tema 05: Tablas hash M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom (Prof. Edgardo A. Franco) 1 Contenido Tablas hash o de dispersión Función
Más detallesTema: 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 detallesTablas de Dispersión (Hashing Tables)
Tablas de Dispersión (Hashing Tables) Las tablas de dispersión o hashing tables (en inglés) es una técnica que se utiliza para implementar inserciones, eliminaciones y búsquedas en un tiempo medio constante.
Más detallesOrganización física de las bases de datos T
Bases de Datos 1 Dpto. Lenguajes y Sistemas Informáticos Organización física de las bases de datos T7.2006-07 Dpto. Lenguajes y Sistemas Informáticos Universidad de Alicante organización física bd Objetivos
Más detallesSistemas Operativos Tema 10. Sistema de archivos José Miguel Santos Alexis Quesada Francisco Santana Belén Esteban
Sistemas Operativos Tema 10. Sistema de archivos 1998-2008 José Miguel Santos Alexis Quesada Francisco Santana Belén Esteban 1 Contenidos Interfaz del sistema de archivos Implementación del sistema de
Más detallesGestor de bases de datos MicroSoft Access (2 de 4)
Gestor de bases de datos MicroSoft Access (2 de 4) Departament d Informàtica de Sistemes i Computadors 1 Contenido Conceptos generales Diseño de tablas Propiedades de los campos Ordenación, filtrado e
Más detallesSistemas Operativos Tema 4. Sistema de archivos
Contenidos Sistemas Operativos Tema 4. Sistema de archivos Interfaz del sistema de archivos Implementación del sistema de archivos 1998-2012 José Miguel Santos Alexis Quesada Francisco Santana Belén Esteban
Más detallesUNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 2.
UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes Tema 2 Análisis Léxico Javier Vélez Reyes jvelez@lsi.uned.es Objetivos del Tema
Más detallesESTRUCTURAS BÁSICAS Concepto de datos estructurados.
8 ESTRUCTURAS BÁSICAS 8.1. Concepto de datos estructurados. En temas anteriores vimos la representación de los datos en un computador y los distintos tipos que hay: carácter (ASCII), real (o de coma flotante),
Más detallesMemoria en C++ Punteros - Referencias Clases Y ahora, a trabajar! Memoria Dinámica en C++
Qué es una variable? Variables Memoria Matemática: una etiqueta que representa a un valor en una expresión: f (y) = y 2 + 2y Programación: Nombre simbólico dado a un valor residente en la memoria. Propiedades
Más detallesPRÁCTICAS DE PROCESADORES DEL LENGUAJE CURSO 2008/2009
PRÁCTICAS DE PROCESADORES DEL LENGUAJE CURSO 2008/2009 PRÁCTICA 2: ANALIZADOR SINTÁCTICO Y TABLA DE SÍMBOLOS. Objetivo de la Práctica Esta práctica tiene como primer objetivo la codificación de un analizador
Más detallesMemoria Dinámica en C++
Memoria Dinámica en C++ Algoritmos y Estructuras de Datos II DC-FCEyN-UBA 26 de Agosto de 2015 AED2 (DC-FCEyN-UBA) Memoria Dinámica en C++ 26 de Agosto de 2015 1 / 46 Repaso: Qué es una variable? Matemática:
Más detallesA l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año -
Trabajo práctico Nº 7 (Resolución de problemas Estructura: pila y cola). Realiza el programa de cada situación problemática. 1- Cargar en una pila n letras del abecedario.(n debe ser menor a 30) 2- En
Más detallesCentro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java II... 6 Estructuras de control... 7 Estructuras de selección... 8 Sentencia if... 9 Sentencia if - else... 12 Operador condicional...
Más detallesÁrboles B y B ) 20. Algoritmos y Estructuras de Datos II I.T. en Informática de Gestión/Sistemas Universidad de Huelva 63
y B + 3.8 y B+! Problema de los ABB cuando se usa almacenamiento secundario:! la búsqueda de un elemento requeriría muchos accesos a disco (un acceso a disco es extremadamente lento si lo comparamos con
Más detallesProgramación. Orienta a Objetos con C++
Programación Orienta a Objetos con C++ Objetivo El alumno comprenderá los conceptos sobre cuales se rige la programación orientada a objetos mediante una base teórica y un conjunto de prácticas, enfocando
Más detallesParte I: Elementos del lenguaje Ada
Parte I: Elementos del lenguaje Ada 1. Introducción a los computadores y su programación 2. Elementos básicos del lenguaje 3. Modularidad y programación orientada a objetos 4. Estructuras de datos dinámicas
Más detalles