Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Директивы описания процедуры



Процедура представляет собой последовательность команд, выполняющих в программе некоторую определенную функцию. Если процедура содержит команду RET, то она является подпрограммой. Начало процедуры отмечается директивой PROC, конец - ENDP.

формат: <имя> PROC [тип]

<имя> ENDP

Директивы помечены одним и тем же именем, которое является именем процедуры. Необязательный параметр [тип] при программировании для защищенного режима может принимать только значение NEAR(ближняя). Тип NEAR используется по умолчанию и означает, что к процедуре можно обратиться из текущего программного сегмента, а этот сегмент единственный.

2.6.6. Директивы определения данных

Простые типы данных на языке ассемблера описываются директивами DB, DW, DD,DQ, DT. Содержимое ячеек памяти определяется или резервируется как последовательность байтов, слов, двойных слов, слов четырёхкратной длины и последовательности десятибайтных участков памяти. Для понимания способа передачи данных функциям API наибольшее значение имеет один из вариантов описания сложных структур данных, реализуемый с помощью директивы STRUC. Структуры являются шаблонами именованных переменных, содержащие в себе другие переменные разных типов, именуемых полями. Формат директивы в режиме IDEAL:

STRUC <имя>

в режиме MASM:

<имя> STRUC

Затем следует описание полей с помощью директив определения простых типов данных. После описания последнего поля структуры следует директива ENDS. В режиме IDEAL в этой директиве можно указать имя структуры, в режиме MASM формат директивы: <имя> ENDS.

Структура не является переменной. Директивы DB, DW и другие, посредством которых определяются поля структуры, не резервируют памяти и ничего не записывают в код программы. Для использования структуры необходимо в сегменте данных программы зарезервировать место под её поля. Делается это следующим образом. Каждое описание переменной типа "структура" начинается с имени, за которым следует тип (имя) структуры, затем в угловых скобках следует список начального значения полей. Чтобы использовать начальные значения полей, определенные при описании структуры, скобки надо оставить пустыми. Например: в описании сегмента данных нашей программы имеется строка

wc WNDCLASS <?>.

Это означает, что мы используем переменную wc типа структуры WNDCLASS, поля которой не определены и будут заполняться в процессе выполнения программы. Сама структура определена в файле win32.inc, который включается в программы на стадии компиляции.





Дата публикования: 2015-10-09; Прочитано: 350 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...