Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Программирование микропроцессорного устройства






Любая программа состоит из упорядоченного набора команд. Каждая команда несет в себе информацию, определяющую некоторую элементарную последовательность действий микропроцессорного устройства.

Система команд микропроцессора К580ВМ80А, используемого в контрольной работе для построения микропроцессорной системы приведена в приложении 2.

По назначению они разбиты на отдельные группы:

- команды пересылки данных (пересылка, загрузка, обмен, запись);

- команды арифметических операций (сложение, вычитание, инкремент, декремент);

- команды логических операций («И», «ИЛИ», «НЕ», «Исключающее ИЛИ», сравнение, сдвиги);

- команды ветвлений и переходов;

- команды ввода-вывода и работы со стеком.

Команда может иметь длину один, два или три байта и соответственно занимать в памяти от одной до трех последовательно расположенных ячеек. Форматы команд показаны на рис.2.

Первый байт любой команды определяет код операции, т.е. действия МП. Далее, в зависимости от того требуется ли дополнительная информация для выполнения необходимой команды, могут записываться второй, а иногда и третий байты, представляющие собой данные. Для двухбайтных команд в качестве данных может записываться 8-ми разрядный операнд, с которым далее оперирует микропроцессор или адрес порта ввода-вывода. В качестве второго и третьего байтов для трехбайтовых команд могут использоваться как сами двухбайтовые операнды, так и адреса ячеек памяти, к которым обращается процессор.

Рисунок 2. Форматы команд

а) однобайтовая; б) двухбайтовая; в) трехбайтовая

При записи команды в двоичной системе счисления (как показано в приложении 2) вероятность ошибки, как в самой команде, так и в адресе, по которому она хранится, увеличивается. Поэтому при написании программ пользуются представлением кодов команд и данных в шестнадцатеричной системе счисления.

Однако запись программы в шестнадцатеричной системе счисления (в машинных кодах) имеет недостаток – пользователь должен помнить машинные коды. Более удобным является программирование на языке Ассемблер.

Любая команда на языке Ассемблер записывается следующим образом:

Метка: Операция Данные; Комментарий

Метка используется для обозначения адреса ячейки памяти, в которой хранится данная команда. Она может состоять из шести символов, не должна включать знаков пунктуации и пробелов, причем первым символом должна быть буква. Метка всегда определяется двоеточием и является необязательным элементом команды. Она применяется только при необходимости.

Операция является обязательным элементом команды. Она представляет собой мнемоническую запись из двух – четырех букв, которые указывают на характер выполняемых действий, например:

HLT – мнемоническое обозначение команды останов МП.

Данные – часть команды, в которой может размещаться одно или два восьмиразрядных слова в зависимости от типа команды (адрес ячейки памяти, адрес порта ввода- вывода, непосредственные данные).

Комментарий отделяется от команды точкой с запятой. Комментарием является запись облегчающая понимание назначения команды. Комментарий является необязательной частью команды. Тем не менее рекомендуется снабжать команды программы комментариями, которые помогают определить роль команды в алгоритме решения задачи.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.