Программирование игр для Windows. Советы профессионала


Общий вид ассемблерной функции - часть 2


·         Модель MEDIUM имеет один 64-килобайтный сегмент для данных и несколько сегментов для кода;

·         Модель LARGE имеет несколько сегментов как для кода, так и для данных;

·         Модель HUGE разрешает данным быть больше, чем 64К,но в остальном полностью похожа на модель LARGE.

Чаще всего мы будем использовать модели памяти MEDIUM и LARGE.

§          Следующая директива — PUBLIC. Она говорит MASM, что следующее имя будет экспортировано, то есть станет «видимо» из других модулей;

§          Теперь мы переходим к началу самой функции. В ассемблере функция начинается с директивы PROC, которая следует сразу за именем функции;

§          В этом месте мы находимся внутри исполняемой части кода. Первые две инструкции устанавливают стек таким образом, что процедура получает доступ к параметрам, передаваемым через стек. К этому мы еще не раз вернемся;

§          В конце процедуры мы очищаем стек;

§          В конце каждой процедуры ставится ключевое слово ENDP;

§          В одном блоке мы можем иметь сколько угодно процедур, но надо помнить, что самой последней должна быть директива END. Она сообщает ассемблеру об окончании программы.

Тема следующего разговора - это передача параметров. Наши ассемблерные функции не были бы так полезны, если б мы не имели возможности обмениваться с ними информацией,




Начало  Назад  Вперед