
- •Тема 1. 7
- •Тема 2. 22
- •Тема 3. 41
- •Тема 4. 83
- •Основные временные параметры микропроцессора кр580ик80а
- •Программное обеспечение микропроцессора
- •Команды перемещения данных
- •Представлением операнда
- •Команды переходов ( альтернативные команды )
- •Специальные команды
- •Кодирование программы
- •Архитектура последовательного интерфейса кр580ик51
- •Управления от мп
- •Архитектура программируемого таймера кр580ви53
- •И микропроцессором
- •Архитектура бис параллельного интерфейса кр580вв55
- •Сигналами ппи
- •Архитектура контроллера прямого доступа к памяти кр580вт57
- •Архитектура бис программируемого контроллера прерываний кр580вн59
- •Генератор тактовыхимпульсов кр580гф24
- •Системный контроллер и шинный формирователь кр580вк28
- •Буферные регистры кр580ир82 и кр580ир83
- •Шинные формирователи кр580ва86 и кр580ва87
- •Пример подключения микросхемы кр580ви53 к микропроцессорной системе через контроллер прерываний кр580вн59
- •Пример подключения аналого-цифрового преобразователя.
- •Пример совместного использования микросхем комплекта для управления технологическим процессом.
- •Декларирование объектов
- •Структура программы
- •Константы
- •Арифметические операции
- •Преобразование типов операндов арифметических операций
- •Побитовые логические операции, операции над битами
- •Функции вывода информации
- •Стандартные математические функции
- •Условные операторы
- •If (условие ) оператор1;
- •If (условие1) оператор1;
- •Пример использования оператора if
- •Циклические операторы while и do–while
- •Пример использования оператора for
- •Строки, как одномерные массивы символов
- •Указатели и операции над адресами
- •Операция sizeof
- •Указатели на указатели
- •Пример динамического размещения одномерного массива в с
Кодирование программы
ля загрузки программы в память системы все команды должны быть преобразованы в объектные коды, т.е. представлены в виде последовательностей 0 и 1. При машинной трансляции программа в машинных кодах выдается на каком-либо носителе, с которого она сразу может вводиться в память. Кроме того, выводиться распечатка (листинг), содержащая исходную программу в мнемокодах и соответствующие им объектные коды. Для микропроцессоров стало традицией, что распечатка объектной программы выдается в шестнадцатеричной системе кодирования (в HEX – кодах).
Применение шестнадцатеричных кодов при восьмиразрядных машинных словах имеет то преимущество , что обеспечивает очень компактную запись: каждая команда записывается всего двумя символами
Все команды микропроцессора КР.580ИK80A можно свести в одну таблицу, строки которой представляют собой старшие разряды (тетрады) кода операции, а столбцы – младшие разряды. На пересечении указаны мнемокоды команд, соответствующих образовавшимся комбинациям (табл. 2.7).
Таблица 2.7. Машинные коды команд микропроцессора К580
|
Вторая тетрада ( HEX ) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
NOP |
LXI B <B2> <B3> |
STAX B |
INX B |
INR B |
DCR B |
MVI B <B2> |
RLC |
|
--- |
LXI H <B2> <B3> |
STAX D |
INX D |
INR D |
DCR D |
MVI D <B2> |
RAL |
|
--- |
LXI H <B2> <B3> |
SHILD <LADR> <HADR> |
INX H |
INR H |
DCR H |
MVI H <B2> |
DAA |
|
--- |
LXI SP <B2> <B3> |
STA <LADR> <HADR> |
INX SP |
INR M |
DCR M |
MVI M <B2> |
STC |
|
MOV B,B |
MOV B,C |
MOV B,D |
MOV B,E |
MOV B,H |
MOV B,L |
MOV B,M |
MOV B,A |
|
MOV D,B |
MOV D,C |
MOV D,D |
MOV D,E |
MOV D,H |
MOV D,L |
MOV D,M |
MOV D,A |
|
MOV H,B |
MOV H,C |
MOV H,D |
MOV H,E |
MOV H,H |
MOV H,L |
MOV H,M |
MOV H,A |
|
MOV M,B |
MOV M,C |
MOV M,D |
MOV M,E |
MOV M,H |
MOV M,L |
MOV M,M |
MOV M,A |
|
ADD B |
ADD C |
ADD D |
ADD E |
ADD H |
ADD L |
ADD M |
ADD A |
|
SUB B |
SUB C |
SUB D |
SUB E |
SUB H |
SUB L |
SUB M |
SUB A |
A |
ANA B |
ANA C |
ANA D |
ANA E |
ANA H |
ANA L |
ANA M |
ANA A |
B |
ORA B |
ORA C |
ORA D |
ORA E |
ORA H |
ORA L |
ORA M |
ORA A |
C |
RNZ |
POP B |
JMZ <LARD> <HARD> |
JMP <LARD> <HARD> |
CNZ <LARD> <HARD> |
PUSH B |
ADI <B2> |
RST 0 |
D |
RNC |
POP D |
JMC <LARD> <HARD> |
OUT <PORT №> |
CNC <LARD> <HARD> |
PUSH D |
SUI <B2> |
RST 2 |
E |
RPO |
POP H |
JPO <LARD> <HARD> |
XTHL |
CPO <LARD> <HARD> |
PUSH H |
ANI <B2> |
RST 4 |
F |
RP |
POP PSW |
JP <LARD> <HARD> |
DI |
CP <LARD> <HARD> |
PUSH PSW |
ORI <B2> |
RST 6 |
Продолжение табл. 2.7
Вторая тетрада ( HEX ) |
|
|
|
|
|
|
|
|
|
|
|
A |
B |
C |
D |
E |
F |
|
--- |
DAD B |
LDAX B |
DCX B |
INR C |
DCR C |
MVI C <B2> |
RRC |
|
--- |
DAD D |
LDAX D |
DCX D |
INR E |
DCR E |
MVI E <B2> |
RAR |
|
--- |
DAD H |
LHLD <LADR> <HADR> |
DCX H |
INR L |
DCR L |
MVI L <B2> |
CMA |
|
--- |
DAD SP |
LHLA <LADR> <HADR> |
DCX SP |
INR A |
DCR A |
MVI A <B2> |
CMC |
|
MOV C,B |
MOV C,C |
MOV C,D |
MOV C,E |
MOV C,H |
MOV C,L |
MOV C,M |
MOV C,A |
|
MOV E,B |
MOV E,C |
MOV E,D |
MOV E,E |
MOV E,H |
MOV E,L |
MOV E,M |
MOV E,A |
|
MOV L,B |
MOV L,C |
MOV L,D |
MOV L,E |
MOV L,H |
MOV L,L |
MOV L,M |
MOV L,A |
|
MOV A,B |
MOV A,C |
MOV A,D |
MOV A,E |
MOV A,H |
MOV A,L |
MOV A,M |
MOV A,A |
|
ADC B |
ADC C |
ADC D |
ADC E |
ADC H |
ADC L |
ADC M |
ADC A |
|
SBB B |
SBB C |
SBB D |
SBB E |
SBB H |
SBB L |
SBB M |
SBB A |
A |
XRA B |
XRA C |
XRA D |
XRA E |
XRA H |
XRA L |
XRA M |
XRA A |
B |
CMP B |
CMP C |
CMP D |
CMP E |
CMP H |
CMP L |
CMP M |
CMP A |
C |
RZ |
RET |
JZ <LADR> <HADR> |
--- |
JZ <LADR> <HADR> |
JZ <LADR> <HADR> |
ACI <B2> |
RST 1 |
D |
RC |
--- |
JC <LADR> <HADR> |
IN <PORT №> |
CC <LADR> <HADR> |
--- |
SBI <B2> |
RST 3 |
E |
RPE |
PCHL |
JPE <LADR> <HADR> |
HCHG |
CPE <LADR> <HADR> |
--- |
XRI <B2> |
RST 5 |
F |
RM |
SPHL |
JV <LADR> <HADR> |
EI |
CM <LADR> <HADR> |
--- |
CPI <B2> |
RST 7 |