Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 213

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 207 208 209 210 211 212 < 213 > 214 215 216 217 218 219 .. 528 >> Следующая

могут быть отнесены как к группе команд битового процессора, так и к
группе команд управления.
Команды передачи управления. Группа команд передачи управления является
самой многочисленной группой. Она содержит 40 инструкций, которые делятся
на две подгруппы: команды условных и безусловных переходов (табл. 4.28),
команды вызова подпрограмм и обслуживания прерываний (табл. 4.29).
378
СЕМЕЙСТВО МК НС08 ФИРМЫ "MOTOROLA"
Таблица 4.27
Команды битового процессора
Мнемокод Операция Выполняемое действие Способ адресации Влияние на
признаки
V H I N Z С
BSET BSET п, орг Установить в "1" бит с номером п в байте данных. Данные
могут располагаться в ячейке ОЗУ или регистре специальных функций. В
команде используется только прямая адресация. Диапазон адресов байтов
данных $00-$FF Мп <= 1 DIR(bO) DIR(b1) DIR(b2) DIR(b3) DIR(b4)
DIR(b5) DIR(b6) DIR(b7)
BCLR BCLR п, орг Установить в "0" (очистить) битс номером п в байте
данных. Данные могут располагаться в ячейке ОЗУ или регистре специальных
функций. В команде используется только прямая адресация. Диапазон адресов
байтов данных $00-$FF Мп <= 0 DIR(bO) DIR(b1) DIR(b2) DIR(b3) DIR(b4)
DIR(b5) DIR(b6) DIR(b7)
SEC Установить в "1" бит переноса С С <= 1 INH
1
CLC Установить в "0" бит переноса С С <=0 INH
0
SEI Установить в "1" глобальную маску прерываний I. Запретить
прерывания 1<= 1 INH - - 1 - - -
CLI Установить в "0" глобальную маску прерываний I. Разрешать
прерывания !<= 1 INH - - 0 - - -
Центральный процессор CPU08 может использовать три команды условного
перехода: традиционную трехбайтовую команду JMP и две двухбайтовых
команды BRA и BRN. Команда JMP отличается расширенным набором способов
задания адреса перехода. Этот адрес может быть в том числе определен
одним из способов индексной адресации, что позволяет разместить
изменяемый в ходе выполнения программы адрес в одной из ячеек ОЗУ.
Двухбайтовая команда BRA реализует безусловный переход в пределах
смещения от -128 до +127 относительно текущего адреса. Эта команда
позволяет более экономно расходовать память. Команда BRN аналогична
команде NOP, но имеет двухбайтовый формат. Значение смещения, которое
указано во втором байте команды, смысла не имеет. Эта команда полезна для
режимов отладки программного обеспечения в абсолютном коде. Она позволяет
заменить инструкцию ветвления на инструкцию NOP без изменения байта
смещения rel в формате команды условного перехода.
Группа команд ветвления чрезвычайно широка. Кроме переходов по
традиционным условиям С, Z, N, Н, реализованы переходы по комбинациям
флагов С и Z для сравнения операндов в прямом коде без знака, а также по
комбинациям флагов С, Z,n Удля сравнения операндов в дополнительном коде
со знаком.
Особое внимание следует обратить на команды CBEQ и DBNZ:
CBEQ opr,rel ; Сравнить аккумулятор АСС с содержимым прямоадресуемой
; ячейки памяти и перейти по метке, если они равны.
CBEQ x+,rel ; Сравнить аккумулятор АСС с содержимым ячейки памяти,
; адрес которой содержится в индексном регистре и перейти ; по метке,
если они равны. Содержимое индексного регистра Н:Х ; увеличивается на 1
после выполнения сравнения.
379
8-РАЗРЯДНЫЕ МИКРОКОНТРОЛЛЕРЫ
DBN2 x.rel ; Уменьшить на 1 содержимое ячейки памяти, адрес которой
; указан в индексном регистре Н;Х, и перейти по метке, если ; результат
не равен 0.
DBNZA rel ; Уменьшить на 1 содержимое аккумулятора АСС и перейти по
; метке, если результат не равен 0.
Команды CBEQ и DBNZ имеют достаточно широкий набор способов адресации
(см. табл. 4.28).
Таблица 4.28
Команды условных и безусловных переходов
Мнемокод Операция Выполняемое действие Способ адресации Влияние на
признаки V H I N Z С
Команды безусловного перехода

JMP JMP орг JMP орг JMP орг.Х JMP орг.Х JMP ,Х Безусловный переход по
адресу, указанному в ячейке памяти (ОЗУ или ПЗУ). Адрес ячейки задан
используемым в команде способом адресации PC <= Jump Address DIR
EXT IX2 1X1 IX
BRA BRA rel Безусловный переход по адресу, код смещения которого указан во
втором байте команды PC <= (PC)+$0002+rel REL

BRN BRN rel Перейти к следующей команде. Эквивалентна двум инструкциям
NOP. Полезна в режиме отладки в абсолютном коде для замены инструкций
условного перехода без изменения абсолютных адресов PC <= (PC)+$0002
REL
NOP Пустая операция. Счетчик команд PC увеличивается на 1. Другие
регистры не изменяются None INH
Команды ветвления
BCS BCS rel Перейти по метке, если бит переноса С установлен. Иначе
перейти к следующей команде PC <= (PC)+$0002+rel? (C) = 1 REL

вес ВСС rel Перейти по метке, если бит переноса С сброшен. Иначе перейти к
следующей команде PC <= (PC)+$0002+rel? (C) = 0 REL

BEQ BEQ rel Перейти по метке, если r= т. Иначе перейти к следующей команде
PC <= (PC)+$0002+rel? (Z) = 1 REL
BNE BNE rel Перейти по метке, если г/ т. Иначе перейти к следующей команде
PC <= (PC)+$0002+rel? (Z) = 0 REL
Предыдущая << 1 .. 207 208 209 210 211 212 < 213 > 214 215 216 217 218 219 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed