pe 04 - estructuras de almacenamiento externo

179
1 Estructuras de datos externas Programación Estructurada Irma Yazmín Hernández Báez Universidad Politécnica del Estado de Morelos

Upload: carlos-alonso

Post on 26-Jan-2016

213 views

Category:

Documents


0 download

DESCRIPTION

estructuras de almacenamiento

TRANSCRIPT

Page 1: PE 04 - Estructuras de Almacenamiento Externo

1

Estructuras de datos externas

Programación EstructuradaIrma Yazmín Hernández Báez

Universidad Politécnica del Estado de Morelos

Page 2: PE 04 - Estructuras de Almacenamiento Externo

Contenido

• Introducción.

• Organización de archivos.• Archivos secuenciales.• Archivos directos y

aleatorios (hashing).• Archivos indexados.

• Manejando archivos en C.

• Implementando archivos en C.

2 PE - Estructuras de datos externas

Universidad Politécnica del Estado de Morelos

Page 3: PE 04 - Estructuras de Almacenamiento Externo

Introducción a Archivos• Archivos: registros y campos.• Registros físicos y registros lógicos.• Operaciones con archivos.

3

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 4: PE 04 - Estructuras de Almacenamiento Externo

Archivos: registros y campos• Es posible almacenar datos en

memoria secundaria.• Más lenta pero dispone de más

espacio de almacenamiento, además no es volátil.

• Archivo: conjunto de información relacionada entre sí y estructurada en unidades más pequeñas, llamada registros.

• Registro: cada una de las unidades individuales en las que se divide un archivo. Cada registro debe contener datos pertenecientes a una misma cosa. Cada registro es una estructura de datos que contiene campos.

• Campo: es cada uno de los elementos que constituyen un registro.

4

                                     C    A    M    P    O    S

R          ID              Nombre          Apellidos        Teléfono    E  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+G  |  111-­‐H  |  Salvador    |  Pérez  Pérez    |  2309201  |I  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+S  |  333-­‐J  |  Margarita  |  Sánchez  Flor  |  2232111  |T  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+R  |    ....  |        ....      |          .....        |      ....    |O  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+S

Ejemplo:

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 5: PE 04 - Estructuras de Almacenamiento Externo

Registros físicos y registros lógicos

• Un registro físico (bloque) es la cantidad de información que el sistema operativo puede enviar o recibir del soporte de memoria secundaria en una operación de lectura o escritura. Esta cantidad depende del hardware.

• El registro físico puede ser mayor que el registro lógico, con lo cual, en una sola operación de lectura o escritura, se podrían transferir varios registros lógicos. También puede ocurrir lo contrario.

• Factor de bloqueo: número de registros lógicos contenidos en un registro físico.

• Importancia del rendimiento.5

Campo  ID  (5  caracteres)                  =    5  bytesCampo  Nombre  (30  caracteres)        =  30  bytesCampo  Apellidos  (40  caracteres)  =  40  bytesCampo  Teléfono  (entero  largo)      =    8  bytesTOTAL    =  83  bytes

Tamaño  registro  físico  =  512  bytes

Factor  de  bloqueo  =  TRF/TRL  =  512/83  =  6

Cálculo del Factor de bloqueo:

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 6: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Inserción: Consiste añadir un registro al archivo. El registro puede añadirse al final del archivo o entre dos registros que ya existieran previamente.

Inserción: Consiste añadir un registro al archivo. El registro puede añadirse al final del archivo o entre dos registros que ya existieran previamente.

Universidad Politécnica del Estado de Morelos

Page 7: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Borrado: Consiste en eliminar un registro existente.Borrado: Consiste en eliminar un registro existente.

Universidad Politécnica del Estado de Morelos

Page 8: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Modificación: Consiste en cambiar el dato almacenado en uno o varios de los campos del registro.

Modificación: Consiste en cambiar el dato almacenado en uno o varios de los campos del registro.

Universidad Politécnica del Estado de Morelos

Page 9: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Consulta: Consiste en leer el dato almacenado en uno o varios de los campos del registro.

Consulta: Consiste en leer el dato almacenado en uno o varios de los campos del registro.

Universidad Politécnica del Estado de Morelos

Page 10: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Creación: Consiste en crear una entrada en el soporte de memoria secundaria y asignarle un nombre para identificar en el futuro a los datos que contiene.

Creación: Consiste en crear una entrada en el soporte de memoria secundaria y asignarle un nombre para identificar en el futuro a los datos que contiene.

Universidad Politécnica del Estado de Morelos

Page 11: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Apertura: Antes de trabajar con un archivo es necesario abrirlo, creándose así un canal de comunicación entre el programa y el archivo a través del cuál se pueden leer y escribir datos. Los archivos sólo deben permanecer abiertos el tiempo estrictamente necesario.

