Assembler для начинающих


         

Блок управления файлом (FCB) - часть 11


    осущкствляется редактирование записи: 31 символ записи, начиная со
    второго, заменяется на значение, которое вводится с клавиатуры.
    Выполнение программы завершается при вводе с клавиатуры символа
    "$".
 
      В этом примере моделируется справочная база данных. На первом
    этапе программа осуществляет формирование этой базы данных. На
    втором этапе выполняется обработка произвольных запросов к базе
    данных и редактирование ее содержимого. Хотя любая реальная
    программа управления базой данных гораздо сложнее, чем приведенный
    здесь пример, однако он является хорошей иллюстрацией основных
    функций, относящихся к работе с файлами.
 
      Программа, приведенная на Фиг. 5.6, - это файл типа .COM. В
    следующем разделе мы обсудим различие между этим файлом и файлом
    типа .EXE. Использование в данном примере файла типа .COM позволяет
    для завершения работы программы воспользоваться прерыванием INT
    20H. В случае файла типа .COM начало программы в сегменте должно
    иметь смещение 100H. Первые 100H байт программного сегмента
    называются программным префиксом PSP и предназначены для хранения
    некоторых специальных данных, которые используются программной,
    написанной на языке ассемблера.
 
      Смещение блока FCB в сегменте равно 05CH, и использование в
    программе этого на первый взгляд произвольного адреса имеет
    определенные основания. Запись информации в данный блок FCB
    осуществляется командным процессором, входящим в состав DOS. После
    того, как пользователь вызвал программу, указав ее имя, DOS
    просматривает оставшуюся часть командной строки в поисках имен
    файлов. Первое встретившееся в команде имя помещается в блок FCB,
    смещение которого равно 05CH. Если в командной строке будет еще
    одно имя, то оно запишется в блок FCB со смещением 06CH. Так как в
    нашеи примере фигурирует только один файл, то используют только
    блок FCB со смещением 05CH. Запуск описываемой программы



Содержание  Назад  Вперед