sábado, 27 de junio de 2009

El BASIC y los ficheros directos

Los ficheros directos, además de tener la gran ventaja de permitir acceder directamente a sus datos,.................

Con los ficheros secuenciales (repetir estos conceptos nunca viene mal) se pueden hacer, en cambio, solamente operaciones de lectura o de escritura, de forma separada. Por estos motivos, pero también por su más compacta grabación en los discos, los ficheros directos son casi siempre preferibles.

Hagamos primero una puntualización. Hemos utilizado el término ficheros directos o de acceso directo pero hay quien distingue más precisamente entre fiche-res directos y ficheros relativos La diferencia es solamente de tipo práctico y no de naturaleza conceptual, por lo que, después de haberla aclarado, seguiremos utilizando la primera denominación. Un fichero se denomina directo por cuanto que al permitir apuntar directamente a cada uno de sus registros está en contraposición con los ficheros secuenciales. Los americanos utilizan el término 'Tándem" (aleatorio) pretendiendo indicar que el tiempo de acceso a cualquiera de sus elementos es siempre igual por término "medio.

La distinción entre ficheros directos y ficheros relativos depende, por el contrario, del criterio con el que se indentifican los registros individuales. Los ficheros directos propiamente dichos son aquellos en los que para apuntar a un registro se dan, en la práctica, las indicaciones de pista y sector del disco. En cambio, en los ficheros relativos, a cada registro se le asocia un número creciente relativo (primero, segundo, tercero, etc.) gracias al cual se puede apuntar directamente al registro. En este segundo caso corresponde al sistema operativo disco del ordenador (el DOS) convertir la indicación relativa del registro en los valores, a bajo nivel, de pista y sector.

Hablemos entonces de ficheros directos. Considerando que estos ficheros se suelen emplear solamente en los ordenadores personales maé grandes, que a menudo trabajan con el BASIC Microsoft, vamos a ver inmediatamente las instrucciones de este lenguaje. Entre los ordenadores caseros son pocos los que permiten los ficheros directos (entre las excepciones, el más significativo es el Commodore §4).

Dijimos anteriormente que, en los ficheros directos, los registros tienen todos la misma longitud. Pero comprobar solamente que los datos tienen esta longitud no nos basta. Es preciso imaginar un registro como una caja en la que situamos distintos divisores: en cada compartimento (campo) se ponen los" datos efectivos. Una vez que la caja esté preparada, es decir, cuando el programa haya llenado de datos los compartimentos, se enviará al fichero. El nombre correcto de esta caja es eoí'e> término que encontramos ya con anterioridad.

Durante la fase de escritura del fichero el buffer se llena paso a paso, campo por campo, y luego todo el conjunto se transmite con rapidez al fichero.

Por el contrario, durante la lectura, después de haber ; a un registro, éste se copia en el buffer, poniendo a disposición del programa sus datos, tal y como se ve en la Figura 2.

La instrucción del BASIC Microsoft que prepara y controla el buffer es la instrucción FIELD, y veremos a continuación cómo funciona.

No hay comentarios:

Publicar un comentario