Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Микропроцессорная техника. Учебное пособие
.pdf
Циклов – 1; периодов Т – 5; адресация – регистровая; индикаторы
не изменяются.
DCX rp (Decrement register pair). Декремент содержимого пары
регистров (rp) ← (rp) - 1. Содержимое пары регистров rp уменьшается на 1.
Не устанавливаются никакие индикаторы состояния.
Циклов – 1; периодов Т – 5; адресация – регистровая; индикаторы
не изменяются.
DAD rp (Add register pair to hand L). Сложить содержимое пары
регистров с содержимым пары HL (HL) ← (HL) + (rp). Содержимое пары
регистров rp складывается с содержимым пары HL. Устанавливается только индикатор CY. Он устанавливается в 1, если есть перенос при сложении
с удвоенной точностью, если нет – сбрасывается в 0.
Циклов – 3; периодов Т – 10; адресация – регистровая; индикаторы – CY.
DAA (Decimal adjust accumulator). Десятичный корень аккумулятора.
8-ми разрядное число в аккумуляторе разбивается на два 4-х разрядных
двоично-десятичных. Далее выполняются следующие действия:
1. если значение младшей тетрады больше 9 или устанавливается ин-
дикатор АС, то к содержимому аккумулятора добавляется 6;
2. если значение старшей тетрады аккумулятора больше 9 или уста-
навливается индикатор переноса CY, то 6 добавляется к значению старшей
тетрады аккумулятора.
Циклов – 1; периодов Т – 5; индикаторы - Z, S, P, CY, AC.
Команды сложения и вычитания с переносом используются при сло-
жении и вычитании многобайтовых данных.
Логические команды микропроцессора
Задачей логических команд является выполнение логических операций
И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ, сравнения, сдвига и инвертирования.
ANA r (AND register). Операция логическое И с регистром (А) ← (А) ^ (r).
Производится операция логического И с содержимым регистра r и аккумулятора.
Результат помещается в аккумулятор.
Циклов – 1; периодов Т – 4; адресация – регистровая; индикаторы –
Z, S, P, AC.
ANA М (AND memory). Операция логическое И с памятью (А) ← (А) ^ M(HL)
Производится операция логического И с содержимым ячейки памяти и аккумулятора. Содержимое ячейки памяти, адрес которой указан в паре HL, логически
умножается на содержимое аккумулятора. Результат помещается в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы – Z, S, P, AC.
ANI data 8 (AND immediate). Операция логическое И непосредственно
(А) ← (А) ^ (data 8). Содержимое байта 2 команды логически умножается
на содержимое аккумулятора. Результат помещается в аккумулятор.
.
81

Циклов – 2; периодов Т – 7; адресация – непосредственная; индикаторы –
Z, S, P, AC.
XRA r (Exclusive OR register). Операция логическое ИСКЛЮЧАЮЩЕЕ
ИЛИ c регистром (А) ← (А) (r). Операция ИСКЛЮЧАЮЩЕЕ ИЛИ выполняется с содержимым регистра r и содержимым аккумулятора. Результат
помещается в аккумулятор. Индикаторы CY и АС сбрасываются.
Циклов – 1; периодов Т – 4; адресация – регистровая; индикаторы –
Z, S, P,CY, AC.
XRA M (Exclusive OR memory). Операция логическое ИСКЛЮ-
ЧАЮЩЕЕ ИЛИ памяти (А) ← (А) M(HL). Операция ИСКЛЮЧАЮЩЕЕ
ИЛИ выполняется над содержимым ячейки памяти, адрес которой указан
в паре HL, и содержимым аккумулятора. Результат помещается в аккумулятор. Индикаторы CY и АС сбрасываются.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы – Z, S, P,CY, AC.
XRI data 8 (Exclusive OR immediate). Операция логическое ИСКЛЮ-
ЧАЮЩЕЕ ИЛИ непосредственное (А) ← (А) (data 8). Операция ИСКЛЮЧАЮЩЕЕ ИЛИ выполняется над содержимым байта 2 команды и содержимым аккумулятора. Результат помещается в аккумулятор. Индикаторы CY
и АС сбрасываются.
Циклов – 2; периодов Т – 7; адресация – непосредственная; индикаторы –
Z, S, P,CY, AC.
ORA r (OR register). Операция логическое ИЛИ с регистром (А) ← (А)
V (r). Операция ИЛИ выполняется с содержимым регистра r и содержимым
аккумулятора. Результат помещается в аккумулятор. Индикаторы CY и АС
сбрасываются.
Циклов – 1; периодов Т – 4; адресация – регистровая; индикаторы –
Z, S, P,CY, AC.
ОRA M (OR memory). О п е р а ц и я л о г и ч е с к о е И Л И с п а м я т ь ю
(А) ← (А) V M(HL). Операция ИЛИ выполняется над содержимым ячейки памяти, адрес которой указан в паре HL, и содержимым аккумулятора.
Результат помещается в аккумулятор. Индикаторы CY и АС сбрасываются.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы – Z, S, P,CY, AC.
ORI data 8 (OR immediate). Операция логическое ИЛИ непосредст-
венное (А) ← (А) (data 8). Операция ИЛИ выполняется над содержимым
байта 2 команды и содержимым аккумулятора. Результат помещается в аккумулятор. Индикаторы CY и АС сбрасываются.
Циклов – 2; периодов Т – 7; адресация – непосредственная; индикаторы –
Z, S, P,CY, AC.
CMP r (Compare register). Сравнить регистр (А) – (r). Содержимое ре-
гистра r вычитается из содержимого аккумулятора. Содержимое аккумулятора
82

