1. Qué es el acceso a dispositivos de almacenamiento
El sistema de almacenamiento en disco constituye el soporte
externo de la información. Los datos se registran sobre la superficie del disco
en una serie de circunferencias concéntricas llamadas pistas (track). Varias
pistas, una por cada cara del disco (generalmente 2), componen un cluster. Cada
pista está dividida en porciones iguales llamadas sectores. Un sector es la
unidad básica de almacenamiento en disco. El tamaño de un sector se mide en
bytes, y depende de las características del disco.
2.Qué es el acceso a dispositivos de
almacenamiento
Se presentan 3 rutinas que permiten lectura y
escritura absoluta de sectores, así como la determinación del espacio libre
disponible en un disco.
_AbsoluteRead. Transfiere el contenido de un o
más sectores del disco al buffer especificado, accesando directamente a los
sectores lógicos. En caso de error, se enciende el bit de acarreo y AX contiene
el código del error.
_AbsoluteWrite. Transfiere el contenido del buffer
especificado a uno o más sectores de disco, accesando directamente a los
sectores lógicos. En caso de error, se enciende el bit de acarreo y AX contiene
el código del error.
_FreeDiskSpace. Devuelve en DX:AX el espacio
libre en disco (en Kb). En caso de error, se enciende el bit de acarreo.
3. Busque y ejecute un programa de demuestre en
su ejecución el acceso a disco para grabar y leer.
Invocación:
push <unidad de disco>
push
<número de sectores a escribir>
push
<primer sector a escribir>
push SEG <buffer>
push OFFSET <buffer>
call _AbsoluteWrite
___________________________________________________________
PUBLIC _AbsoluteWrite
_AbsoluteWrite PROC NEAR
ARG
Buffer:DWORD,Start:WORD,NumSect:WORD,Drive:BYTE= ArgLen
push
bp ; salvar BP
mov
bp,sp ; permitir acceso a los argumentos
push
bx ; salvar registros
push
cx
push
dx
push
ds
mov
al,Drive ; escritura absoluta a disco
mov cx,NumSect
mov dx,Start
lds bx,Buffer
int 26h
pop bx
pop
ds ; recuperar registros
pop
dx
pop cx
pop bx
pop bp
ret
ArgLen
_AbsoluteWrite ENDP
No hay comentarios.:
Publicar un comentario