CodeNet / Языки программирования / Ассемблер / СПРАВОЧНИК по системе программирования ТУРБО АССЕМБЛЕР 2.0
СПРАВОЧНИК по системе программирования ТУРБО АССЕМБЛЕР 2.0
Параметр /J ----------------------------------------------------------------- Функция: Определяет директиву инициализации Ассемблера. Синтаксис: /Jдиректива Примечания: Параметр /J позволяет вам определить директиву, которая будет ассемблироваться перед первой строкой исходного файла. "Директива" может представлять собой любую директиву Турбо Ассемблера, не требующую аргументов, например, .286, IDEAL, %MACS, NOJUMP и т.д. Полное описание директив Турбо Ассемблера содержится в "Справочном руководстве" в Главе 3. В командной строке вы можете указать более одного параметра /J. При этом они будут обработаны слева направо. Пример: TASM /J.286 .JIDEAL TEST1 При этом ассемблируется файл TEST1.ASM с разрешенными инст- рукциями процессора 80286 и разрешением синтаксического анализа выражений в режиме IDEAL. Параметр /KH ----------------------------------------------------------------- Функция: Задает максимально допустимое число идентификато- ров. Синтаксис: /KHnидентификаторов Примечания: Параметр /KH задает максимально допустимое число идентификаторов, которое может содержать программа. Если вы не используете данный параметр, ваша программа может содержать толь- ко до 8192 идентификаторов. Использование этого параметра позво- ляет увеличить число идентификаторов до значения "nидентификато- ров" (это значение не должно превышать 32768). Используйте данный параметр, если при ассемблировании прог- раммы вы получаете сообщение "Out of hash space" (буферное прост- ранство исчерпано). Данный параметр можно также использовать для уменьшения об- щего числа идентификаторов до значения, меньшего назначенного по умолчанию (8192). Это позволит освободить некоторое количество памяти, что может оказаться полезным, когда вы пытаетесь ассем- блировать программу, а у вас не хватает памяти. Пример: TASM /KH10000 BIGFILE Параметр /KS ----------------------------------------------------------------- Функция: Данный параметр задает максимальный размер строко- вого пространства Турбо Ассемблера. Синтаксис: /KHkбайт Примечания: Обычно размер строки определяется автоматически и настраивать его не требуется. Однако если у вас имеется исход- ный файл, который приводит к сообщению "Out of string space" (не хватает строкового пространства), то с помощью данного параметра вы можете увеличить строковое пространство. Попытайтесь начать со значения 100 и увеличивать его, пока ваша программа не будет ас- семблироваться без ошибки. Максимально допустимое значение (в ки- лобайтах) - 255. Пример: TASM /KS150 SFILE Параметр /L ----------------------------------------------------------------- Функция: Генерирует файл листинга. Синтаксис: /L Примечания: Параметр /L указывает, что вы хотите создать файл листинга, даже если вы его не задаете в командной строке явно. Файл листинга имеет то же имя, что и исходный файл, и рас- ширение .LST. Пример: TASM /L TEST1 Данная командная строка приводит к созданию файла листинга с именем TEST1.LST. Параметр /LA ----------------------------------------------------------------- Функция: Показывает в исходной файле код интерфейса с языком высокого уровня. Синтаксис: /LA Примечания: Параметр /LA указывает Турбо Ассемблеру, что в файле листинга нужно отразить весь генерируемый код, включая код, который генерируется в результате директивы языка высокого уровня .MODEL. Пример: TASM /LA FILE1 Параметр /M ----------------------------------------------------------------- Функция: Задает максимальное число проходов Ассемблера. Синтаксис: /M[число_проходов] Примечания: Обычно Турбо Ассемблер работает, как однопроход- ный ассемблер. Необязательный параметр /m позволяет вам задать максимальное число проходов, которые Ассемблер должен выполнять в процессе ассемблирования. Турбо Ассемблер TASM автоматически оп- ределяет, что он может выполнить меньше заданного числа проходов. Если вы не указываете явно число проходов, то по умолчанию ис- пользуется значение 5. Некоторые модули содержат конструкции, которые правильно ас- семблируются только при выполнении двух проходов. Если не разрешено выполнять несколько проходов, то такой модуль приведет к генерации по крайней мере одного предупреждающего сообщения: "Pass-dependent construction encountered" (обнаружена конструкция, зависящая от прохода) Если указан параметр /m, то Турбо Ассемблер будет правильно ассемблировать такой модуль, но не будет оптимизировать код прог- рамму, удаляя операции NOP (независимо от указанного числа прохо- дов). В этом случае выводится сообщение: "Module is pass dependent - compatibility pass was done" (модуль зависит от прохода - выполнен проход для совмести- мости) Пример: TASM /M2 TEST1 Эта команда указывает TASM, что ассемблирование модуля TEST1 нужно выполнять в два прохода. Параметр /ML ----------------------------------------------------------------- Функция: Интерпретирует различие в регистрах букв идентифи- каторов. Синтаксис: /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,...