Apertura: Antes de trabajar con un archivo es necesario abrirlo, creándose así un canal de comunicación entre el programa y el archivo a través del cuál se pueden leer y escribir datos. Los archivos sólo deben permanecer abiertos el tiempo estrictamente necesario.

Universidad Politécnica del Estado de Morelos

Page 12: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Cierre: Es importante cerrar el canal de comunicación con el archivo cuando no va a usarse en un futuro inmediato, porque todos los sistemas limitan el número máximo de archivos que pueden estar abiertos simultáneamente. También es importante porque evita un acceso accidental al archivo que pueda deteriorar la información almacenada en él.

Cierre: Es importante cerrar el canal de comunicación con el archivo cuando no va a usarse en un futuro inmediato, porque todos los sistemas limitan el número máximo de archivos que pueden estar abiertos simultáneamente. También es importante porque evita un acceso accidental al archivo que pueda deteriorar la información almacenada en él.

Universidad Politécnica del Estado de Morelos

Page 13: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Ordenación: Permite establecer un orden entre los registros del archivo.Ordenación: Permite establecer un orden entre los registros del archivo.

Universidad Politécnica del Estado de Morelos

Page 14: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Copiado: Crea un nuevo archivo con la misma estructura y contenido que el archivo original.Copiado: Crea un nuevo archivo con la misma estructura y contenido que el archivo original.

Universidad Politécnica del Estado de Morelos

Page 15: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Concatenación: Consiste en crear un archivo nuevo que contenga los registros de otros dos archivos previamente existentes, de manera que primero aparezcan todos los registros de un archivo y, a continuación, todos los del otro.

Concatenación: Consiste en crear un archivo nuevo que contenga los registros de otros dos archivos previamente existentes, de manera que primero aparezcan todos los registros de un archivo y, a continuación, todos los del otro.

Universidad Politécnica del Estado de Morelos

Page 16: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Mezcla: Parecida a la concatenación, pero el archivo resultante contendrá todos los registros de los dos archivos originales mezclados y ordenados.

Mezcla: Parecida a la concatenación, pero el archivo resultante contendrá todos los registros de los dos archivos originales mezclados y ordenados.

Universidad Politécnica del Estado de Morelos

Page 17: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Compactación: Esta operación sólo se realiza sobre archivos en los cuales el borrado de registros se ha realizado sin eliminar físicamente el registro, sino únicamente marcándolo como borrado para no procesarlo. Después de la compactación, todos los registros marcados como borrados quedan borrados físicamente, con lo que se libera espacio en el dispositivo de almacenamiento.

Compactación: Esta operación sólo se realiza sobre archivos en los cuales el borrado de registros se ha realizado sin eliminar físicamente el registro, sino únicamente marcándolo como borrado para no procesarlo. Después de la compactación, todos los registros marcados como borrados quedan borrados físicamente, con lo que se libera espacio en el dispositivo de almacenamiento.

Universidad Politécnica del Estado de Morelos

Page 18: PE 04 - Estructuras de Almacenamiento Externo

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Borrado: Es la operación contraria a la creación, ya que elimina la entrada en el dispositivo de almacenamiento, con lo que se pierde toda la información almacenada en el archivo.

Borrado: Es la operación contraria a la creación, ya que elimina la entrada en el dispositivo de almacenamiento, con lo que se pierde toda la información almacenada en el archivo.

Universidad Politécnica del Estado de Morelos

Page 19: PE 04 - Estructuras de Almacenamiento Externo

Organización interna de archivos• Archivos secuenciales.• Archivos directos y aleatorios (Hashing).• Archivos indexados.

7

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 20: PE 04 - Estructuras de Almacenamiento Externo

8

Archivos secuenciales

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 21: PE 04 - Estructuras de Almacenamiento Externo

Tipos de organización

• La organización de los archivos es la forma en que los datos son estructurados y almacenados en el dispositivo secundario.

• El tipo de organización se establece durante la fase de creación del archivo y es invariable durante toda su vida.

• La organización puede ser secuencial o relativa (o una combinación de ambas).

• El tipo de acceso al archivo es el procedimiento que se sigue para situarse sobre un registro concreto para hacer alguna operación sobre él.

• El tipo de acceso está condicionado por el tipo de org. física del archivo.

9

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 22: PE 04 - Estructuras de Almacenamiento Externo

Archivos secuenciales

• La forma más simple de estructura de archivo es el archivo secuencial.

• Los registros se sitúan físicamente en el dispositivo en el orden en el que se van escribiendo, uno tras otro y sin dejar huecos entres sí.

• El acceso a los registros también debe hacerse en orden.

• Archivos sencuenciales -> cinta magnética.

• Tienen un indicador de posición (o cursor) que señala qué registro fue el último que se accedió. Al abrir el archivo, el indicador se sitúa al inicio.