при этом не изменяется. Индикаторы устанавливаются, как при вычитании.
Устанавливается Z = 1, если (А) = (r). Устанавливается CY = 1, если (А) < (r).
Циклов – 1; периодов Т – 4; адресация – регистровая; индикаторы –
Z, S, P,CY, AC.
CMP M (Compare memory). Сравнить память (А) – М(HL). Содержи-
мое ячейки памяти, адрес которой указан в паре HL, вычитается из содержимого аккумулятора. Содержимое аккумулятора при этом не изменяется.
Индикаторы устанавливаются, как при вычитании.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы – Z, S, P,CY, AC.
CPI data 8 (Compare immediate). Сравнить непосредственно (А) – (data 8).
Содержимое байта 2 команды вычитается из содержимого аккумулятора.
Содержимое аккумулятора при этом не изменяется. Индикаторы устанавливаются, как при вычитании. Устанавливается Z = 1, если (А) = (data 8).
Устанавливается CY = 1, если (А) < (data 8).
Циклов – 2; периодов Т – 7; адресация – непосредственная; индикаторы –
Z, S, P,CY, AC.
RLC. Сдвиг влево. Содержимое аккумулятора сдвигается на один
бит влево. Младший бит b0 и CY принимают значения вытесненного бита,
т.е. бывшего старшего бита b7. Устанавливается только CY.
Циклов – 1; периодов Т – 4; индикаторы – CY.
RRC. Сдвиг вправо. Содержимое аккумулятора сдвигается на одну
позицию вправо. Старший бит b7 и CY принимают значения вытесненного
бита, т.е. бывшего младшего бита b0. Устанавливается только CY.
Циклов – 1; периодов Т – 4; индикаторы – CY.
RАL. Циклический сдвиг влево. Содержимое аккумулятора циклически
сдвигается влево вместе с CY. В младшем бите b0 устанавливается значение
CY, а в CY – вытесненное содержимое бывшего старшего бита b7. Устанавливается только CY.
83

Циклов – 1; периодов Т – 4; индикаторы – CY.
RАR. Циклический сдвиг вправо. Содержимое аккумулятора
сдвигается вправо циклически вместе с CY. В старшем бите b7 устанавливается содержимое CY, а в CY – содержимое бывшего младшего бита b0.
Устанавливается только CY.
Циклов – 1; периодов Т – 4; индикаторы – CY.
CMA. Инвертировать аккумулятор (A) ← (Ā). Содержимое
аккумулятора инвертируется. Индикаторы не устанавливаются.
Циклов – 1; периодов Т – 4; индикаторы – нет.
СМС. Инвертировать перенос (CY) ← (CY). Инвертируется содержимое индикатора CY.
Циклов – 1; периодов Т – 4; индикаторы – нет.
STC. Установить перенос (CY) ← 1. В индикаторе CY устанавливается 1.
Циклов – 1; периодов Т – 4; индикаторы – нет.
Команды ветвлений и переходов микропроцессора
Команды ветвлений содержат группы команд перехода, вызова, возврата
и повторного запуска, команд изменяет последовательный нормальный ход
программы.
Команды переходов существуют двух типов – безусловного и условного
переходов. Безусловные переходы просто выполняют операцию перехода по
указанному адресу; условные – проверяют состояние одного из индикаторов
микропроцессора.
JMP addr (Jump). Переход или ветвление (РС) ← addr. Управление пере-
дается команде, адрес которой установлен в байте 2 и 3 текущей команды.
Циклов – 3; периодов Т – 10; адресация – непосредственная; индикаторы – нет.
J condition addr. Условное ветвление. Если условие выполняется, то управ-
ление передается команде, адрес которой установлен в байте 2 и 3 команды; если
нет – управление продолжается последовательно.
CALL addr. Вызов ((SP) – 1) ← (PCH); ((SP) – 2) ← (PCL); (SP) ← (SP) – 2;
(PC) ← addr. В стек помещается адрес возврата, содержимое SP дважды
84

