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

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

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