• Cuando se abre para escribir en él, el indicador se sitúa justo después del último byte del mismo (al final).

10

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 23: PE 04 - Estructuras de Almacenamiento Externo

Archivos secuenciales: ventajas y desventajas

11

Ventajas:• Es la más sencilla de manejar para

el programador.• Si hay que acceder a un conjunto

de registros consecutivos, o a todo el archivo es el método más rápido.

• No deja espacios entre registro y registro, por lo que se optimiza el uso del espacio en la memoria secundaria.

Desventajas:• Para consultar datos individuales,

hay que recorrer todo el archivo desde el principio. Es decir, el acceso a registros individuales es, en general, lento.

• Las operaciones de inserción y eliminación de registros solo pueden hacerse al final del archivo.

• Hacerlas con registros intermedios representa mover grandes bloques de información y, por lo tanto, consumir mucho tiempo.

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 24: PE 04 - Estructuras de Almacenamiento Externo

12

Archivos directos y aleatorios

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 25: PE 04 - Estructuras de Almacenamiento Externo

Organización relativa: archivos directos y aleatorios

• La idea básica de la organización relativa consiste en guardar físicamente los registros en lugares de memoria no consecutivos.

• ¿Cómo se puede encontrar dónde está cada registro?.

• Solución: utilizar un campo clave de entre todos los del registro. Suele ser numérico, permite averiguar la dirección física donde está almacenado el registro en la memoria secundaria mediante un algoritmo de transformación.

13

Hashing. Es la transformación de claves lógicas para obtener direcciones de físicas.

• Los archivos relativos son más versátiles que los secuenciales porque permiten acceder a cualquier parte del archivo en cualquier momento, como si fueran arreglos. Las operaciones de lectura y escritura pueden hacerse en cualquier punto del archivo.

• Los archivos de organización relativa tienen dos variantes: los archivos directos y los archivos aleatorios (o indirectos).

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 26: PE 04 - Estructuras de Almacenamiento Externo

• Suponga que un archivo almacenado en memoria secundaria contiene cinco registros. En un archivo secuencial los cinco estarán almacenados en posiciones consecutivas de memoria.

• En cambio, si el archivo es relativo, cada registro estará almacenado en posiciones no consecutivas.

• ¿Cómo localizar los registros en la memoria secundaria? -> R: Hashing (función de transformación a cada clave).

14

Hashing. Es la transformación de claves lógicas para obtener direcciones de físicas.

Ejemplo de hashing

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 27: PE 04 - Estructuras de Almacenamiento Externo

15

Archivos indexados

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 28: PE 04 - Estructuras de Almacenamiento Externo

Manejando archivos en C• Funciones de apertura y cierre.• Funciones de lectura y escritura.• Funciones específicas para acceso

directo.• Manipulación de archivos y directorios.

16

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 29: PE 04 - Estructuras de Almacenamiento Externo

Apertura de archivos

• Antes de escribir o leer datos de un archivo es necesario abrirlo.

• Al abrir el archivo se establece comunicación entre el programa y el sistema operativo a cerca de cómo accesarlo.

• Programa: nombre completo del archivo y la intención de uso.

• SO: alias del archivo.

17

Programa de

archivos

Nombre de archivo

Lectura/EscrituraSistema

OperativoApuntador a

estruct. de archivo (alias)

Las operaciones en archivos se

realizan por medio de su alias Archivo

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 30: PE 04 - Estructuras de Almacenamiento Externo

Manejo básico de archivos con stdio.h

• Biblioteca STDIO -> funciones básicas de archivos: leer y escribir datos.

• Primer paso: abrir el archivo.• Devolución de un puntero a

una estructura de tipo FILE (descriptor de archivo). Permite manipular posteriormente el archivo.

• Segundo paso: manipulación del archivo.

• Último paso: cerrar el archivo.

18

Ejemplo:

/*  variable  para  apuntar  al        descriptor  de  archivo  */FILE*  fd;      ...  /*  abre  el  archivo  en  modo        lectura  */fd  =  fopen  ("pepe.txt",  "rt");  ...  trabaja  con  el  archivo  ...  /*  cierra  el  archivo  */fclose  (fd);

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 31: PE 04 - Estructuras de Almacenamiento Externo

19

Funciones de manejo de archivos

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 32: PE 04 - Estructuras de Almacenamiento Externo

Abrir y cerrar un archivo• Abrir un archivo

fd  =  fopen  (nombre,  modo);

• Devuelve NULL si no se pudo abrir.

• nombre es el nombre del archivo.

• modo es una cadena que define el modo de apertura.

modo descripción

r solo lectura.w escritura.a apéndice (escribir desde el final).+ (combinado con r, w o a) lectura/escritura.t archivo de texto.b archivo binario.

20