декрементируется. Управление передается команде, адрес которой указан
в байте 2 и 3 текущей команды.
Циклов – 5; периодов Т – 17; адресация – непосредственная, косвенная
регистровая.
C condition addr. Условный вызов. Если заданные условия выполняются, то выполняются действия, определенные командой CALL; если нет –
управление передается последовательно.
Циклов – 3/5; периодов Т – 11/17; адресация – непосредственная,
косвенная регистровая.
RET. Возврат (PCL) ← M(SP); (PCH) ← M(CP + 1); (SP) ← (SP) + 2.
Содержимое ячейки памяти, адрес которой определен в регистре SP, передается в младшие восемь бит регистра РС. Содержимое ячейки памяти, адрес
которой на 1 старше содержимого регистра SP, передается в старшие восемь бит регистра РС. Содержимое регистра SP дважды инкрементируется.
Эта команда используется для возврата из подпрограммы в основную
программу.
Циклов – 3; периодов Т – 11; адресация – косвенная регистровая.
R condition. Возврат условный. Если условие возврата выполняется,
то выполняются действия, определенные командой RET; если нет – управление продолжается последовательно. Т.о. возврат в основную программу
происходит при выполнении условия.
Циклов – 1/3; периодов Т – 5/10; адресация – косвенная регистровая.
Запись и машинные коды основных команд переходов представлены в табл
Рассмотрим использование команд условного перехода.
Рассмотрим команду JZ. Команда имеет машинный код 1100 1010В.
биты 3, 4, 5 определяют, что условием перехода является Z = 1.
Условный переход
Команды стека, ввода/вывода и управления
Эти команды выполняют операции помещения в стек и извлечения
из него, ввода и вывода данных, обмен данными, подтверждения и запрета
прерываний, останова процессора.
PUSH rp. Поместить в стек M(SP - 1) ← (rh); M(SP – 2) ← (rl);
(SP) ← (SP) – 2. Содержимое старшего регистра пары rp п е р е д а е т с я
в ячейку памяти, адрес которой на 1 меньше содержимого регистра SP.
Содержимое младшего регистра пары rp передается в ячейку памяти,
адрес которой на 2 меньше содержимого регистра SP. Содержимое регистра SP декрементируется дважды.
Циклов – 3; периодов Т – 11; адресация – косвенная регистровая.
PUSH PSW. Поместить в стек слово состояние процессора.
Содержимое регистра А передается в ячейку памяти, адрес которой меньше
85

на 1 содержимого регистра SP. Содержимое флагового регистра (регистра
признаков) передается в ячейку памяти, адрес которой меньше на 2 содержимого регистра SP. Содержимое регистра SP декрементируется дважды.
Циклов – 3; периодов Т – 11; адресация – косвенная регистровая.
POP rp. Извлечь из стека: (rl) ← M(SP); (rh) ← M(SP + 1); (SP) ← (SP) + 2.
Содержимое ячейки памяти, адрес которой определяется содержанием регистра SP, передается в младший регистр пары rp. Содержимое ячейки памяти,
адрес которой больше на 1 содержимого регистра SP, передается в старший
регистр пары rp. Содержимое регистра SP инкрементируется дважды.
Циклов – 3; периодов Т – 10; адресация – косвенная регистровая.
POP PSW. Извлечь из стека слово состояние процессора. Содержимое
ячейки памяти, адрес которой определен содержимым регистра SP, используется для восстановления регистра признаков. Содержимое ячейки памяти,
адрес которой на 1 больше содержимого регистра SP, передается в регистр А.
Содержимое регистра SP инкрементируется дважды.
Циклов – 3; периодов Т – 10; адресация – косвенная регистровая.
Команды POP rp и POP PSW используются для извлечения информации из стека.
IN port. Ввести данные: (А) ← (данные). Данные, помещенные
на 8-ми разрядную двунаправленную шину данных определенным портом,
передаются в регистр А. Циклов – 3; периодов Т – 10; адресация – прямая.
OUT port. Вывести данные: (данные) ← (А). Содержимое регистра А
помещаются на 8-ми разрядную двунаправленную шину данных для передачи
в определенный порт.
Циклов – 3; периодов Т – 10; адресация – прямая.
EI. Разрешение прерываний. Система прерываний разрешается после
выполнения команды. Циклов – 1; периодов Т – 4.
DI. Запрещение прерываний. Система прерываний запрещается после
выполнения команды.
Циклов – 1; периодов Т – 4.
HLT (Halt). Останов. Процессор останавливается. Счетчик команд
содержит адрес следующей команды. Остальные регистры не изменяются. Войдя в это состояние, процессор может быть запущен только внешним
сигналом, обычно, прерыванием. Эта команда используется для остановки
микропроцессора, когда он ожидает, чтобы периферия завершила свою работу.
Циклов – 1; периодов Т – 7.
NOP. Нет операции. Холостая операция. Не выполняется никакая
операция. Регистры и индикаторы не устанавливаются.
Циклов – 1; периодов Т – 4.
86

СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ
1. Сташин В. В Проектирование цифровых устройств на однокри-
стальных микроконтроллерах/ В. В. Сташин. - М.: Энергоатомиздат, 1990 224 с. - Текст непосредственный.
2. Новиков Ю. В. Основы МП-техники / Ю. В. Новиков, П. К. Скоробогатов –
М.:ИНТУИТ.РУ «Интернет-Университет Информационных Технологоий», 2003. –
440 с. - Текст непосредственный.
3. Ан П. Сопряжение ПК с внешними устройствами: Пер. с англ./
П.Ан – М.:ДМК Пресс, 2001. – 320 с. - Текст непосредственный.
4. Новиков Ю. В. Основы микропроцессорной техники: Учебное
пособие / Ю. В. Новиков, П. К. Скоробогатов. - М.: БИНОМ. ЛЗ, ИНТУИТ.
РУ, 2012. - 357 c. - Текст непосредственный.
5. Предко М. Руководство по микроконтроллерам. Том 1. / М. Предко -
М.: Постмаркет, 2001. – 416 с. - Текст непосредственный.
6. Предко М. Руководство по микроконтроллерам. Том 2. /М. Предко -
М.: Постмаркет, 2001. – 488 с. - Текст непосредственный.
7. Бродин В. Б. Системы на микроконтроллерах и БИС программируемой
логики / В. Б. Бродин, А. В. Калинин. – М.: ЭКОМ, 2002. – 400 с. - Текст
непосредственный.
8. Бродин В. Б. Микроконтроллеры: архитектура, программирование,
интерфейс/ В. Б. Бродин, И. И. Шагурин – М.: ЭКОМ, 1999. – 360 с. - Текст
непосредственный.
9. Справочник по системе команд. - М., ГРАНАЛ, 1993. - 382 с. - Текст
непосредственный. Микропроцессоры и микропроцессорные комплекты
интегральных микросхем: Справочник. В 2 т. /Под ред. В. А. Шахнова. - М.:
Радио и связь, 1988. -368 с. - Текст непосредственный.
10. Шевкопляс Б. В. Микропроцессорные структуры. Инженерные
решения: Справочник /Б.В. Шевкопляс. - М.: Радио и связь, 1990. - 512 c. Текст непосредственный.
11. Майоров В. Г. Практический курс программирования микропроцессорных
систем/ В. Г. Майоров, А. И. Гаврилов - М.: Машиностроение, 1989. - 272с. - Текст
непосредственный.
12. Федорков Б. Г. Микросхемы ЦАП и АЦП: функционирование,
параметры, применение/ Б. Г. Федорков, В. А. Телец - М.: Энергоатомиздат,
1990. - 320 c. - Текст непосредственный
87

ФЗ
№ 436-ФЗ
Учебное издание
Издание не подлежит маркировке
в соответствии с п. 1 ч. 4 ст. 11
Попова Надежда Владимировна
Сидорова Анастасия Эдуардовна
Сватов Виктор Филиппович
МИКРОПРОЦЕССОРНАЯ ТЕХНИКА
В авторской редакции
Подписано в печать 25.09.2023. Формат 60х90 1/16. Усл. печ. л. 5,5
Тираж 500 экз. Заказ № 2691.
Библиотечно-издательский комплекс
федерального государственного бюджетного образовательного
учреждения высшего образования
«Тюменский индустриальный университет».
625000, Тюмень, ул. Володарского, 38.
Типография библиотечно-издательского комплекса.
625039, Тюмень, ул. Киевская, 52.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
