При написании программ для микропроцессора Intel 8080, которые предполагается ассемблировать при помощи команды ASM, необходимо соблюдать определенные требования относительно формата исходного текста программы. Эти требования не обязательно совпадают с требованиями, предъявляемыми другими версиями языка ассемблера для микропроцессора Intel 8080. Формат исходной строки. В языке ассемблера каждая исходная строка (предложение) может содержать от одного до пяти полей. Эти поля (группы символов) отделяются друг от друга при помощи пробелов или символов табуляции. Формат этих полей следующий:
Программа ’’ASM” расставляет ограничители табуляции в каждой восьмой позиции вдоль командной строки. Таким образом, ограничители табуляции расставляются в позициях 1,9, 17, 25, 33 и т. д.
Каждое из указанных выше пяти полей описывается в следующих разделах:
1. Номера строк. Номера строк представляют собой целые десятичные числа и являются необязательным полем исходной строки. Если номера присутствуют, то они должны быть расположены в начале строки. Номера строк являются только справками для программиста. В процессе ассемблирования они игнорируются.
2. Метки. Метка является идентификатором (символическим именем), который используется для представления некоторого адреса или конкретного значения. Метка может быть длиной от 1 до 16 символов и должна оканчиваться двоеточием (”:”). Для облегчения чтения исходного текста в метке можно использовать знак денежной единицы (”0”). Все символы ”Q”, обнаруженные в поле метки, программа ’’ASM” игнорирует. Этот символ не рассматривается как составной элемент символического имени. Метки являются необязательными элементами для всех операторов за исключением директив EQU (приравнять) и SET. Этим двум директивам всегда должна предшествовать метка. Существует несколько зарезервированных слов, которые нельзя использовать в поле метки, поскольку они имеют другое значение. Этими словами являются:
а) Все мнемонические обозначения команд микропроцессора Intel 8080.
б) Все имена регистров: А, В, С, D, Е, Н, L, М, SP и PSW.
в) Все директивы программы ’’ASM”: ORG, EQU, SET, DB, DS, DW, IF, ENDIF и END.
3. Операция. Поле операции должно присутствовать в каждой исходной строке. Оно является обязательным. Это поле может содержать или мнемоническое обозначение команды микропроцессора Intel 8080 или директиву программы ’’ASM”.
4. Операнды. В зависимости от заданной операции поле операнда может быть либо пустым, либо содержать один или два операнда. В качестве операнда можно использовать константу, метку или выражение. Директивы программы ’’ASM” в основном требуют наличия одного или двух операндов в этом поле.
5. Комментарии. Поле комментария может быть использовано программистом для описания функции соответствующего оператора. Это поле не является обязательным, но если оно используется, то должно начинаться с точки с запятой (”; ”). Когда программа ’’ASM” обнаруживает в исходной строке точку с запятой, она игнорирует весь расположенный после нее текст и рассматривает его как комментарий.