Синтаксис: /ML


Примечания: Параметр /ML указывает Турбо Ассемблеру, что во всех идентификаторах нужно различать буквы разного регистра (строчные и прописные). Обычно строчные и прописные буквы рассматриваются, как эквивалентные, поэтому имена ABCxyz, ABCXYZ и abcxyz обозначают один и тот же идентификатор. Если вы задаете параметр /ML, то эти три идентификатора будут считаться различными. Тем не менее, даже после задания параметра /ML ключевые слова Ассемблера можно вводить как в верхнем, так и в нижнем регистре. Ключевые слова представляют собой идентификаторы, встроенные в Ассемблер, которые имеют специальное значение (мнемоники инструкций, директивы и операторы).

Пример:

TASM /ML TEST1

где TEST1.ASM содержит следующие операторы:

ABC DW 1

abc DW 0 ; это не дублирующий идентификатор

Mov Ax,[Bp] ; в ключевых словах допускается использо

; вать разный регистр

Параметр /MU

Функция: Преобразует идентификаторы в верхний регистр.

Синтаксис: /MU

Примечания: Параметр /MU указывает Ассемблеру, что нужно игнорировать регистр во всех идентификаторах. По умолчанию в Турбо Ассемблере задано, что в идентификаторах все буквы нижнего регистра должны преобразовываться в верхний регистр (если это не отменено с помощью директивы /ML).

Пример:

TASM /MU TEST1

При этом все идентификаторы будут преобразованы в верхний регистр (что задано по умолчанию):

EXTRN myfunc:NEAR

call myfunc ; не важно, как была

; определена функция:

; MYFUNC, Myfunk,…

Параметр /MV#

Функция: Задает максимальную длину идентификаторов.

Синтаксис: /MV#

Примечания: Данный параметр задает максимальную длину идентификаторов, которые будет различать TASM. Например, при задании параметра /mv3 TASM будет интерпретировать идентификаторы ABCC и ABCD, как один и тот же идентификатор.

Параметр /MX

Функция: Задает различимость на на строчные и прописные буквы (верхний и нижний регистр) во внешних и общедоступных идентификаторах.

Синтаксис: /MX

Примечания: Параметр /MX сообщает Турбо Ассемблеру, что различать регистр букв нужно только во внешних (External) и общедоступных (Public) идентификаторах. Все другие идентификаторы в исходном файле будут интерпретироваться, как набранные в верхнем регистре.

Использовать данную директиву следует при вызове процедур из других модулей, которые ассемблировались или компилировались так, что сохранилось различие в строчных и прописных буквах (например, модулей, которые компилировались в Турбо Си).

Пример:

TASM /MX TEST1

где TEST1 содержит следующие исходные строки:

EXTRN Cfunc:NEAR

myproc PROC NEAR

call Cfunc

.

.

.

Параметр /N

Функция: Подавляет в файле листинга таблицу идентификаторов.

Синтаксис: /N

Примечания: Параметр /N показывает, что в конце файла листинга вы не хотите использовать обычную таблицу идентификаторов. Обычно в конце файла листинга содержится полная таблица идентификаторов, где показаны все идентификаторы, их имена и значения.

Вы должны задать файл листинга либо явным образом (в командной строке), либо с помощью параметра /L. В противном случае параметр /N не приведет ни к каким действиям.

Пример:

TASM /L /N TEST1
Параметр /P

Функция: Проверяет наличие «некорректного» кода в защищенном режиме.

Синтаксис: /P

Примечания: Параметр /P определяет, что вы хотите получить предупреждение при любой инструкции, генерирующей в защищенном режиме «некорректный» (impure) код. Инструкции, перемещающие данные в память путем переопределения регистра CS: в защищенном режиме рассматриваются, как некорректные, поскольку они в защищенном режиме могут работать неверно, если не принять специальных мер.

Этот параметр нужно использовать только в том случае, если вы пишете программу, выполняемую на процессоре 80286 или 80286 в защищенном режиме.

Пример:

TASM /P TEST1

где TEST1 содержит следующие операторы:

.286P

CODE SEGMENT

temp DW ?

mov CS:temp,0 ; в защищенном режиме может выпол

; няться некорректно

Загрузка...