Universidad Politécnica del Estado de Morelos

Abrir un archivo:

fd = fopen ("c:\\ejemplos\\ archivo.txt","r+t");

Cerrar un archivo:

fclose  (fd);

Abre el archivo:c:\ejemplos\archivo.txt en modo lectura/escritura y en modo texto.Las barras en el nombre del archivo deben escribirse doble.

PE - Estructuras de datos externas

Page 33: PE 04 - Estructuras de Almacenamiento Externo

Validar la apertura de un archivo

• Algunas funciones requieren la existencia del archivo para realizar operaciones.

• Por ello es necesario verificar que cuando se intenta abrir un archivo hay tenido éxito la operación.

• Si un archivo no se puede abrir, la función fopen devuelve el valor de 0 (cero), definido como NULL en stdio.h.

21

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

int main () {

!alias = fopen("ejem.sec", "rb");!if (alias==NULL) {!! printf("No se puede abrir el _ archivo!");!! getch();!}

return 0;}

PE - Estructuras de datos externas

Page 34: PE 04 - Estructuras de Almacenamiento Externo

Detectar el final del archivo feof()• Sintaxis de fputs

x  =  feof  (fd);

• Devuelve un 1 si se ha llegado al final del archivo.

• Devuelve un 0 en caso contrario.

• Útil para saber cuándo dejar de leer información.

22

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 35: PE 04 - Estructuras de Almacenamiento Externo

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

PE - Estructuras de datos externas

Page 36: PE 04 - Estructuras de Almacenamiento Externo

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

PE - Estructuras de datos externas

Page 37: PE 04 - Estructuras de Almacenamiento Externo

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

PE - Estructuras de datos externas

Page 38: PE 04 - Estructuras de Almacenamiento Externo

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

PE - Estructuras de datos externas

Page 39: PE 04 - Estructuras de Almacenamiento Externo

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Page 40: PE 04 - Estructuras de Almacenamiento Externo

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

Cantidad de registros que se desean grabar

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Page 41: PE 04 - Estructuras de Almacenamiento Externo

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

Cantidad de registros que se desean grabar

La función sizeof determina el tamaño en bytes del registro.

alias del archivo donde se desea grabar.

PE - Estructuras de datos externas

Page 42: PE 04 - Estructuras de Almacenamiento Externo

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

PE - Estructuras de datos externas

Page 43: PE 04 - Estructuras de Almacenamiento Externo

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

PE - Estructuras de datos externas

Page 44: PE 04 - Estructuras de Almacenamiento Externo

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

PE - Estructuras de datos externas

Page 45: PE 04 - Estructuras de Almacenamiento Externo

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

PE - Estructuras de datos externas

Page 46: PE 04 - Estructuras de Almacenamiento Externo

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Page 47: PE 04 - Estructuras de Almacenamiento Externo

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

Cantidad de registros que se desean leer.

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Page 48: PE 04 - Estructuras de Almacenamiento Externo

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

Cantidad de registros que se desean leer.

La función sizeof determina el tamaño en bytes del registro.

alias del archivo de donde se desea leer.

PE - Estructuras de datos externas

Page 49: PE 04 - Estructuras de Almacenamiento Externo

Implementando archivos en C• Archivos secuenciales.• Archivos directos.• Archivos indexados.

25

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 50: PE 04 - Estructuras de Almacenamiento Externo

26

Implementación de archivos secuenciales

Universidad Politécnica del Estado de Morelos

OPERACIONES:• Altas.• Consultas.• Listado.• Modificaciones.• Bajas lógicas.• Bajas físicas.PE - Estructuras de datos externas

Page 51: PE 04 - Estructuras de Almacenamiento Externo

Declaraciones globales• Antes de analizar, diseñar e

implementar las rutinas es necesario establecer las consideraciones iniciales tales como:

• Encabezados (*.h).

• Declaraciones globales del registro.

• Declaración del alias.

27

Universidad Politécnica del Estado de Morelos

//Manejo de archivos#include <stdio.h> //Manejo de cadenas#include <string.h>

