Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
287
Добавлен:
19.03.2015
Размер:
175.1 Кб
Скачать

19.3. Группы команд

Все команды МП К1810 можно разделить на несколько групп.

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

Команды арифметических операций: сложение, вычитание, умножение и деление одно – или двухбайтных целых чисел со знаками и без знаков. В операциях над целыми числами со знаком фиксируется переполнение OF. Числа со знаками представляются в дополнительном коде. Имеются команда коррекции при операциях с десятичными (двоично-кодированными) данными. Все команды арифметических операций изменяют содержимое регистра признаков.

Команды логических операций и операций сдвига. В состав данной группы команд входят команды инверсии операнда NOT, восемь различных команд сдвига и команды логических операций И, ИЛИ и исключающее ИЛИ.

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

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

Команды управления микропроцессором: сброс переноса, дополнение переноса, установка переноса, сброс направления, установка направления, сброс и установка прерывания, останов, ожидание и обращение к сопроцессору.

Можно считать, что система команд 16-разрядного процессора 8086/88 (К1810) является подмножеством команд 32-разрядных процессоров 80х86.

    1. Описание языка программирования

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

Язык ассемблера изоморфен машинному языку, то есть каждому оператору языка ассемблера соответствует, как правило, одна команда процессора. Это позволяет, с одной стороны, воспользоваться всеми возможностями системы команд МП, а с другой – избавиться от необходимости оперировать кодами команд путём замены их на мнемокоды, что существенно упрощает процесс программирования и отладки.

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

Соседние файлы в папке Учебник тау