Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Микропроцессорная техника. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
Циклов – 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.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]