Дипломированных специалистов «Информатика и вычислительная техника»


Директивы управления файлом листинга



Download 12,06 Mb.
Pdf ko'rish
bet183/357
Sana22.02.2022
Hajmi12,06 Mb.
#115195
TuriДиплом
1   ...   179   180   181   182   183   184   185   186   ...   357
Bog'liq
assembler uchebnik dlya vuzov 2-e izd YuRXUW1

Директивы управления файлом листинга
Ассемблер предоставляет ряд директив для управления содержимым файла лис-
тинга. Далее приведена их общая характеристика.
Общие директивы управления листингом призваны управлять видом файла ли-
стинга. Все директивы являются парными, это означает, что если одна директива
что-то разрешает, то другая, наоборот, запрещает.
в Директивы
и
и
определяют необходимость вывода в
файл листинга всех строк исходного кода (по умолчанию). Для запрета вывода
в файл листинга всех строк исходного кода необходимо использовать директи-
вы
или
В тексте программы их можно применять произвольное
количество раз, при этом очередная директива отменяет действие предыдущей.
Директивы
и
управляют выводом в файл листинга самих дирек-
тив управления листингом, в то время как директивы
и
и
влияют на полноту представления исходного кода в целом.
Директивы
и
определяют включение
или не включе-
ние
таблицы идентификаторов в файл листинга.
Директивы вывода текста включаемых файлов
и
регулируют
включение в файл листинга текста включаемых файлов (по директиве INCLUDE).
По умолчанию включаемые файлы записываются в файл листинга. Директива
запрещает вывод в файл листинга всех последующих включаемых фай-
лов, пока вывод снова не будет разрешен директивой
Директивы вывода блоков условного ассемблирования регулируют включение
блоков условной компиляции в листинг программы.
Директива
заставляет ассемблер выводить в файл листинга
все операторы условных блоков (в том числе с условием false). Директива
запрещает вывод в файл листинга блоков условного ас-
семблирования с условием false.
11
256


322 Глава 14. Макросредства языка ассемблера
Директива
переключает режимы вывода
и
Эту директиву можно использовать как отдельно, так и совместно
с директивами
и
Первая директива
которую обнару-
живает TASM,
вывод в файл листинга всех блоков условного ассем-
блирования. Следующая директива
запретит вывод этих блоков. С ди-
рективой
можно использовать ключ /х командной строки транслятора
TASM — в этом случае блоки условного ассемблирования будут сначала выво-
диться в файл листинга, но первая же директива
запретит их вывод.
Директивы вывода макрорасширений, как явствует из названия, управляют вы-
водом макрорасширений:
Директива
разрешает вывод в файл листинга всех макрорасши-
рений.
Директива
запрещает вывод всех операторов макрорасшире-
ния в файл листинга.
8 В трансляторе MASM можно использовать директиву
позволяющую вы-
водить в листинг только те макрорасширения, которые генерируют код или дан-
ные.
Итоги
9 Преимущества языка ассемблера связаны, в частности, с макросредствами. Как
говорят, если бы макросредств в нем не было, то их нужно было бы придумать.
л Макросредства — это основные инструменты модификации текста программы
на этапе ее трансляции. Принцип работы макросредств основан на
обработке, которая заключается в том, что текст, поступающий на вход
транслятора, перед собственно компиляцией подвергается преобразованию
и может значительно отличаться от синтаксически правильного текста, воспри-
нимаемого компилятором. Роль препроцессора в трансляторе TASM выполня-
ет макрогенератор.
Для того чтобы макрогенератор мог выполнить свою работу, текст программы
должен удовлетворять определенным требованиям. Макрогенератору необхо-
димо сообщить, на какие элементы исходного текста он должен реагировать
и какие действия должны быть произведены. Можно выделить несколько ти-
пов таких элементов.
Псевдооператоры
и = предназначены для присвоения некоторому выраже-
нию символического имени или идентификатора. Эти действия выполняет мак-
рогенератор, заменяя в последующем тексте программы символические имена
из правой части этих операторов строками из левой.
Макрокоманда — строка в исходной программе, которой соответствует специ-
альный блок — макроопределение. Макрокоманда может иметь аргументы, с по-
мощью которых можно изменять текст макроопределения. Макрогенератор,
встречая макрокоманду в тексте программы, корректирует текст соответствую-
щего макроопределения, исходя из аргументов этой макрокоманды, и вставля-


Итоги 323
ет его в текст программы вместо данной макрокоманды. Процесс такого заме-
щения называется макрогенерацией.
Условные директивы компиляции позволяют не просто модифицировать от-
дельные строки программы, но и, исходя из определенных условий, управлять
включением в загрузочный модуль отдельных фрагментов программы. Эти ди-
рективы наиболее эффективны для работы с аргументами, передаваемыми при
макрогенерации в макроопределения из макрокоманд, хотя отдельные дирек-
тивы есть смысл применять и вне макроопределений в любом месте про-
граммы.
Директивы генерации ошибок, подобно условным директивам, позволяют ана-
лизировать определенные условия в процессе трансляции программы и гене-
рировать ошибку по результатам анализа.
Для удобства формирования файла листинга компиляторы ассемблера предо-
ставляют в распоряжение программиста ряд директив. С помощью этих дирек-
тив можно довольно гибко изменять формат и полноту информации, выводи-
мой ассемблером в файл листинга.



Download 12,06 Mb.

Do'stlaringiz bilan baham:
1   ...   179   180   181   182   183   184   185   186   ...   357




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish