допустимая_строка ::= пропуск допустимая_строка знак_пунктуации допустимая_строка числовая_строка допустимая_строка идентификатор_строки допустимая_строка нуль
пропуск ::= символ_пробела пропуск символ_пробела
символ_пробела ::= все управляющие символы, символы > 128, ' '
идентификатор_строки ::= идентификатор_символа идентификатор_строки_2
идентификатор_строки_2 ::= идентификатор_символа_2 идентификатор_строки_2 нуль
идентификатор_символа ::= $,%,_,?,символы алфавита
идентификатор_символа_2 ::= идентификатор_символов плюс цифры
числовая_строка ::= числ_строка стр_строка
числ_строка ::= цифры буквенно_цифровые_символы цифры'.'цифры показатель_степени цифры показатель_степени ; Только в режиме MASM в директи- ; вах DD, DQ и DT
цифры ::= цифра цифры цифра
цифра ::= от 0 до 9
алфавитно-цифровые_символы ::= цифра буквенно_цифровые_символы буква буквенно_цифровые_символы нуль
буква ::= буквы алфавита
показатель_степени ::= Е+цифры Е-цифры Ецифры нуль
стр_строка ::= строка в двойных кавычках; кавычка, вводимая двумя кавычками
знак_пунктуации ::= любой символ, отличный от следующих: символ_пробела,идентификатор_символ,'"',"'" или цифры
Символ точки (.) трактуется различным образом в режиме MASM и в режиме Ideal. Этот символ не требуется указывать в числах с плавающей запятой в режиме MASM. Точка не может входить в состав символического имени в режиме Ideal. В режиме MASM с этого симво- ла иногда начинаются символические имена, кроме того, знак пунк- туации используется иногда в качестве селектора поля структуры.
Правила интерпретации точки (.):
1. В режиме Ideal точка всегда интерпретируется как знак пунктуации.
2. В режиме MASM точка трактуется как первый символ иденти- фикатора в следующих случаях:
а). Когда она является первым символом в строке и в ряде некоторых других специальных случаев, например, в составе внешних (EXTRN) и общих (PUBLIC) символичес- ких имен, она присоединяется к следующему за ней сим- волическому имени, если следующий за ней символ представляет собой идентификатор_символа_2, как он определен выше.
б). Если она не является первым символом в строке, или если результирующее имя идентификатора будет предс- тавлять собой определенное имя идентификатора, тогда точка присоединяется к началу следующего за ней иден- тификатора.