ORG 2500H ; Запись в счетчик команд значения (адрес) 2500Н
SUB: LXI B, PRD ; Подпрограмма SUB – первая команда, запись в пару
; регистров двухбайтной переменной с именем PRD
RET ; Возврат к вызывающей программе.
Если в начальном тексте исходной программы отсутствует псевдокоманда ORG,
то в большинстве АССЕМБЛЕРОВ начальный адрес автоматически устанавливается 0.
Псевдокоманда EQU (приравнять) используется для присваивания некоторым
символам, указанным в поле метки, значений (данных, адресов), задаваемых в поле
операндов. Эта команда позволяет программисту писать исходную программу в сим-
волической форме без указания фактических числовых значений констант, парамет-
ров, адресов и т. п. В некоторых случаях программист, разрабатывая программу, не
знает заранее какие адреса или данные потребуется задать в программе, в связи
с отсутствием данных о конфигурации аппаратных средств используемого МПУ
(МК). Программа при этом может быть написана и отлажена в символической
форме, а фактические данные подставляются в нее позже. Эта команда EQU также
полезна в ситуациях, когда некоторая величина используется в программе
несколько раз. Например, если некоторое значение используется в 10 различных
местах программы, то целесообразно использовать символическое обозначение,
например COUNT, и определять значение величины COUNT c помощью команды
EQU. Это позволит во время отладки программы, при необходимости изменить
величину COUNT, изменить лишь строку с псевдокомандой EQU, а не вносить
изменения во всех местах программы.
Рассмотрим еще один пример использования псевдокоманды EQU для про-
граммы на языке АССЕМБЛЕРА МП К580ВМ80А:
PORTB EQU FX ; Присвоение фиктивного адреса порту А ППА
PORTB EQU FY ; Присвоение фиктивного адреса порту В ППА
MVI A, 02H ; Загрузка в аккумулятор данных для вывода
OUT PORTA ; Вывод данных в порт А ППА
OUT PORTB ; Вывод данных в порт В ППА.
В приведенном примере показана ситуация, когда программист не зная адре-
сов портов А и В, написал программу с использованием фиктивных адресов
FX, FY. Когда станут известны фактические адреса портов А и В, то их
можно будет записать в псевдокомандах EQU вместо фиктивных адресов.
Псевдокоманда DB или DEFB (определение байта) используется для опреде-
ления значений элементов данных и для засылки их в соответствующую область
памяти. Эта команда предназначена для образования 8 -битных значений и обычно
применяется для формирования таблиц данных или для установки начальных зна-
чений флагов в программе. Например, таблица, состоящая из четырех чисел;
7АН, 37Н, 98Н, ЕВН, должна быть размещена в памяти, начиная с адреса
1А00Н, то в программе необходимо написать следующие псевдокоманды:
ORG 1А00H ; Задание адреса таблицы
TABLE: DB 7AH, 37H, 98H, 0EBH ; Задание значений таблицы.
В псевдокоманде DB элементы таблицы данных отделяются друг от друга запя-
тыми. После ассемблирования этих псевдокоманд, в машинной программе, в задан-