Д И А Л О Г
П Р О Г Р А М М И С Т О В
Обычно поле содержит не более двух операндов, разделяемых запятой.
Поле 5 — комментарии. Комментарии должен начинаться со знака
(точка с запятой) .Текст, записанный после
в процессе транс-
ляции программы игнорируется.
Константы, используемые при написании программ.
Числовые константы.
Числовые константы представляют собой целое число, записанное в
одной из следующих систем счисления: двоичная —последователь-
ность цифрО и 1 заканчивается символом “В”; восьмиричная — после-
довательность цифр, каждая из которых лежит в диапазоне от 0 до 7,
завершается символом “О” или ”Q"; десятичная — последовательность
цифр от 0 до 9, заканчивается символом “D”, который может отсутст-
вовать; шестнадцатиричная — последовательность цифр от 0 до 9 н
символов от А до F. Заканчивается символом “Н”. Шестнадцатиричная
константа обязательно должна начинаться с цифры. Если константа
начинается с 0, то символ “Н" в конце может отсутствовать.
Строковые константы.
Строковые константы представляют собой последовательность
символов длиной не более 64, заключенную в апострофы. Если по-
следовательность включает в себя апостроф, то его необходимо про-
дублировать (написать два раза). Значение строковой константы
соответствует кодам указанных в ней символов.
Выражения, допустимые при написании программ.
Поле операндов строки программы может содержать выражения,
включающие константы, символические имена н операторы. В вы-
ражениях могут применяться скобки. При ассемблировании произ-
водится вычисление значения выражения. Все вычисления произво-
дятся над шестнадцатибитными числами, и результат представляет-
ся также в виде шестнадцатибитного числа без знака.
Допустимые операторы:
X + V — арифметическое сложение;
X - Y — арифметическое вычитание;
X * Y — умножение;
X / Y — целочисленное деление;
X MOD Y — остаток от деления;
+ X — унарный плюс (обычно опускается);
- X — унарный минус;
NOT X —логическое отрицание (инверсия);
X AND Y — логическое умножение ("И");
X OR Y — логическое сложение СИЛИ");
X XOR Y — логическое сложение по модулю 2 ("исключающее ИЛИ");
X SHL Y — сдвиг значения X влево на число бит, указанное значением Y
(выдвинутые старшие разряды теряются, младшие заполняются нулями);
XSHRY — аналогично оператору SHL, но сдвиг производится вправо.
Й
ирективы ассемблера.
ирективы ассемблера не входят в число мнемонических инструк-
ций (команд) микропроцессора. Они используются для управления
процессом ассемблирования.
Формат написания строки, содержащей директиву, совпадает с
форматом строки с обычными операторами.
Директива ORG. Выражение, стоящее в поле операндов директи-
вы, указывает адрес в памяти, начиная с которого будут размещаться
результаты ассемблирования последующих операторов. Директив
DRG может быть любое количество. Если директива ORG имеет
метку, то ее значение будет равно указанному адресу.
Пример использования директивы:
BEGIN: ORGIOOH
Директива EQU. Поля метки и операндов для директивы EQU явля-
ются обязательными. В результате использования директивы метке
будет присвоено значение выражения, указанного в поле операнда.
Пример использования директивы:
BDOS EQU 5 ; СИМВОЛИЧЕСКОМУ ИМЕНИ BDOS
; ПРИСВАИВАЕТСЯ ЗНАЧЕНИЕ 5
Директива SET. Директива SET аналогична директиве EQU за иск-
лючением того, что значение, присваиваемое метке, может переназна-
чаться повторным применением директивы SET. Директива SET для
одной и той же метки может указываться в программе любое число раз.
Директива IF — директива условного ассемблирования. Если зна-
чение выражения, указанного в поле операндов директивы IF, истин-
но (не равно 0), то производится ассемблирование всех операторов,
указанных в теле директивы IF. Если значение выражения ложно
(равно 0), эти строки при трансляции программы пропускаются.
Директива ENDIF. Указывает конец участка условного ассембли-
рования текста программы, начало которого задается директивой IF.
Пример использования директив IF и ENDIF:
IF VAR1 AND (VAR2/VAR3) :ЕСЛИ ЗНАЧЕНИЕ ДАННОГО ВЫ-
РАЖЕНИЯ
MVI А,10000011В
;НЕ РАВНО НУЛЮ, УКАЗАННЫЕ
STA PORT3
;СТРОКИ АССЕМБЛИРУЮТСЯ
ENDIF
Директива DB. Директива определения байтов. В поле операнда
указывается список выражений, разделенных запятыми. При ассем-
блировании значения выражении будут последовательно занесены в
память в однобайтовом формате. Директива может иметь метку.
Пример использования директивы:
PRADR: DB 0DH.0AH,‘СТАРТОВЫЙ АДРЕСНО
Директива DW. Директива определения слова. Аналогична дирек-
тиве DB за исключением того, что значение каждого выражения
заносится в память в двухбайтовом формате. Отметим, что первым в
память заносится младший байт, а вторым старший.
Пример использования директивы:
ТАВ1 : DW OPRI ,OPR2,<)F800H
Директива DS. Директива определения области памяти. Использу-
ется для резервирования области памяти, размер которой (в байтах)
указывается в поле операнда. Директива может иметь метку.
Пример использования директивы:
SPACE: DS80H ^РЕЗЕРВИРОВАНИЕ 128 БАЙТ
КОМАНДА LOAD.
Команда LOAD используется для получения файла, содержащего
машинный код и предназначенного для непосредственного исполне-
ния. Исходным файлом является файл, содержащий шестнадцати-
ричный код и имеющий расширение .HEX, который создается про-
граммой ASM.COM. При выполнении команды будет создан файл,
имеющий то же имя и расширение .СОМ.
Параметром команды является спецификация файла, созданного
программой ASM.COM. Расширение файла можно не указывать. В
любом случае программа LOAD.COM будет искать файл с заданным
именем и расширением .HEX. В процессе выполнения команды на
экран выводится следующая информация:
FIRST ADDRESS — начальный адрес программы в шестнадцати-
ричном виде (обычно 0100);
LAST ADDRESS — адрес последнего байта программы;
BYTES READ — длина программы в байтах;
RECORDS WRITTEN — длина программы в 128-байтньгх записях.
КОМАНДА DUMP.
Программа DUMP.COM предназначена для вывода на экран содер-
жимого любого файла в шестнадцатиричном и символьном виде.
Параметром команды является спецификация файла, содержимое
которого необходимо просмотреть. В спецификации допускается ис-
пользование метасимволов. В этом случае на экран выдается содержи-
мое файла, имя которого первым совпало с указанной спецификацией.
При выводе дампа файла в левой колонке указывается смещение к
началу файла в шестнадцатиричном виде. В каждой строке печата-
ется содержимое шестнадцати байтов файла. В правой колонке пе-
чатается символьное представление байтов. При этом коды в диапа-
зоне от 0 до 1FH и от 7 FH до 0FFH отображаются в виде точки.
При работе программы можно использовать клавиши управления
выводом на экран Т5].
КОМАНДА SUBMIT.
Пакетные файлы в ОС СР/М .
Довольно часто в процессе работы с компьютером необходимо по-
вторять одни и те же команды СР/М для того, чтобы осуществить
некоторые периодически выполняемые действия. Операционная си-
стема СР/М позволяет записать нужную для этого последователь-
ность команд в специальный файл, называемый пакетным файлом.
Примером может служить процесс получения файла с расширением
СОМ, который содержит машинный код программы из файла, име-
ющего расширение .ASM, содержащего исходный текст программы
на языке ассемблера. Эта операция сопровождается запуском как
минимум двух команд ASM и LOAD. Кроме того, полезно удалить
файл с расширением .HEX, так как информация, которую он содер-
жит, становится бесполезной после его обработки программой
LOAD.COM. Для выполнения описанных действий необходимо каж-
дый S?EXtSvIPLE д д
2
ИатУРы следующие команды:
LOAD EXAMPLE
ERA EXAMPLE.HEX
Полученный список команд можно поместить с помощью тексто-
вого редактора в файл с расширением .SUB, получивший название
пакетного файла.
Выполнение пакетного файла.
Для осуществления выполнения пакетных файлов используется
npprpaMMaSUBMIT.COM.
В качестве параметра команды SUBMIT используется нмя пакетно-
го файла, которое может быть указано без расширения. Программа
SUBMIT.COM будет искать указанный файл с расширением .SUB.
Программа SUfiMIT.COM осуществляет анализ и преобразование
команд, записанных в пакетном файле, и создает на диске А: файл,
содержащий эти команды в требуемом операционной системой виде.
После завершения работы программы SUBMIT.COM. сама ОС СР/М
начинает выполнение команд из этого файла.
Файл, создаваемый при выполнении команды SUBMIT на диске А:,
имеет имя $$$.SUB. Это имя зарезервировано в ОС СР/М. Кроме
программы SUBMIT.COM. такой файл могут создавать некоторые
другие программы при необходимости выполнения команд операци-
онной системы средствами самой операционной системы. Примером
такой программы может служить графическая оболочка ОС СР/М,
использующая файл $$$.SOB для получения управления от ОС по
окончании выполнения запушенной команды.
После отработки файла $$$.SUB он удаляется автоматически.
Правила написания пакетных файлов.
Пакетный файл должен иметь нмя с расширением .SUB н может
быть создан любым текстовым редактором ОС СР/М. Длина строки
не должна превышать 127 символов.
Пакетный файл может содержать следующие виды команд: рези-
дентные команды ОС СР/М; транзитные команды ОС СР/М; коман-
ды программ, запущенных с помощью пакетного файла (только с
использованием программы XSUfi.COM); собственные команды
программы SUBMIT.COM: комментарии.
Благодаря тому, что ОС СР/М игнорирует командную строку, если
она начинается с
(точка с запятой), появляется возможность ис-
пользования комментариев в тексте пакетного файла. Прн выполнении
пакетного файла строки с комментариями будут выведены на экран.
Нередко возникает необходимость выполнения одинаковых последова-
тельностей команд, имеющих небольшие отличия. Для того, чтобы для
каждого случая не создавать свой пакетный файл, в программе
SUBMIT.COM предусмотрена возможность передачи параметров в пакет-
ный файл. Количество передаваемых параметре» может быть от 1 до 9.
Параметры передаются в пакетный файл при выполнении про-
граммы SUBMIT.COM
и
подставляются в текст пакетного файла
вместо переменных. Имена переменных записываются в виде знака “$”
11
предыдущая страница 12 Радиолюбитель 1993-03 читать онлайн следующая страница 14 Радиолюбитель 1993-03 читать онлайн Домой Выключить/включить текст