struct tipo_registro {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_registro Registro;

FILE *alias;

int main () {

...! return 0;}

Declaración del tipo de dato (en este caso del tipo_registro)

Declaración de la variable “Registro” de tipo “tipo_registro”.

PE - Estructuras de datos externas

Page 52: PE 04 - Estructuras de Almacenamiento Externo

Altas secuenciales• Se considera un número de

producto (campo no_prod) como campo clave.

• No se permite que se graben dos productos diferentes con el mismo número, por lo que es necesario realizar un recorrido secuencial completo del archivo para asegurarse que no haya duplicados.

• La primera ocasión que se intente insertar registros en un archivo, éste debe crearse. Debe cuidarse no crear el archivo cada vez que se invoque a esta rutina, porque se perdería su contenido anterior.

28

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 53: PE 04 - Estructuras de Almacenamiento Externo

29

alta secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

alias=OPEN(“producto.sec”)

WRITE

Registro.no_prod = no_prod

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

WRITE(Registro,alias)

CLOSE(alias)

return

“Registroduplicado”

alias=OPEN(“producto.sec”)READ/WRITE

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Creación del archivo.

Ciclo mientras no se encuentre el final del archivo.

Secuencial: Alta de un registroUniversidad Politécnica del Estado de Morelos

Page 54: PE 04 - Estructuras de Almacenamiento Externo

Consultas secuenciales

• Se considera un número de producto (campo no_prod) como campo clave.

• Se recorre completamente en forma secuencial (registro por registro) hasta encontrar el registro solicitado.

30

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 55: PE 04 - Estructuras de Almacenamiento Externo

31

consulta secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)

READ

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Consulta de un registro

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

“El archivo no existe”

R

“No se encontróel registro.”

R

Universidad Politécnica del Estado de Morelos

Page 56: PE 04 - Estructuras de Almacenamiento Externo

Listado secuencial

• Se considera un número de producto (campo no_prod) como campo clave.

• Esta rutina es muy semejante a la de Consultas secuenciales, solo que en el Listado se despliegan todos los registros lógicos que contiene el archivo.

• En este tipo de archivo se inicia el recorrido desde el primer registro almacenado y se detiene cuando se encuentra el final de archivo.

32

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 57: PE 04 - Estructuras de Almacenamiento Externo

33

listado secuencial

alias=NULL

READ(Registro,alias)

WHILE NOT EOF (alias)

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)

READ

V

F

F

V

F

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Listado

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

“El archivo no existe”

R

“Fin del listado”

R

Universidad Politécnica del Estado de Morelos

Lectura del siguiente registro completo.

Page 58: PE 04 - Estructuras de Almacenamiento Externo

Modificaciones secuenciales

• La forma de modificar el contenido de los campos de registros de un archivo, depende de la rutina de consulta.

• Es necesario localizar previamente el registro que se desea modificar, capturar los nuevos valores y posteriormente grabar el registro completo en la misma posición que se encontraba.

• Recordar que cuando se termina de leer un registro del archivo, el apuntador se posiciona al inicio del siguiente registro, por lo que es necesario reposicionarlo.

34

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 59: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

PE - Estructuras de datos externas

Page 60: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 61: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 62: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 63: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_regPuntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 64: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 65: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Dirección física del registro donde se desea posicionar (indicada en bytes)

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 66: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Cantidad de registros que se desean leer.

Dirección física del registro donde se desea posicionar (indicada en bytes)

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 67: PE 04 - Estructuras de Almacenamiento Externo

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Cantidad de registros que se desean leer.

Dirección física del registro donde se desea posicionar (indicada en bytes)

Se debe calcular la dirección física antes de reposicionar el apuntador del archivo.

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Page 68: PE 04 - Estructuras de Almacenamiento Externo

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

PE - Estructuras de datos externas

Page 69: PE 04 - Estructuras de Almacenamiento Externo

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

PE - Estructuras de datos externas

Page 70: PE 04 - Estructuras de Almacenamiento Externo

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

PE - Estructuras de datos externas

Page 71: PE 04 - Estructuras de Almacenamiento Externo

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

La variable dir_física debe ser declarada como long  int

PE - Estructuras de datos externas

Page 72: PE 04 - Estructuras de Almacenamiento Externo

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

La variable dir_física debe ser declarada como long  int

Alias de archivo.

PE - Estructuras de datos externas

Page 73: PE 04 - Estructuras de Almacenamiento Externo

37

modificación_secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)READ/WRITE

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Modificación

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

“El archivo no existe”

R

“No se encontróel registro.”

R

Universidad Politécnica del Estado de Morelos

SEEK(alias, FTELL(alias) -

sizeof(Registro), SEEK_SET)

WRITE(Registro,alias)

Page 74: PE 04 - Estructuras de Almacenamiento Externo

Bajas lógicas secuenciales

• Consisten en “marcar” los registros eliminados.

• En el ejemplo, el registro borrado se “limpia”, dejando en blanco todos sus campos (colocando el valor de cero en los campos numéricos y blancos en las cadenas o de tipo carácter).

• La rutina bajas lógicas se asemeja mucho a la rutina de modificaciones, sólo que en las bajas no se capturan los nuevos valores, sino se les asigna en blanco y se graba el registro completo.

38

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 75: PE 04 - Estructuras de Almacenamiento Externo

39

baja_lógica_secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)READ/WRITE

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Baja lógica

Registro.no_prod=0,Registro.descrip=””,Registro.cantidad=0,Registro.precio=0.0,Registro.garantia=’ ’

“El archivo no existe”

