Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

End begin




Cseg ends

Begin endp

Ret

Promt mes2; вывод второго сообщения

Promt mes1; вывод первого сообщения

Begin proc far

Data ends

Stack ends

Endm

Int 21h

Mov ah, 09h

Lea dx, mes

Promt macro mes

Пример программы, использующей макрокоманды

Особенности трансляции при получении объектного модуля

Если в тексте программы указать имя (макрокоманду), то будет выполнен код макроопределения с учетом фактических параметров.

ENDM

 

1. Происходит вставка макрорасширений в то место программы, где находятся макрокоманды.

2. Формируется модуль с расширением.obj.

Длина самой программы может оказаться в несколько раз больше, чем исходной, т.к. в программу вставляются макрорасширения.

Где можно разместить макроопределение?

1. В тексте модуля, но до объявления сегментов.

2. В отдельном файле, который создает программист. Этот файл должен быть вставлен транслятором с помощью директивы INCLUDE <имя>.

3. Использование макробиблиотек.

 

stack segment para stack 'stack'

dw 32 dup(?)

data segment para 'data'

mes1 db 'test of macro', '$'

mes2 db 'assembler', '$'

cseg segment para 'code'




Поделиться с друзьями:


Дата добавления: 2013-12-12; Просмотров: 255; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.