Рисунки к конспектам (11.10.10)
.doc
Рисунок 3 – Циклы и такты микропроцессора К1821ВМ85А (а) и пример размещения команды в памяти микропроцессорной системы (б)
Таблица 2 – Адреса регистров и регистровых пар МП К1821ВМ85А
Регистры |
Пары регистров |
|||||||||
B |
C |
D |
E |
H |
L |
A |
B |
D |
H |
SP |
000 |
001 |
010 |
011 |
100 |
101 |
111 |
00 |
01 |
10 |
11 |
Рисунок 4 – Временные диаграммы цикла чтения микропроцессора К1821ВМ85А
Рисунок 5 – Аппаратная реализация пересылки байта при выполнении операции рестарта
Таблица 3 – Описание разрядов регистра-аккумулятора при последовательном выводе
Номер бита |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Обозначение |
SOD |
SOE |
X |
R 7,5 |
MSE |
M 7,5 |
M 6,5 |
M 5,5 |
Номер бита |
Обозначение бита |
Назначение бита |
7 |
SOD (Serial Output Date) |
Данные для последовательного вывода из МП с выхода SOD |
6 |
SOE (Serial Input Enable) |
Единичное значение бита передает последовательные данные SOD на соответствующий выход МП |
5 |
X |
Не используется |
4 |
R 7,5 |
Сбрасывает вход RST 7,5 |
3 |
MSE (Mask Set Enable) |
Единичное значение бита разрешает действие битов 2…0 |
2…0 |
M 7,5…M 5,5 |
Единичное значение бита маскирует запросы прерывания RST 7,5…RST 5,5 |
Таблица 4 – Описание разрядов регистра-аккумулятора при последовательном вводе
Номер бита |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Обозначение |
SID |
I 7,5 |
I 6,5 |
I 5,5 |
IE |
M 7,5 |
M 6,5 |
M 5,5 |
Номер бита |
Обозначение бита |
Назначение бита |
7 |
SID (Serial Input Date) |
Последовательные данные на входе SID |
6…4 |
I 7,5; I 6,5; I 5,5 |
Логические уровни на выводах RST 7,5; RST 6,5 и RST 5,5 соответственно |
3 |
IE (Interrupt Enable) |
Значение бита показывает, какая из команд EI и DI выполнялась последней, на него влияет также наличие в данное время режима прерывания, поскольку он сопровождается сбросом триггера IE, запрещая другие прерывания |
2…0 |
M 7,5…M 5,0 |
Индицирует текущее состояние масок прерывания |
Таблица 5 – Система команд МП К1821ВМ85А
Мнемокод |
Код |
Флажки |
Число |
Содержание |
||
байтов |
тактов |
циклов |
||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Команды пересылки |
||||||
MOV r1, r2 |
01ПППИИИ |
– |
1 |
4 |
1 |
Пересылка из регистра r2 в регистр r1 |
MOV M, r |
01110ИИИ |
– |
1 |
7 |
2 |
Пересылка из регистра в память |
MOV r, M |
01ППП110 |
– |
1 |
7 |
2 |
Пересылка из памяти в регистр |
MVI r, b2 |
00ППП110 |
– |
2 |
7 |
2 |
Пересылка непосредственных данных в регистр |
MVI M, b2 |
36 |
– |
2 |
10 |
3 |
Пересылка непосредственных данных в память |
LXI rpb3b2 |
00ПР0001 |
– |
3 |
10 |
3 |
Загрузка непосредственных данных в пару регистров |
Продолжение таблицы 5
Мнемокод |
Код |
Флажки |
Число |
Содержание |
||
байтов |
тактов |
циклов |
||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Команды пересылки |
||||||
LDA b3b2 |
3A |
– |
3 |
13 |
4 |
Прямая загрузка аккумулятора |
STA b3b2 |
32 |
– |
3 |
13 |
4 |
Прямая запись аккумулятора в память |
LHLD b3b2 |
2A |
– |
3 |
16 |
5 |
Прямая загрузка пары регистров H |
SHLD b3b2 |
22 |
– |
3 |
16 |
5 |
Прямая загрузка пары регистров H в память |
LDAX rp |
00ПР1010 |
– |
1 |
7 |
2 |
Косвенная загрузка аккумулятора посредством пары регистров B или D |
STAX rp |
00ПР0010 |
– |
1 |
7 |
2 |
Косвенная запись аккумулятора в память посредством пары регистров B или D |
XCHG |
EB |
– |
1 |
4 |
1 |
Обмен между парами регистров H и D |
Команды арифметических и логических операций |
||||||
ADD r |
10000ИИИ |
+ |
1 |
4 |
1 |
Сложение регистра и аккумулятора |
ADD M |
86 |
+ |
1 |
7 |
2 |
Сложение памяти и аккумулятора |
ADI b2 |
C6 |
+ |
2 |
7 |
2 |
Сложение непосредственных данных и аккумулятора |
ADC r |
10001ИИИ |
+ |
1 |
4 |
1 |
Сложение регистра и аккумулятора с переносом |
ADC M |
8E |
+ |
1 |
7 |
2 |
Сложение памяти и аккумулятора с переносом |
Продолжение таблицы 5
Мнемокод |
Код |
Флажки |
Число |
Содержание |
||
байтов |
тактов |
циклов |
||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Команды арифметических и логических операций |
||||||
ACI b2 |
CE |
+ |
2 |
7 |
2 |
Сложение непосредственных данных и аккумулятора с переносом |
SUB r |
10010ИИИ |
+ |
1 |
4 |
1 |
Вычитание регистра из аккумулятора |
SUB M |
96 |
+ |
1 |
7 |
2 |
Вычитание памяти из аккумулятора |
SUI b2 |
D6 |
+ |
2 |
7 |
2 |
Вычитание непосредственных данных из аккумулятора |
SBB r |
10011ИИИ |
+ |
1 |
4 |
1 |
Вычитание регистра из аккумулятора с заемом |
SBB M |
9E |
+ |
1 |
7 |
2 |
Вычитание памяти из аккумулятора с заемом |
SBI b2 |
DE |
+ |
2 |
7 |
2 |
Вычитание непосредственных данных из аккумулятора с заемом |
INR r |
00ППП100 |
(+) |
1 |
4 |
1 |
Инкремент регистра |
INR M |
34 |
(+) |
1 |
10 |
3 |
Инкремент памяти |
DCR r |
00ППП101 |
(+) |
1 |
4 |
1 |
Декремент регистра |
DCR M |
35 |
(+) |
1 |
10 |
3 |
Декремент памяти |
INX rp |
00ПР0011 |
– |
1 |
6 |
1 |
Инкремент пары регистров |
DCX rp |
00ПР1011 |
– |
1 |
6 |
1 |
Декремент пары регистров |
DAD rp |
00ПР1001 |
C |
1 |
10 |
3 |
Сложение регистровой пары H с регистровой парой |
Продолжение таблицы 5
Мнемокод |
Код |
Флажки |
Число |
Содержание |
||
байтов |
тактов |
циклов |
||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Команды арифметических и логических операций |
||||||
DAA |
27 |
+ |
1 |
4 |
1 |
Преобразование аккумулятора в двоично-десятичный код |
ANA r |
10100ИИИ |
+ |
1 |
4 |
1 |
Логическое И регистра и аккумулятора |
ANA M |
A6 |
+ |
1 |
7 |
2 |
Логическое И памяти и аккумулятора |
ANI b2 |
E6 |
+ |
2 |
7 |
2 |
Логическое И непосредственных данных и аккумулятора |
XRA r |
10101ИИИ |
+ |
1 |
4 |
1 |
Исключающее ИЛИ регистра и аккумулятора |
XRA M |
AE |
+ |
1 |
7 |
2 |
Исключающее ИЛИ памяти и аккумулятора |
XRI b2 |
EE |
+ |
2 |
7 |
2 |
Исключающее ИЛИ непосредственных данных и аккумулятора |
ORA r |
10110ИИИ |
+ |
1 |
7 |
2 |
Логическое ИЛИ регистра и аккумулятора |
ORA M |
B6 |
+ |
1 |
4 |
1 |
Логическое ИЛИ памяти и аккумулятора |
ORI b2 |
F6 |
+ |
2 |
7 |
2 |
Логическое ИЛИ непосредственных данных и аккумулятора |
CMP r |
10111ИИИ |
+ |
1 |
4 |
1 |
Сравнение регистра и аккумулятора |
CMP M |
BE |
+ |
1 |
7 |
2 |
Сравнение памяти и аккумулятора |
Продолжение таблицы 5
Мнемокод |
Код |
Флажки |
Число |
Содержание |
||
байтов |
тактов |
циклов |
||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Команды арифметических и логических операций |
||||||
CPI b2 |
FE |
+ |
2 |
7 |
2 |
Сравнение непосредственных данных и аккумулятора |
CMA |
2F |
– |
1 |
4 |
1 |
Инвертирование аккумулятора |
STC |
37 |
C |
1 |
4 |
1 |
Установка флажка переноса |
CMC |
3F |
C |
1 |
4 |
1 |
Инвертирование флажка переноса |
RLC |
07 |
C |
1 |
4 |
1 |
Циклический сдвиг аккумулятора влево |
RRC |
0F |
C |
1 |
4 |
1 |
Циклический сдвиг аккумулятора вправо |
RAL |
17 |
C |
1 |
4 |
1 |
Циклический сдвиг аккумулятора влево через разряд переноса |
RAR |
1F |
C |
1 |
4 |
1 |
Циклический сдвиг аккумулятора вправо через разряд переноса |
Команды управления |
||||||
JMP b3b2 |
C3 |
– |
3 |
10 |
3 |
Безусловный переход |
Jусл b3b2 |
11УУУ010 |
– |
3 |
10 |
3 |
Условный переход |
CALL b3b2 |
CD |
– |
3 |
18 |
5 |
Безусловный вызов подпрограммы |
Cусл b3b2 |
11УУУ100 |
– |
3 |
11/18 |
3/5 |
Условный вызов подпрограммы |
RET |
C9 |
– |
1 |
10 |
3 |
Возврат |
Rусл |
11УУУ000 |
– |
1 |
5/11 |
1/3 |
Возврат при условии |
RST n |
11nnn111 |
– |
1 |
11 |
3 |
Повторный запуск |
SPHL |
F9 |
– |
1 |
6 |
1 |
Пересылка пары регистров H в SP |
Окончание таблицы 5
Мнемокод |
Код |
Флажки |
Число |
Содержание |
||
байтов |
тактов |
циклов |
||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Специальные команды |
||||||
PUSH rp |
11РП0101 |
– |
1 |
11 |
3 |
Пересылка пары регистров в стек |
PUSH PSW |
F5 |
– |
1 |
11 |
3 |
Пересылка аккумулятора и регистра флажков в стек |
POP rp |
11РП0001 |
– |
1 |
10 |
3 |
Загрузка регистровой пары из стека |
POP PSW |
F1 |
+ |
1 |
10 |
3 |
Загрузка аккумулятора и регистра флажков из стека |
XTHL |
E3 |
– |
1 |
18 |
5 |
Обмен между регистровой парой H и стеком |
PCHL |
E9 |
– |
1 |
5 |
1 |
Пересылка регистровой пары H в PC |
IN port |
DB |
– |
2 |
10 |
3 |
Ввод |
OUT port |
D3 |
– |
2 |
10 |
3 |
Вывод |
EI |
FB |
– |
1 |
4 |
1 |
Разрешение прерывания |
DI |
F3 |
– |
1 |
4 |
1 |
Запрещение прерывания |
HLT |
76 |
– |
1 |
7 |
2 |
Останов |
NOP |
00 |
– |
1 |
4 |
1 |
Нет операции |
RIM |
20 |
– |
1 |
4 |
1 |
Чтение маски прерывания |
SIM |
30 |
– |
1 |
4 |
1 |
Запись маски прерывания |