R

“No se encontróel registro.”

R

Universidad Politécnica del Estado de Morelos

SEEK(alias, FTELL(alias) -

sizeof(Registro), SEEK_SET)

WRITE(Registro,alias)

Page 76: PE 04 - Estructuras de Almacenamiento Externo

Bajas físicas secuenciales

• Conocida también como compactar el archivo.

• Consiste en eliminar definitivamente los espacios dejados por los registros borrados lógicamente.

• La rutina se apoya de un archivo auxiliar (también secuencial), en el que se graban solo los registros válidos (registros no eliminados).

• Posteriormente se elimina el archivo original y se renombra el archivo auxiliar como el archivo original.

40

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 77: PE 04 - Estructuras de Almacenamiento Externo

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

PE - Estructuras de datos externas

Page 78: PE 04 - Estructuras de Almacenamiento Externo

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

Aseguarse que los archivos están cerrados.

PE - Estructuras de datos externas

Page 79: PE 04 - Estructuras de Almacenamiento Externo

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

Nombre anterior del archivo

Aseguarse que los archivos están cerrados.

PE - Estructuras de datos externas

Page 80: PE 04 - Estructuras de Almacenamiento Externo

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

Nombre anterior del archivo

Nombre nuevo del archivo

Aseguarse que los archivos están cerrados.

PE - Estructuras de datos externas

Page 81: PE 04 - Estructuras de Almacenamiento Externo

Eliminando archivos con la función remove()

• La función remove elimina definitivamente un archivo especificando su nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

42

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! remove("viejo.old");! return 0;}

int  remove  (char*  nom_archivo);

PE - Estructuras de datos externas

Page 82: PE 04 - Estructuras de Almacenamiento Externo

Eliminando archivos con la función remove()

• La función remove elimina definitivamente un archivo especificando su nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

42

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! remove("viejo.old");! return 0;}

int  remove  (char*  nom_archivo);

Asegurarse que el archivo está cerrado.

PE - Estructuras de datos externas

Page 83: PE 04 - Estructuras de Almacenamiento Externo

Eliminando archivos con la función remove()

• La función remove elimina definitivamente un archivo especificando su nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

42

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! remove("viejo.old");! return 0;}

int  remove  (char*  nom_archivo);

Nombre anterior del archivo a eliminar

Asegurarse que el archivo está cerrado.

PE - Estructuras de datos externas

Page 84: PE 04 - Estructuras de Almacenamiento Externo

43

baja_físcia_secuencial

alias=NULL

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod<> 0

READ(Registro,alias)

CLOSEALL

return

alias=OPEN(“producto.sec”)

READ

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Creación del archivo temporal

Secuencial: Baja física

“El archivo no existe”

Universidad Politécnica del Estado de Morelos

WRITE(Registro,temporal)

temporal=OPEN(“temporal.tmp”)

WRITE

DELETE(“producto.sec”)

RENAME“temporal.tmp” AS

“producto.sec”

Page 85: PE 04 - Estructuras de Almacenamiento Externo

44

Implementación de archivos directos

Universidad Politécnica del Estado de Morelos

OPERACIONES:• Altas.• Consultas.• Modificaciones.• Bajas lógicas.

PE - Estructuras de datos externas

Page 86: PE 04 - Estructuras de Almacenamiento Externo

Organización relativa: archivos directos y aleatorios

• La idea básica de la organización relativa consiste en guardar físicamente los registros en lugares de memoria no consecutivos.

• ¿Cómo se puede encontrar dónde está cada registro?.

• Solución: utilizar un campo clave de entre todos los del registro. Suele ser numérico, permite averiguar la dirección física donde está almacenado el registro en la memoria secundaria mediante un algoritmo de transformación.

45

Hashing. Es la transformación de claves lógicas para obtener direcciones de físicas.

• Los archivos relativos son más versátiles que los secuenciales porque permiten acceder a cualquier parte del archivo en cualquier momento, como si fueran arreglos. Las operaciones de lectura y escritura pueden hacerse en cualquier punto del archivo.

• Los archivos de organización relativa tienen dos variantes: los archivos directos y los archivos aleatorios (o indirectos).

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 87: PE 04 - Estructuras de Almacenamiento Externo

Archivos directos

• En un archivo directo no es necesario recorrerlo completamente para acceder a un registro en particular, se puede colocar el apuntador interno del archivo directamente en el registro deseado, permitiendo mayor rapidez de acceso.

• Para reposicionar el apuntador se utiliza la función SEEK (fseek) indicándole la dirección del registro que se desea.

46

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 88: PE 04 - Estructuras de Almacenamiento Externo

Direcciones lógicas y direcciones físicas

• El lenguaje C utiliza direcciones físicas para los archivos.

