различных полей записи DATE_WORD имеют
различных полей записи DATE_WORD имеют в программе смысл и могут
использоваться как параметры при сдвиге и маскировании.
То же самое верно и для оператора STRUC. Определение структуры
задает для ассемблера значения смещений, даже если вы не вызываете
затем эту структуру для формирования области данных. Вы можете
воспользоваться этим для размещения блока FCB по умолчанию по
адресу 05CH в префиксе программного сегмента. Так как блок FCB
существует всегда, то нет необходимости использовать эту структуру
для генерации соответствующей области данных. Программы приведенные
на Фиг. 6.16 и 6.15, почти идентичны, за исключением некотрых
деталей. В программе на Фиг. 6.16 блок FCB определяется не
последовательностью команд типа DEFINE, а оператором STRUC.
Обратите внимание, что при ассемблировании данной программы не
называется ни запись DATE_WORD, ни структура FCB: они служат лишь
для задания смещений в области данных.
Microsoft (R) Macro Assembler Version 5.00 1/1/80 04:03:49
Фиг. 6.16 Структуры и записи Page 1-1
PAGE ,132
TITLE Фиг. 6.16 Структуры и записи
DATE_WORD RECORD YEAR:7,MONTH:4,DAY:5
FCB STRUC
0000 00 DRIVE DB 0 ; Номер устройства
0001 20 20 20 20 20 20 20 FILE_NAME DB ' ' ; Имя файла
Фиг. 6.16 Структуры и записи (начало)
20
0009 20 20 20 FILE_EXT DB ' ' ; Тип файла
000C 0000 CURRENT_BLOCK DW 0 ; Номер текущего блока
000E 0080 RECORD_SIZE DW 80H ; Логический размер записи
Содержание Назад Вперед