Turbo Assembler 3.0. Руководство пользователя



              

Директива MODEL


Директива MODEL позволяет вам задать для программы несколько стандартных моделей сегментации. Вы можете также использовать ее для задания языка для процедур программы.

Директива MODEL имеет следующий синтаксис:

MODEL [модификатор_модели] модель_памяти [имя_сегмента_кода] [,[модификатор_языка] язык] [, модификатор_модели]

В режиме MASM используется тот же синтаксис, но директива имеет вид .MODEL.

"Модель_памяти" и "модификатор_модели" определяют модель сегментации памяти, используемую в программе.

В применяемых в Турбо Ассемблере стандартных моделях можно использовать специальные сегменты для:

- кода;

- инициализированных данных;

- неинициализированных данных;

- инициализированных данных дальнего типа;

- неинициализированных данных дальнего типа;

- констант;

- стека.

Сегмент кода содержит обычно код модуля (но при необходимос- ти может также содержать данные). В целях совместимости с языками высокого уровня инициализированные данные и константы интерпрети- руются по-разному. Они содержат такие данные, как сообщения, ког- да важно начальное значение. Неинициализированные данные и стек содержат данные, начальные значения которых не существенны. Ини- циализированные данные дальнего типа (far) - это неинициализиро- ванные данные, которые не являются частью стандартного сегмента данных, и которые доступны только при изменении значения сегмент- ного регистра. Это же относится к неинициализированным данным дальнего типа, только вместо инициализированных данных здесь со- держатся неинициализированные данные.

Специальные модели памяти задают, как можно ссылаться на эти сегменты с помощью сегментных регистров, и как они объединяются в группы (если это имеет место). При написании программы вы должны хранить эти сегменты отдельно, независимо от размера программы. Затем для объединения сегментов в группы вы можете выбрать соот- ветствующую модель. Если вы храните эти сегменты раздельно, и ва- ша программа увеличивается в размере, вы можете использовать большую модель.




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