• El direccionamiento consiste en el espacio ocupado por los datos en el archivo (calculado en bytes) no el renglón al que se asignó dicho registro.

• Se debe calcular la dirección física antes de reposicionar el apuntador del archivo.

47

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 89: PE 04 - Estructuras de Almacenamiento Externo

48

Universidad Politécnica del Estado de Morelos

long int dir_fisica, dir_logica;

dir_fisica = dir_logica * sizeof (Reg);

• Para poder reposicionar el apuntador de un archivo en un registro específico es necesario calcular su dirección física correspondiente de acuerdo al espacio ocupado por sus registros predecesores.

Fórmula para conversión de direcciones:

Cálculo de direcciones físicas

PE - Estructuras de datos externas

Page 90: PE 04 - Estructuras de Almacenamiento Externo

Declaraciones globales• Antes de analizar, diseñar e

implementar las rutinas es necesario establecer las consideraciones iniciales tales como:

• Encabezados (*.h).

• Declaraciones globales del registro.

• Declaración del alias.

49

Universidad Politécnica del Estado de Morelos

//Manejo de archivos#include <stdio.h> //Manejo de cadenas#include <string.h>

struct tipo_registro {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_registro Registro;

FILE *alias;

int main () {

...! return 0;}

Declaración del tipo de dato (en este caso del tipo_registro)

Declaración de la variable “Registro” de tipo “tipo_registro”.

PE - Estructuras de datos externas

Page 91: PE 04 - Estructuras de Almacenamiento Externo

Altas directas

• Se tomará el mismo ejemplo del registro de producto que se usó en el archivo secuencial.

• En este caso se nombrará el archivo como “producto.dir”

• La primera ocasión que se intente insertar registros en un archivo, éste debe crearse.

• Debe cuidarse no crear el archivo cada vez que se invoque esta función.

50

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 92: PE 04 - Estructuras de Almacenamiento Externo

51

alta_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

alias=OPEN(“producto.dir”)

WRITE

Registro.no_prod = no_prod

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

WRITE(Registro,alias)

CLOSE(alias)

return

“Registroduplicado”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

FV

Apertura del archivo y asignación del alias.

Creación del archivo.

Directo: Alta de un registroUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

SEEK(dir_fisica,alias)C

CPosicionar el apuntador del archivo.

Cálculo de la dirección física.

Page 93: PE 04 - Estructuras de Almacenamiento Externo

Consultas directas

• No es necesario hacer el recorrido secuencial desde el primer registro almacenado.

• Solo se calcula la dirección física del registro que se desea consultar y se posiciona el apuntador del archivo directamente.

52

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 94: PE 04 - Estructuras de Almacenamiento Externo

53

consulta_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

CLOSE(alias)

return

“No existe el registro”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

VF

Apertura del archivo y asignación del alias.

Directo: Consulta de un registroUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

C

Posicionar el apuntador del archivo.

C

Cálculo de la dirección física

“El archivo no existe”

Page 95: PE 04 - Estructuras de Almacenamiento Externo

Modificaciones directas

• Depende de la rutina de consulta, es necesario localizar previamente el registro que se desea modificar, capturar los nuevos valores y posteriormente grabar el registro completo en la misma posición que se encontraba.

• Cuando se termina de leer un registro del archivo, el apuntador se posiciona al inicio del siguiente registro, por lo que, antes de grabar el registro modificado, es necesario reposicionar el apuntador en la dirección correcta.

54

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 96: PE 04 - Estructuras de Almacenamiento Externo

55

modificación_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

Registro.no_prod = no_prod

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

WRITE(Registro,alias)

CLOSE(alias)

return

“No existe el registro”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

VF

Apertura del archivo y asignación del alias.

Directo: Modificación de un registroUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

C

CPosicionar el apuntador del archivo.

Cálculo de la dirección física.

SEEK (alias, FTELL(alias) - sizeof(Registro),

SEEK_SET)

“El archivo no existe”

Page 97: PE 04 - Estructuras de Almacenamiento Externo

Bajas de registros en un archivo directo• Para es este ejemplo de archivo

directo, NO se pueden realizar bajas físicas (únicamente bajas lógicas).

• Existe una relación directa entre la dirección lógica y el número de producto (no_prod).

• Cada producto se almacena en su respectivo registro de acuerdo al número de producto.

• Si se aplicase la función de bajas físicas (compactación), los registros se recorrerían a otras direcciones que no corresponderían con su no_prod y no se podrían localizar.

56

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 98: PE 04 - Estructuras de Almacenamiento Externo

Bajas lógicas directas

• Las bajas lógicas consisten en “marcar” los registros eliminados.

• El registro borrado se “limpia”, dejando en blanco todos sus campos (colocando el valor de cero en los campos numéricos y blancos en las cadenas y/o caracteres).

• Se asemeja mucho a la función modificaciones.

57

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 99: PE 04 - Estructuras de Almacenamiento Externo

58

baja_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

Registro.no_prod = 0

Registro.descrip=””,Registro.cantidad=0,Registro.precio=0.0,Registro.garantia=’’

WRITE(Registro,alias)

CLOSE(alias)

return

“No existe el registro”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

VF

Apertura del archivo y asignación del alias.

Directo: bajas lógicasUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

C

CPosicionar el apuntador del archivo.

Cálculo de la dirección física.

SEEK (alias, FTELL(alias) - sizeof(Registro),

SEEK_SET)

“El archivo no existe”

Page 100: PE 04 - Estructuras de Almacenamiento Externo

59

Implementación de archivos indexados

Universidad Politécnica del Estado de Morelos

OPERACIONES:• Altas.• Consultas.• Modificaciones.• Bajas lógicas.• Listado.PE - Estructuras de datos externas

Page 101: PE 04 - Estructuras de Almacenamiento Externo

Organización indexada• Los archivos con organización

indexada tienen una mezcla entre las organizaciones secuencial y relativa.

• Consta de dos archivos para almacenar información relacionada:

• Índice: Contiene un dato que identifica la información.

• Archivo de datos: Contiene toda la información guardada.

60

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 102: PE 04 - Estructuras de Almacenamiento Externo

Secuenciales indexados: ventajas y desventajas

61

Ventajas:• Permite el acceso secuencial.• Permite el acceso directo a los

registros.• Se pueden actualizar los registros

en el mismo archivo, sin necesidad de crear un archivo nuevo de copia en el proceso de actualización.

Desventajas:• Ocupa más espacio en el disco

que los archivos secuenciales, debido al uso del área de índices.

• Tiene tendencia a que aumente el tiempo medio de acceso a los registros cuando se producen muchas altas nuevas con claves que hay que intercalar entre las existentes, ya que aumenta el área de excedentes (overflow).

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 103: PE 04 - Estructuras de Almacenamiento Externo

Organización indexada• Tres zonas o áreas:

• Área primaria. Almacena los registros de archivo secuencial.

• Área de índices. Segundo archivo secuencial, cuyos registros solo tienen dos campos: clave y dir. física.

• Área de excedentes. Contiene registros que no cupieron en área primaria.

62

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 104: PE 04 - Estructuras de Almacenamiento Externo

63

Universidad Politécnica del Estado de Morelos

Tres

seg

men

tos

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1236789350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 76 Javier Saboya García 1678989600 77 Pedro Carrión García 1324987650 78 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FÍSICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Lucas Ochoa Fernández 1235678

Área

prim

aria

Área

de

índice

sÁr

ea d

e ex

cede

ntes

pers

onas

.dat

pers

onas

.ind

Page 105: PE 04 - Estructuras de Almacenamiento Externo

Acceso a un registro concreto• Primero, se busca

secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar.

• Segundo, se hace un acceso directo al primer registro del segmento.

• Después se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

• Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

64

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Page 106: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 107: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

Page 108: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

Page 109: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

Page 110: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

Page 111: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

Page 112: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

Page 113: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

Page 114: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

Page 115: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 116: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 117: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 118: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 119: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 120: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

Page 121: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

Page 122: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

Page 123: PE 04 - Estructuras de Almacenamiento Externo

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

Page 124: PE 04 - Estructuras de Almacenamiento Externo

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 125: PE 04 - Estructuras de Almacenamiento Externo

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

Page 126: PE 04 - Estructuras de Almacenamiento Externo

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

Page 127: PE 04 - Estructuras de Almacenamiento Externo

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

Page 128: PE 04 - Estructuras de Almacenamiento Externo

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

Page 129: PE 04 - Estructuras de Almacenamiento Externo

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 130: PE 04 - Estructuras de Almacenamiento Externo

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 131: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 132: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 133: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 134: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 135: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 136: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 137: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 138: PE 04 - Estructuras de Almacenamiento Externo

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 139: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 140: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 141: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 142: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 143: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 144: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 145: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

Page 146: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 147: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 148: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 149: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 150: PE 04 - Estructuras de Almacenamiento Externo

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

Page 151: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 152: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 153: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 154: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 155: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 156: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

Page 157: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

Page 158: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 159: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 160: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 161: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 162: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 163: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 164: PE 04 - Estructuras de Almacenamiento Externo

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 165: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 166: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 167: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 168: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 169: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

Page 170: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

Page 171: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

Page 172: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 173: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 174: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 175: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

Page 176: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 177: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 178: PE 04 - Estructuras de Almacenamiento Externo

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

Page 179: PE 04 - Estructuras de Almacenamiento Externo

71

Estructuras de datos externas

Programación EstructuradaIrma Yazmín Hernández Báez

Universidad Politécnica del Estado de Morelos