CodeNet / Языки программирования / Ассемблер / СПРАВОЧНИК по системе программирования ТУРБО АССЕМБЛЕР 2.0
СПРАВОЧНИК по системе программирования ТУРБО АССЕМБЛЕР 2.0
Параметры командной строки
-----------------------------------------------------------------
Необязательные параметры командной строки позволяют вам уп-
равлять поведением Ассемблера, а также тем, какую информацию он
выводит на экран, в листинг и объектный файл. В Турбо Ассемблере
предусмотрены некоторые параметры, которые не выполняют никаких
действий, а используются только для совместимости текущей версии
TASM с предыдущими версиями MASM (макроассемблер фирмы
Microsoft):
/B Задает размер буфера
/V Выводит на экран дополнительную статистику
Вы можете задавать параметры, представляющие собой любую
комбинацию букв в верхнем и нижнем регистре. Кроме того, парамет-
ры можно задавать в любом порядке (кроме параметров /I и /J), они
будут при этом обрабатываться последовательно. При использовании
параметра /D нужно быть внимательным: идентификаторы надо опреде-
лить до того, как они будут использованы в последующих параметрах
/D.
Примечание: С помощью директив, указанных в вашем ис-
ходном коде, вы можете отменить эквивалентные им параметры
Ассемблера.
На Рис. 3.1 (см. выше) приведен список параметров Турбо Ас-
семблера. Далее эти параметры описаны подробно (их можно также
задавать буквами в нижнем регистре).
Параметр /A
-----------------------------------------------------------------
Функция: Задает упорядочивание сегментов по алфавитному по-
рядку.
Синтаксис: /A
Примечания: Параметр /A указывает Турбо Ассемблеру, что сег-
менты в объектном файле должны быть размещены в алфавитном поряд-
ке. Это эквивалентно использованию в исходном коде директивы
.ALPHA.
Этим параметром обычно приходится пользоваться тогда, когда
вы хотите ассемблировать исходный файл, написанный для ранних
версий ассемблеров фирм Microsoft или IBM.
Параметр /S изменяет действие данного параметра на обратное,
сохраняя используемое по умолчанию последовательное упорядочива-
ние сегментов.
Если в исходном файле вы задаете с помощью директивы .SEQ
последовательное упорядочивание сегментов, то она отменит дей-
ствие параметра /A, задаваемого в командной строке.
Пример:
TASM /A TEST1
Данная командная строка создает объектный файл TEST1.OBJ,
сегменты которого упорядочиваются в алфавитном порядке.
Параметр /B
-----------------------------------------------------------------
Синтаксис: /B
Примечания: Параметр /B используется только в целях совмес-
тимости с другими версиями. Он не приводит ни к каким действиям и
не оказывает влияния на ассемблирование.
Параметр /C
-----------------------------------------------------------------
Функция: Разрешает включать в листинг перекрестные ссылки.
Синтаксис: /C
Примечания: Параметр /C разрешает включение в файл листинга
информации о перекрестных ссылках. Турбо Ассемблер включает ин-
формацию о перекрестных ссылках в таблицу идентификаторов в конце
файла листинга. Чтобы получить информацию о перекрестных ссылках,
вам нужно также явно задать в командной строке генерацию файла
листинга или использовать для разрешения формирования файла лис-
тинга параметр /L.
Для каждого идентификатора в перекрестных ссылках указывает-
ся строка, в которой он определен и все строки, где имеется на
него ссылка.
Параметр /D
-----------------------------------------------------------------
Функция: Определяет идентификатор.
Синтаксис: /Dидентификатор[=значение или выражение]
Примечания: Параметр /D определяет идентификатор для исход-
ного файла, точно также, как если бы он определялся на первой
строке исходного файла с помощью директивы =. В командной строке
этот параметр можно использовать любое число раз.
Вы можете только определить идентификатор, равный другому
идентификатору, или постоянному значению. Справа от знака ра-
венства (=) не допускается использовать выражение с операциями.
Например, допустимо /DX=9 и /DX=Y, но параметр /DX=Y-4 не допус-
кается.
Пример:
TASM /DMAX=10 /DMIN=2 TEST1
В данной командной строке определяются два идентификатора
MAX и MIN, на которые могут ссылаться другие операторы в исходном
файле TEST1.ASM.
Параметр /E
-----------------------------------------------------------------
Функция: Генерирует инструкции эмуляции работы с плавающей
точкой.
Синтаксис: /E
Примечания: Параметр /E указывает Турбо Ассемблеру, что нуж-
но генерировать инструкции работы с плавающей точкой, которые бу-
дут выполняться с помощью программного обеспечения (эмулятора
операций с плавающей точкой). Используйте этот параметр, если
ваша программа содержит библиотеку эмуляции работы с плавающей
точкой, которая эмулирует функции арифметического сопроцессора
80х87.
Обычно этот параметр следует использовать только в том слу-
чае, если ваш модуль на Ассемблере является частью программы, на-
писанной на языке высокого уровня, в которой используется библио-
тека эмуляции работы с плавающей точкой (эмуляцию операций с пла-
вающей точкой поддерживают Турбо Си, Турбо Паскаль, Турбо Бейсик
и Турбо Пролог). Вы не можете просто скомпоновать программу на
Ассемблере с библиотекой эмуляции, так как предполагается, что
библиотека должна инициализироваться начальным кодом компилятора.
Параметр /R изменяет действие данного параметра на обратное,
разрешая ассемблирование действительных инструкций с плавающей
точкой, которые могут выполняться арифметическим сопроцессором.
Если в исходной файле вы используете директиву NOEMUL, то
она отменит действие параметра /E в командной строке.
Параметр командной строки /E оказывает то же действие, что и
использование в начале исходного файла директивы EMUL, и эквива-
лентен параметру командной строки /JEMUL.
Пример:
TASM /E SEGANT
TCC -f TRIG.C SEGANT.OBJ
Параметр /H или /?
-----------------------------------------------------------------
Функция: Выводит на экран дисплея справочную информацию.
Синтаксис: /H или /?
Примечания: Параметр /H указывает Турбо Ассемблеру, что на
экран дисплея нужно вывести справочную информацию, описывающую
синтаксис командной строки. Эта справочная информация включает в
себя список параметров, а также различные задаваемые имена фай-
лов. Параметр /? делает то же самое.
Параметр /I
-----------------------------------------------------------------
Функция: Задает маршрут доступа к включаемому файлу.
Синтаксис: /Iмаршрут
Примечания: Параметр /I указывает Турбо Ассемблеру, где нуж-
но искать файлы, включаемые в исходный файл по директиве INCLUDE.
В командной строке можно указать несколько параметров /I (их чис-
ло ограничено только размерами оперативной памяти).
Когда Турбо Ассемблер обнаруживает директиву INCLUDE, то
место, где он будет искать включаемый файл определяется тем, яв-
ляется ли имя файла в директиве INCLUDE маршрутом доступа к ката-
логу, или это просто имя файла.
Если вы в качестве части имени файла указываете маршрут, то
сначала делается попытка поиска по данному маршруту, а затем Тур-
бо Ассемблер выполняет поиск в каталогах, заданных в параметрах
командной строки /I (в том порядке, как они указаны в командной
строке). Затем он ищет файл по всем каталогам, заданным в пара-
метрах /I файла конфигурации.
Если в спецификации имени файла вы не указываете маршрут, то
Турбо Ассемблер выполняет сначала поиск в каталогах, заданных в
параметрах командной строки /I, затем - в каталогах, заданных в
параметрах /I файла конфигурации, и, наконец, в текущем каталоге.
Пример:
TASM /I\INCLUDE /ID:\INCLUDE TEST1
Если исходный файл содержит оператор:
INCLUDE MYMACS.INC
то Турбо Ассемблер сначала ищет файл \INCLUDE\MYMACS.INC, затем
D:\INCLUDE\MYMACS.INC. Если он еще не нашел файл, то файл
с именем MYMACS.INC ищется в текущем каталоге. Если бы в исходном
файле содержался оператор:
INCLUDE INCS\MYMACS.INC
то Турбо Ассемблер сначала искал бы включаемый файл
\INCS\MYMACS.INC, затем \INCLUDE\MYMACS.INC, и, наконец
D:\INCLUDE\MYMACS.INC.
