Среднее Заочное отделение / 4 семестр / Цифровые и микропроцессорные устройства / Электронный конспект лекций (ЦиМПУ)
.pdf3.2.12 Система команд простого микропроцессора
Команды, выполняемые МП (таблица 3.1), делятся на следующие четыре группы:
-пересылки;
-арифметических и логических операций;
-управления;
-специальные.
Команды пересылки предусматривают передачи данных между регистрами; между регистрами и ячейками памяти; передачу непосредственных данных, находящихся в команде, в регистр, пару регистров или ячейку памяти; обмен между парами регистров.
Арифметические и логические операции выполняются командами сложения,
вычитания, инкрементирования и декрементирования, преобразования данных в двоично-десятичный код, логических операций (конъюнкции, дизъюнкции и сложения по модулю 2), сравнения и инвертирования данных, циклических сдвигов содержимого регистра-аккумулятора.
Команды управления включают в свой состав команды переходов, вызовов подпрограмм, возвратов в основную программу, передачи содержимого пары регистров в стек.
Таблица 3.1 – Система команд простого микропроцессора
|
|
|
|
Число |
|
|
|
Мнемокод |
Код |
Флажки |
байтов |
тактов |
циклов |
Содержание |
|
|
|
|
|
|
|
|
|
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 |
Пересылка непо- |
|
|
|
|
|
|
средственных дан- |
||
|
|
|
|
|
|
||
|
|
|
|
|
|
ных в регистр |
|
|
|
|
|
|
|
|
201
Продолжение таблицы 3.1
1 |
2 |
3 |
4 |
5 |
|
6 |
7 |
Команды пересылки |
|
|
|
|
|
|
|
MVI M, b2 |
36 |
– |
2 |
10 |
|
3 |
Пересылка непо- |
|
|
|
|
|
|
средственных дан- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ных в память |
LXI rp,b3b2 |
00ПР0001 |
– |
3 |
10 |
|
3 |
Загрузка непосред- |
|
|
|
|
|
|
ственных данных в |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
пару регистров |
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 |
Сложение регистра |
|
|
|
|
|
|
|
и аккумулятора с |
|
|
|
|
|
|
|
переносом |
202
Продолжение таблицы 3.1
1 |
2 |
3 |
4 |
5 |
|
6 |
7 |
Команды арифметических и логических операций |
|
|
|||||
ADC M |
8E |
+ |
1 |
7 |
|
2 |
Сложение памяти и |
|
|
|
|
|
|
|
аккумулятора с пе- |
|
|
|
|
|
|
|
реносом |
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 с |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
регистровой парой |
203
Продолжение таблицы 3.1
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 |
4 |
|
1 |
Логическое ИЛИ |
|
|
|
|
|
|
|
регистра и аккуму- |
|
|
|
|
|
|
|
лятора |
ORA M |
B6 |
+ |
1 |
7 |
|
2 |
Логическое ИЛИ |
|
|
|
|
|
|
|
памяти и аккуму- |
|
|
|
|
|
|
|
лятора |
ORI b2 |
F6 |
+ |
2 |
7 |
|
2 |
Логическое ИЛИ |
|
|
|
|
|
|
непосредственных |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
данных и аккуму- |
|
|
|
|
|
|
|
лятора |
CMP r |
10111ИИИ |
+ |
1 |
4 |
|
1 |
Сравнение реги- |
|
|
|
|
|
|
|
стра и аккумулято- |
|
|
|
|
|
|
|
ра |
CMP M |
BE |
+ |
1 |
7 |
|
2 |
Сравнение памяти |
|
|
|
|
|
|
|
и аккумулятора |
204
Продолжение таблицы 3.1
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 |
205
Окончание таблицы 3.1
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 |
Запись маски пре- |
|
|
|
|
|
|
рывания |
Специальные команды связаны с операциями со стеком, загрузкой программного счетчика, вводом/выводом данных, прерываниями, остановом МП и введением пустых циклов NOP.
В первой графе таблицы 3.1 даны мнемокоды команд с обозначениями регистров через r, пар регистров через rp, ячеек памяти через М, третьего и второго байтов через b3b2, адресов ВУ через port. Ссылки на ячейки памяти М подразумевают косвенную адресацию, т. е. адреса этих ячеек берутся из регистровой пары H (регистров H и L) и, следовательно, не нуждаются в указании в самой команде.
206
Во второй графе коды первого байта команды b1 даются в двоичном восьмиразрядном представлении, если требуется указать в них адреса источников и приемников данных, или в двухразрядном шестнадцатеричном представлении в иных случаях. Разряды обобщенных адресов регистров – источников данных выражены буквами ИИИ, регистров-приемников данных – буквами ППП, пар регистров – буквами ПР. Подставляя вместо буквенных символов обобщенные адреса регистров (таблица 3.2), получим коды конкретных вариантов команды.
Таблица 3.2 – Адреса регистров и регистровых пар микропроцессора
|
|
|
Регистры |
|
|
|
|
Пары регистров |
|
||
B |
C |
D |
E |
|
H |
L |
A |
B |
D |
H |
SP |
000 |
001 |
010 |
011 |
|
100 |
101 |
111 |
00 |
01 |
10 |
11 |
Пример 3.1. Из обобщенной формы команды пересылки MOV r1, r2 (пересылка из регистра r2 в регистр r1) получим код для конкретного варианта MOV D, B (пересылка из регистра B в регистр D):
b |
: 01 ППП ИИИ = 01 010 000 |
(2) |
= 50 h. |
||||
1 |
|
|
|
|
|
|
|
|
КОп Адр. r |
1 |
Адр. r |
2 |
Адр. D Адр. B |
|
В рассмотренном примере используется прямая регистровая адресация. Пример 3.2. Из обобщенной формы команды пересылки из регистра в па-
мять MOV М, r получим код для конкретного варианта MOV М, А (пересылка из регистра-аккумулятора в ячейку памяти) при косвенной адресации, т. е. по адресу, содержащемуся в регистровой паре Н:
b1: 01 110 ИИИ = 01 110 111(2) = 77 h.
КОп M Адр. r Адр. A
Пример 3.3. Определим код команды загрузки непосредственных данных (непосредственная адресация) LXI H, 200А h в регистровую пару Н:
b1: 00ПР0001 = 00100001(2) = 21 h;
Адр. rp |
Адр. |
b2: OA h; |
b3: 20 h. |
В командах управления коды условий, при которых выполняется указанная операция, обозначены буквами УУУ. Их расшифровка приведена в таблице 3.3.
207
Таблица 3.3 – Коды условий для команд управления
УУУ |
Мнемокод |
Условия |
000 |
NZ |
Неравенство нулю |
001 |
Z |
Равенство нулю |
010 |
NC |
Отсутствие переноса |
011 |
C |
Наличие переноса |
100 |
PO |
Нечетность |
101 |
PE |
Четность |
110 |
P |
Плюс |
111 |
M |
Минус |
Включая конкретные условия в мнемокоды команд, получаем их варианты. Например, команда условного перехода из обобщенной формы Jусл b3b2 переводится в вариант JNZ b3b2 – переход к команде с адресом b3b2, если признак результата говорит о том, что результат предыдущей операции не равен нулю т. е. содержимое триггера TZ равно нулю. Если же условие перехода не выполняется, то МП считывает очередную команду. Определим код команды JNZ 200C h:
b |
: 00УУУ010 = 11000010 |
(2) |
= С2 h; |
||
1 |
|
|
|
|
|
|
|
|
Код NZ |
|
|
|
b |
: OC h; |
b : 20 h. |
|
|
|
2 |
|
3 |
|
|
В рассмотренной команде используется прямая адресация.
Признаки (флажки) формируются в регистре флажков RF по результатам выполненной операции. Формат регистра RF представлен на рисунке 3.13.
S |
Z |
0 |
AC |
0 |
P |
1 |
C |
бит 7 |
|
|
|
|
|
|
бит 0 |
Рисунок 3.13 – Формат регистра флажков
Значение признака S устанавливается в соответствии со значением старшего разряда результата предыдущей операции. Значение признака S = 0 означает «плюс», S = 1 – «минус», Z = 0 – неравенство нулю, Z = 1 – равенство нулю, C или АС = 1 – наличие переноса, С или АС = 0 – отсутствие переноса, Р = 0 – нечетность результата, Р = 1 – четкость. Разряды 5, 3, 1 содержат константы и для признаков не используются.
В третьей графе таблицы 3.1 прочерк означает, что выполнение команды не сопровождается выработкой флажков – признаков, знак плюс говорит об установке всех признаков, знак плюс в скобках – об установке всех признаков,
208
кроме признака наличия или отсутствия переноса С, а символ С означает, что вырабатывается только признак наличия или отсутствия переноса.
В коде команды рестарта RSTn три разряда отмеченные буквами nnn, формируются системой прерываний или указываются программистом. При выполнении этой команды текущее содержимое программного счетчика РС загружается в стек, а в РС формируется код с нулевым старшим байтом и младшим байтом вида 11nnn111.
Операция сравнения CMP r производится вычитанием операндов с установкой признака результата (Z = 1 – равные операнды, С = 0 – содержимое ре- гистра-аккумулятора больше второго операнда, С = 1 – меньше).
Команды RLC, RRC, RAL и RAR реализуют циклические (кольцевые) сдвиги содержимого регистра-аккумулятора на один разряд влево или вправо без включения (RLC и RRC) или с включение (RAL и RAR) в кольцо разряда С регистра флажков RF (рисунок 3.14).
RF |
|
|
|
|
|
|
|
... |
|
|
... |
... |
|
|
|
|
C |
A |
A |
|
RLC |
||
... |
7 |
|
0 |
||||
|
|
|
|
|
|||
RF |
|
|
|
|
|
|
|
... |
|
|
... |
... |
|
|
|
|
C |
A |
A |
|
RRC |
||
... |
7 |
|
0 |
||||
|
|
|
|
|
|||
RF |
|
|
|
|
|
|
|
... |
|
|
... |
... |
|
|
|
|
C |
A |
A |
|
RAL |
||
... |
7 |
|
0 |
||||
|
|
|
|
|
|||
RF |
|
|
|
|
|
|
|
... |
|
|
... |
... |
|
|
|
|
C |
A |
A |
|
RAR |
||
... |
7 |
|
0 |
||||
|
|
|
|
|
Рисунок 3.14 – Схемы, поясняющие выполнение сдвигов микропроцессором
В четвертой графе таблицы 3.1 указывается формат команды в байтах, а в пятой и шестой графах – числа машинных циклов и тактов, необходимые для выполнения команды. В командах управления число циклов и тактов следует брать из знаменателя, если выполняется условие.
Контрольные вопросы к теме 3.2
1Дайте определение МП.
2Какие основные архитектурные разновидности МП используются в МПС?
3Какие основные узлы входят в состав МПС?
4Какие запоминающие устройства применяются в МПС? Укажите их назначение.
209
5 Укажите особенности, достоинства и недостатки принстонской и гарвардской архитектур МПС.
6Укажите особенности и назначение регистра-аккумулятора в схеме МП.
7Какие регистры МП называются РОН? В чем состоит роль этих регистров?
8Укажите функции регистра команд IR и программного счетчика РС в схеме МП.
9Укажите назначение стека и указателя стека SP в структуре МП.
10 В какие узлы МП загружаются первый, второй и третий байты команды и каково содержимое этих байтов для разных форматов команд (однобайтовой, двухбайтовой и трехбайтовой)?
11 Поясните какие действия выполняет МП в первых трех тактах машинного цикла? 12 Какие изменения в работу МП вносит отсутствие сигнала на входе READY?
13 В чем отличие радиальных и векторных прерываний?
14 Когда МП проверяет наличие запросов прерывания и захвата? Укажите действия МП при их появлении.
15 Поясните сущность прямой и прямой регистровой адресации, а также укажите их достоинства и недостатки.
16 Поясните сущность косвенной адресации и укажите области ее применения. 17 Поясните разницу между непосредственной и прямой адресациями.
18 Какой процесс называют «прямым доступом к памяти»? Какие преимущества дает использование этого процесса в МПС?
19 Какие операции выполняют команды пересылки и команды управления?
20 Какую команду необходимо выполнить перед выполнением команды с косвен-ной адресацией?
Тема 3.3 Программирование микропроцессоров
3.3.1 Приемы программирования микропроцессоров
Микропроцессоры (МП) можно программировать на языках кодовых комбинаций и Ассемблер. В первом случае команды программы представляются в виде кодовых комбинаций в двоичной системе счисления. Это усложняет поиск ошибок, программы трудно читаемы и плохо обозримы, трудно вносить изменения. Наряду с указанными недостатками язык кодовых комбинаций позволяет составлять программы наиболее эффективно. Программы занимают минимальный объем памяти и быстрее исполняются.
При использовании языка Ассемблер программирование упрощается. В этом языке вместо кодовых комбинаций применяется мнемоническая форма записи операций, выполняемых в МП. С помощью мнемоники, взятой из сочетания букв соответствующих английских слов, представляют вид выполняемой операции, операнды и адреса. Каждой команде на языке Ассемблер соответствует
210