Системное программное обеспечение персональных ЭВМ


Пример 10



Пример 10

struct FCB { byte drive; /* Логич. номер диска: 0-текущий, 1 - A, 2 - B и т.д. */ char fname[8]; /* Имя файла (дополн.пробелами) */ char fext[3]; /* Расширение файла (доп.пробелами) */ word curblk; /* Текущий номер блока (в блоке 128 записей) */ word recsize; /* Размер записи (байт) */ dword fsize; /* Размер файла (байт) */ word date; /* Дата создания (в формате элемента каталога) */ word time; /* Время создания (в формате элемента каталога) */ char reserved1[8]; byte currec; /* Текущий номер записи в блоке */ dword randrec; /* Относительный номер записи */ };

Во всех операциях с файлом идентификатором файла служит адрес FCB.

Программист перед открытием файла должен заполнить поля drive, fname и fext, остальные поля заполняются при открытии файла системой и поддерживаются DOS при работе с файлом. Если при создании файла необходимо задать его атрибуты в каталоге, FCB должен иметь расширенный формат, а именно:




- Начало -  - Назад -  - Вперед -