Описание шаблона структуры имеет следующий синтаксис:
имя_структуры STRUC <описание полей>имя_структуры ENDS |
Здесь <описание полей> представляет собой последовательность директив описания данных db, dw, dd, dq и dt.
Их операнды определяют размер полей и, при необходимости, начальные значения. Этими значениями будут, возможно, инициализироваться соответствующие поля при определении структуры.
Как мы уже отметили при описании шаблона, память не выделяется, так как это всего лишь информация для транслятора.
Местоположение шаблона в программе может быть поизвольным, но, следуя логике работы однопроходного транслятора, он должен быть расположен до того места, где определяется переменная с типом данной структуры. То есть при описании в сегменте данных переменной с типом некоторой структуры ее шаблон необходимо поместить в начале сегмента данных либо перед ним.
Рассмотрим работу со структурами на примере моделирования базы данных о сотрудниках некоторого отдела.
Для простоты, чтобы уйти от проблем преобразования информации при вводе, условимся, что все поля символьные.
Определим структуру записи этой базы данных следующим шаблоном:
worker struc ;информация о сотрудникеnam db 30 dup (' ') ;фамилия, имя, отчествоsex db 'м' ;пол, по умолчанию 'м' — мужскойposition db 30 dup (' ') ;должностьage db 2 dup(‘ ’) ;возрастstanding db 2 dup(‘ ’) ;стажsalary db 4 dup(‘ ’) ;оклад в рубляхbirthdate db 8 dup(‘ ’) ;дата рожденияworker ends |