Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Микропроцессорная техника. Учебное пособие
.pdf
1. Как задаются режимы работы каналов БИС КР5800ВВ55?
2. Как формируется сегментный код?
3. Как в УМК организован обмен информацией между МП, индикато-
рами и клавиатурой?
4. Основные блоки ППИ.
4.6. Контрольные вопросы
71

Приложение 1
Команды ассемблера микропроцессора КР580ВМ80А
Команда Описание Код
Mov r1,r2 Пересылка данных из регистра r2 в регистр r1
Mov M, r Пересылка данных из регистра r в память
Mov r, M Пересылка данных из памяти в регистр r
XCHG Обмен данными между парами регистров HL и DE ЕВ
MVI r( ) Занесение байта данных в регистр r
MVI M ( ) Занесение байта данных в память 36
LDA (адрес) Загрузка содержимого ячейки с указанным адресом в
3А
накопитель
LHLD (адрес) Загрузка в регистры H, L содержимого ячеек с указанным
2А
адресом и адресом на единицу большим
STAX rp Занесение содержимого накопителя в ячейку, косвенно
адресуемую парой регистров rp (B,D)
STA (адрес) Занесение содержимого накопителя в ячейку с указанным
32
адресом
SHLD (адрес) Занесение содержимого регистра HL в память с
22
указанным адресом и адресом на единицу большим
LXI rp ( ) Занесение двух байтов данных в пару регистров
(B,D,H,SP)
LDAX rp Загрузка в накопитель содержимого ячейки, косвенно
адресуемую парой регистров rp (B,D)
ADD Сложение содержимого регистра r и накопителя
ADD M Сложение содержимого ячейки памяти и накопителя 86
ADC r Сложение содержимого регистра r и накопителя с учётом
переноса С
ADC M Сложение содержимого ячейки памяти и накопителя с
8Е
учётом переноса С
ADI ( ) Сложение байта с содержимым накопителя С6
ACI ( ) Сложение байта с содержимым накопителя с учетом
СЕ
переноса
SUI ( ) Вычитание байта из содержимого накопителя D6
SUB r Вычитание содержимого регистра r из содержимого
накопителя
SBI ( )
Вычитание байта из содержимого накопителя с учетом заёма
SUB M Вычитание содержимого памяти из содержимого
DE
96
накопителя
72

SBB r Вычитание содержимого регистра r из содержимого
накопителя с заёмом
SBB M Вычитание содержимого памяти из содержимого
9E
накопителя с заёмом
ANA r Подразрядное И над содержимым регистра r и накопителя
ANA M Подразрядное И над содержимым памяти и накопителя А6
XRA r Подразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над содержимым
регистра r и накопителя
XRA M Подразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над содержимым
АЕ
памяти и накопителя
Команда Описание Код
ORA r Подразрядное ИЛИ над содержимым регистра r и
накопителя
ORA M Подразрядное ИЛИ над содержимым памяти и
В6
накопителя
CMP r Сравнение содержимых регистра r и накопителя
CMP M Сравнение содержимых памяти и накопителя ВЕ
ANI ( ) Подразрядное И над содержимым накопителя и байтом Е6
XRI ( ) Подразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над содержимым
ЕЕ
накопителя и байтом
ORI ( ) Подразрядное ИЛИ над содержимым накопителя и
F6
байтом
CPI ( ) Сравнение байта с содержимым накопителя FE
DAD rp Сложение содержимого пары регистров rp (B,D,H,SP) с
содержимым пары регистров H,L
INR r Увеличение содержимого регистра r на 1
DCR r Уменьшение содержимого регистра r на единицу
DCR M Уменьшение содержимого памяти на единицу 35
INR M Увеличение содержимого памяти на единицу
INX rp Увеличение содержимого пары регистров rp (B,D,H,SP)
на единицу
DCX rp Уменьшение содержимого пары регистров rp (B,D,H,SP)
на единицу
RLC Циклический сдвиг содержимого накопителя влево 7
RRC Циклический сдвиг содержимого накопителя вправо 0F
RAL Циклический сдвиг содержимого накопителя влево через
17
перенос
RAR Циклический сдвиг содержимого накопителя вправо
через перенос
73
1F

DAA Преобразование содержимого накопителя в двоично-
27
десятичный код
CMA Поразрядное инвертирование накопителя 2F
STC Установка признака переноса в единицу 37
CMC Инвертирование признака переноса 3F
PCHL Занесение содержимого регистров H.L в счетчик команд E9
JMP (адрес) Безусловный переход по указанному адресу C3
JC (адрес) Переход при наличии переноса DA
JNC (адрес) Переход при отсутствии переноса D2
JZ (адрес) Переход при нуле CA
JNZ (адрес) Переход при отсутствии нуля C2
JP (адрес) Переход при плюсе F2
JM (адрес) Переход при минусе FA
JPE (адрес) Переход при чётности EA
JPO (адрес) Переход при нечётности E2
CALL (адрес) Вызов подпрограммы CD
CC (адрес) Вызов подпрограммы при переносе DC
CNC (адрес) Вызов подпрограммы при отсутствии переноса D4
CZ (адрес) Вызов подпрограммы при нуле CC
CNZ (адрес) Вызов подпрограммы при отсутствии нуля C4
CP (адрес) Вызов подпрограммы при плюсе F4
Команда Описание Код
CM (адрес) Вызов подпрограммы при минусе FC
CPE (адрес) Вызов подпрограммы при чётности EC
CPO (адрес) Вызов подпрограммы при нечётности E4
RET Возврат C9
RC Возврат при переносе D8
RNC Возврат при отсутствии переноса D0
RZ Возврат при нуле C8
RNZ Возврат при отсутствии нуля C0
Команда Описание Код
RP Возврат при плюсе F0
RM Возврат при минусе F8
RPE Возврат при чётности E8
RPO Возврат при нечётности E0
RST (номер) Повторный запуск с адреса CF
IN(канал) Ввод данных из накопителя в указанный канал D8
(канал) Вывод данных из накопителя в указанный канал D3
OUT
74

PUSH rp Занесение содержимого пары регистров rp (B,D,H,PSW) в
стёк
POP rp Выдача данных из стёка в пару регистров rp (B,D,H,PSW)
в стёк
XTHL Обмен данными между вершиной стёка и парой
E3
регистров H,L
SPHL Занести в указатель стёка содержимое регистров H,L F9
DI Запретить прерывание F3
EI Разрешить прерывание FB
NOP Отсутствие операции 0
HLT Останов 76
75

Приложение 2
Мнемоника команд ассемблера микропроцессора КР580ВМ80А
76

Приложение 3
Команды передачи данных микропроцессора Intel 8080
Команды пересылки
Такие команды обеспечивают выполнение операций размещения,
обмена, загрузки и перемещения данных. Среди всех команд микропроцессора эти команды используются наиболее часто. Индикаторы условия
(признаки флагового регистра F) не устанавливаются командами этой
группы. В результате действия команд этой группы никакие индикаторы
не устанавливаются.
MOV r1, r2 (Move register). Передача команд регистрами (r1) ← (r2).
Содержимое регистра (r2) передается в регистр (r1).
Циклов – 1; периодов Т – 5; адресация – регистровая.
MOV r, M (Move from memory). Передача из памяти (r) ← ((H)(L)).
Содержимое ячейки памяти, адрес которой находится в паре (HL), передается в регистр (r).
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая.
MOV M, r (Move to memory). Передача в память ((H)(L)) ← (r). Содер-
жимое регистра (r) передается в ячейку памяти, адрес которой находится в
паре (HL).
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая.
MVI r, data (Move immediate). Передача непосредственная (r) ← (byte 2).
Содержимое байта 2 команды передается в регистр (r).
Циклов – 2; периодов Т – 7; адресация – непосредственная. Команда
2-х байтовая.
MVI M, data (Move to memory immediate). Передача в память
непосредственная ((H)(L)) ← (byte 2). Содержимое байта 2 команды передается в ячейку памяти, адрес которой указан в паре (HL).
Циклов – 3; периодов Т – 10; адресация – непосредственная / косвенная
регистровая.
LXI rp, data 16 (Load register pair immediate). Загрузить непосредственно пару регистров (rp) ← (байт 2 и 3), причем байт 3 команды передается
в старший регистр, а байт 2 – в младший регистр той же пары.
Циклов – 3; периодов Т – 10; адресация – непосредственная. Команда
3-х байтовая.
LDA addr (Load accumulator direct). Прямая загрузка аккумулятора
(A) ← ((байт 3)(байт 2)). Содержимое ячейки памяти, адрес которой
указан в байтах 2 и 3 команды, передается в аккумулятор (регистр А)
(А) ← М(addr).
Циклов – 4; периодов Т – 13; адресация – прямая. Команда
3-х байтовая.
77

