Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / Турбо Ассемблер / Приложения /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Обзор синтаксических правил Турбо Ассемблера - Программирование от RIN.RU
Обзор синтаксических правил Турбо Ассемблера



Старшинство ключевых слов


Важно понимать, как Турбо Ассемблер распознает строки исходного текста. Это позволит вам избежать записи кода, который может привести к непредсказуемым результатам. Рассмотрим, например, следующий фрагмент программы:


NAME SEGMENT


Если вы записали эту строку, рассчитывая открыть сегмент с именем NAME, то будете разочарованы. Турбо Ассемблер распознает ключевое слово NAME раньше, чем SEGMENT, называя ваш код именем SEGMENT.


В общем случае определяет значение строки на основе первых двух символов строки. Самый левый символ находится в первой позиции, а символ справа от него находится во второй позиции.


Старшинство операций в режиме Ideal


В режиме Ideal применяются следующие правила старшинства операций:


  • Наивысший приоритет (приоритет 1) имеют все ключевые слова в первой позиции строки. Они проверяются первыми.

  • Ключевые слова на второй позиции строки имеют второй приорите и рассматриваются во вторую очередь.




Старшинство операций в режиме MASM


Правила синтаксического анализа строк в режиме MASM значительно более сложны, чем в режиме Ideal. Вместо двух здесь имеется три уровня приоритета:


  1. Наивысший приоритет (приоритет 1) присваивается отдельным ключевым словам в первой позиции (таким как NAME и %OUT).

  2. Следующий по старшинству приоритет (приоритет 2) имеют все идентификаторы, обнаруженные на второй позиции.

  3. Все другие ключевые слова в первой позиции имеют наименьший (третий) приоритет.




Примечание: Внутри определений структур Турбо Ассемблер интерпретирует ключевые слова приоритета 1 как приоритет 3. В этом случае ключевые слова приоритета 2 имеют высший приоритет.


Например, в следующем фрагменте кода:


NAME SEGMENT


NAME - это ключевое слово первого приоритета, а SEGMENT - ключевое слово второго приоритета. Таким образом, Турбо Ассемблер будет интерпретировать эту строку, как директиву NAME, а не как директиву SEGMENT. В другом примере:


MOV INSTR,1


MOV - ключевое слово приоритета 3, а INSTR - ключевое слово приоритета 2. Таким образом, Турбо Ассемблер интерпретирует эту строку как инструкцию INSTR, а не как инструкцию MOV (как вы можете предполагать).


Ключевые слова и предопределенные идентификаторы


В данном разделе приведен полный перечень всех ключевых слов Турбо Ассемблера. Значение в скобках после ключевых слов указывают их приоритет (1 или 2) в режиме MASM. Приоритет для ключевых слов указан только, если он имеет значение 1 или 2. Для всех других ключевых слов подразумевается приоритет 3. Турбо Ассемблер распознает ключевые слова только в том случае, если он находит их. В режиме MASM ключевые слова приоритета 1 или 3 всегда находятся в первой позиции, а ключевые слова приоритета 2 - во второй позиции. Символ M после ключевого слово указывает, что оно допустимо только для режима MASM, а I показывает ключевое слово, доступное только в режиме Ideal. Если буква не указана, то ключевые слова работают в обоих режимах. Номер после ключевого слова показывает приоритет.


<<<  НазадВперед  >>>
 1  2  3  4 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Замечания по программированию

Вопросы совместимости

Утилиты Турбо Ассемблера

Сообщения об ошибках

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь