ВУЗ:
Составители:
Запись операторов в ассемблер-программе выполняется в обычном
формате, принятом в программах для I8080[2,4,5 ]. Перечень
поддерживаемых ассемблером директив несколько отличается от
общепринятого. Ниже приводится полный перечень этих директив.
<имя> EQU <выражение> - прямое присвоение имени значения
выражения; вместо ключевого слова EQU может использоваться символ
'=';
END <выражение> или .END <выражение> - завершение исходного
модуля с назначением в качестве точки входа значения приведенного
выражения; если выражение отсутствует, то точка входа не будет
назначена;
.ENTRY <выражение> - явное назначение точки входа в программу;
ORG <выражение> - назначение нового значения счетчику размещения
ассемблируемой программы;
DB <выражение>, <выражение>,... - размещение данных в программе;
каждое значение выражений в строке этой директивы дает один байт;
байты размещаются в программе последовательно от текущего счетчика
размещения.
DW <выражение>, . . . - то же, что и директива DB, но размещаются
двухбайтовые слова;
.BYTE <выражение>, . . . - то же, что и директива DB;
.WORD <выражение>, . . . - то же , что и директива DW;
DS <выражение> - резервирование области памяти размером в
количество байт, заданных выражением;
.BLKB <выражение> - то же, что и DS;
.ASCII <строка> - размещение в программе текстовой строки; первый
значащий символ после мнемокода директивы (пробелы и табуляции
незначащие) рассматривается как разделитель и в памяти не
размещается; все символы строки, не равные разделителю размещаются в
программе;
.ASCIZ <строка> - то же, что и по директиве .ASCII, но за последним
размещаемым символом строки размещается байт 0.
Кросс-ассемблер поддерживает следующие операторы выражений:
'+' - сложение;
'-' - вычитание или унарный минус;
'*' - умножение;
'/' - деление;
'%' - взятие по модулю (остаток от деления левого операнда на
правый);
'&' - побитовое логическое И;
':' - побитовое логическое ИЛИ;
'<' - сдвиг левого операнда влево на число разрядов, заданное правым
операндом;
'!' - унарная поразрядная инверсия.
Все операции равноприоритетные. Вычисление производится слева
направо. Порядок вычисления может изменяться скобками.
Ассемблер распознает следующие виды констант:
'<символ>' - константа, равная коду символа в кавычках, например: 'А',
'3';
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »