Блок управления файлом (FCB) - часть 14
каталоге диска, то программа завершит выполнение и выдаст
соответствующее сообщение об ошибке.
При любом обращении DOS к файлу программа должна, прежде всего,
открыть файл. Процедура открытия файла устанавливает связь между
операционной системой и пользовательской программой. В процессе
этой операции DOS просматривает справочник диска, находит нужный
файл (или не находит, что соответствует сбойной ситуации) и
заполняет поле блока FCB, относящееся к длине файла. После того,
как файл открыт, DOS не должна просматривать справочник диска
всякий раз, когда происходит обращение к файлу. Система DOS
сохраняет в блоке FCB информацию о файле до тех пор, пока она этот
файл не "закроет". Термины "закрыть" и "открыть" файл еще раз
указывают на связь с традиционным делопроизводством. Папку с файлом
документов нужно открыть прежде, чем можно будет ознакомиться с
содержащимся в ней бумагами, и закрыть до того, как ее уберут снова
в бюро.
В рассматриваемом примере открытие файла происходит при его
создании. Если бы такой файл уже существовал, связь с ним была бы
установлена с помощью функции открытия файла (AH=0FH). Если
открытие файла произошло успешно, программма изменяет значения
некоторых полей блока FCB. В частности, длина записи должна быть
установлена равной 32 байт, так как по умолчанию DOS считает ее
равной 128 байт.
Часть программы с именем CHARACTER_LOOP передает в файл 26
записей. Определяющий символ каждой записи передается в буфер
области DTA оператором REP STOSB. Отдельные записи передаются на
диск с помощью функции последовательной записи (AH=0AH). Программа
также выполняет проверку на отсутствие ошибок.
Начиная с метки KEYBOARD_LOOP программа переходит от
формирования файла к запросу=коррекции записей в нем. В данном
примере используется буферированный ввод с клавиатуры,
поддерживаемый DOS. Это позволяет пользователю вводить строку из
Содержание Назад Вперед