STA addr (Store accumulator direct). Прямое размещение содержимого
аккумулятора ((байт 3)(байт 2)) ← (А); М(addr) ← (А). Содержимое
аккумулятора передается в ячейку памяти, адрес которой указан в байтах 2
и 3 команды.
Циклов – 4; периодов Т – 13; адресация прямая.
LHLD addr (Load H and L direct). Загрузить Н и L п р я м о
(L) ← M((байт 3)(байт 2)); Н ← ((байт 3)(байт 2) + 1). Содержимое ячейки памяти, адрес которой определяется байтами 2 и 3 команды, передается
в регистр (L). Содержимое следующего байта памяти передается в регистр (Н).
Циклов – 5; периодов Т – 16; адресация – прямая.
SHLD addr (Store H and L direct). Поместить содержимое регистровой
пары HL прямо М((байт 3)(байт 2)) ← (L); ((байт 3)(байт 2) + 1) ← (H). Содер-
жимое регистра L передается в ячейку памяти, адрес которой определяется
байтами 2 и 3 команды. Содержимое регистра Н передается в следующий
байт памяти.
Циклов – 5; периодов Т – 16; адресация – прямая.
LDAX rp (Load accumulator indirect). Загрузить аккумулятор косвенно
(А) ← М((rp)). Содержимое ячейки памяти, адрес которой определяется парой регистров rp, передается в аккумулятор. Могут использоваться только
пары rp = B (регистры В и С) или rp = D (регистры D и E).
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая.
STAX rp (Store accumulator indirect). Загрузить М((rp)) ← (А).
Содержимое аккумулятора А передается в ячейку памяти, адрес которой
содержится в паре регистров rp. Могут использоваться только пары rp = B
(регистры В и С) или rp = D (регистры D и E).
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая.
XCHG (Exchange H and L with D and E). Обмен H и L с D и E: (H) ↔ (D) ;
(L) ↔ (E). Содержимое регистров Н и L обменивается с содержимым
регистров D
и Е.
Циклов – 1; периодов Т – 4; адресация – регистровая.
Арифметические команды
Арифметические команды предназначены для выполнения операций
сложения, сложения с переносом, вычитания, вычитания с заёмом, инкрементирования, декрементирования, десятичной коррекции аккумулятора.
Результат всех арифметических операций остается в аккумуляторе.
ADD r (Add register). Сложение содержимого регистра (А) ← (А) + (r).
Содержимое регистра r складывается с содержимым аккумулятора. Результат
помещается в аккумулятор.
Циклов – 1; периодов Т – 4; адресация – регистровая; индикаторы –
Z, S, P, CY, AC.
78

ADD M (Add memory). Сложение данных памяти (А) ← (А) + М(HL).
Содержимое ячейки памяти, адрес которой содержится в регистрах Н и L,
складывается с содержимым аккумулятора. Результат помещается в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы – Z, S, P, CY, AC.
ADI data 8 (Add immediate). Непосредственное сложение (А) ← (А) + data.
Содержимое байта 2 команды складывается с содержимым аккумулятора.
Результат помещается в аккумулятор.
Циклов - 2; периодов Т - 7; адресация - непосредственная.
ADC r (Add register with carry). Прибавление содержимого регистра
и переноса (А) ← (А) + (r) + (CY). Содержимое регистра r и индикатора
переноса (бит переполнения) складывается с содержимым аккумулятора.
Результат помещается в аккумулятор.
Циклов – 1; периодов Т – 4; адресация – регистровая; индикаторы –
Z, S, P, CY, AC.
ADC M (Add memory with carry). Прибавление содержимого памяти
и переноса (А) ← (А) + M(HL) + (CY). Содержимое ячейки памяти, адресом
которой является содержимое пары регистров HL, и индикатора переноса складывается с содержимым аккумулятора. Результат помещается в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы - Z, S, P, CY, AC.
ACI data 8 (Add immediate with carry). Н е п о с р е д с т в е н н о е с л о ж е н и е
с учетом переноса (А) ← (А) + data 8 + (CY). Содержимое байта 2 команды
и индикатора переноса складывается с содержимым аккумулятора. Результат
помещается в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – непосредственная; индикаторы –
Z, S, P, CY, AC.
SUB r (Subtract register). Вычитание содержимого регистра (А) ← (А) – (
r).
Содержимое регистра r вычитается из содержимого аккумулятора. Результат
помещается в аккумулятор.
Циклов – 1; периодов Т – 5; адресация – регистровая; индикаторы –
Z, S, P, CY, AC.
SUB М (Subtract memory). Вычитание содержимого памяти (А) ← (А) – М(HL).
Содержимое ячейки памяти, адрес которой является содержимым пары
HL, вычитается из содержимого аккумулятора. Результат помещается
в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы - Z, S, P, CY, AC.
SUI data 8 (Subtract immediate). Непосредственное вычитание
данных (А) ← (А) – data 8. Содержимое байта 2 команды вычитается
из содержимого аккумулятора. Результат помещается в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – непосредственная; индикаторы
–
Z, S, P, CY, AC.
79

SBB r (Subtract register with borrow). Вычитание содержимого регистра
и переноса (А) ← (А) – (r) – (CY). Содержимое регистра r и индикатора
переноса CY вычитается из содержимого аккумулятора. Результат помещается в аккумулятор.
Циклов – 1; периодов Т – 5; адресация – регистровая; индикаторы –
Z, S, P, CY, AC.
SBB М (Subtract memory with borrow). Вычитание содержимого памяти
и переноса (А) ← (А) – М(HL) – (CY). Содержимое ячейки памяти, адрес которой является содержимым пары HL, и индикатора переноса CY вычитается
из содержимого аккумулятора. Результат помещается в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – косвенная регистровая;
индикаторы - Z, S, P, CY, AC.
SBI data 8 (Subtract immediate with borrow). Непосредственное
вычитание данных и переноса (А) ← (А) – data 8 – (CY). Содержимое
байта 2 команды и индикатора переноса CY вычитается из содержимого
аккумулятора. Результат помещается в аккумулятор.
Циклов – 2; периодов Т – 7; адресация – непосредственная; индикаторы
–
Z, S, P, CY, AC.
INR r (Increment register). Инкремент содержимого регистра (r) ← (r) + 1.
Содержимое регистра r увеличивается на 1. Устанавливаются все индикаторы
состояния, за исключением CY.
Циклов – 1; периодов Т – 5; адресация – регистровая; индикаторы
–
Z, S, P, AC.
INR М (Increment memory). Инкремент содержимого памяти
M(HL) ← M(HL) + 1. Содержимое ячейки памяти, адрес которой содержится
в паре
HL, увеличивается на 1. Устанавливаются все индикаторы состояния,
за исключением CY.
Циклов – 3; периодов Т – 10; адресация – косвенная регистровая;
индикаторы - Z, S, P, AC.
DCR r (Decrement register). Декремент содержимого регистра (r) ← (r) – 1.
Содержимое регистра r уменьшается на 1. Устанавливаются все индикаторы состояния, за исключением CY.
Циклов – 1; периодов Т – 5; адресация – регистровая; индикаторы
–
Z, S, P, AC.
DCR М (Decrement memory). Д е к р е м е н т с о д е р ж и м о г о п а м я т и
M(HL) ← M(HL) - 1. Содержимое ячейки памяти, адрес которой содержится
в паре HL, уменьшается на 1. Устанавливаются все индикаторы состояния,
за исключением CY.
Циклов – 3; периодов Т – 10; адресация – косвенная регистровая;
индикаторы - Z, S, P, AC.
INX rp (Increment register pair). Инкремент содержимого пары
регистров (rp) ← (rp) + 1. Содержимое пары регистров rp у в е л и ч и в а е т с я н а 1 .
Не устанавливаются никакие индикаторы состояния.
80
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
