- •Оглавление
- •Микропроцессорная техника
- •Введение
- •1. Описание лабораторного стенда
- •2. Лабораторная работа № 1 синтез управляющего автомата
- •Лабораторный макет управляющего автомата
- •Программирование комбинационной схемы
- •Операционный автомат
- •2.3. Задание
- •2.4. Порядок выполнения работы
- •2.5. Контрольные вопросы
- •3. Лабораторная работа № 2 архитектура однокристального микропроцессора
- •3.1. Описание микроконтроллера
- •3.2. Назначение и использование команд монитора
- •3.2.1. Обращение к программе монитор
- •3.2.2. Команды монитора
- •3.3. Система команд процессора кр580ик80а.
- •3.4. Подключение объекта управления
- •3.5. Задание
- •3.6. Порядок выполнения работы
- •3.7. Контрольные вопросы
- •3.8. Литература
- •4. Лабораторная работа № 3 программное управление исполнительным механизмом
- •4.1. Организация ввода-вывода в эвм
- •4.2. Подключение объекта управления к портам ввода/вывода
- •4.3. Задание
- •4.4. Программирование системы управления
- •4.5. Порядок выполнения работы
- •4.6. Контрольные вопросы
- •4.7. Литература
- •5. Лабораторная работа № 4 вывод данных на внешний динамический индикатор
- •5.1. Организация динамической индикации
- •5.2. Подключение индикатора
- •4.3. Задание
- •5.4. Порядок выполнения работы
- •5.5. Контрольные вопросы
- •5.6. Литература
- •6. Лабораторная работа № 5 реализация релейного закона управления на эвм
- •6.1. Подключение объектов управления
- •6.2. Задание
- •6.3. Порядок выполнения работы
- •6.4. Контрольные вопросы
- •4.6. Литература
- •7. Лабораторная работа № 6 архитектура и система команд процессора intel 286
- •7.1. Архитектура процессора intel 286
- •7.2. Особенности программирования при выполнении работы
- •7.3. Задание
- •7.4. Порядок выполнения работы
- •7.6.3. Примеры команд языка Ассемблер
- •7.7. Литература
- •8. Лабораторная работа № 7 работа intel 286 в реальном масштабе времени
- •8.1. Прерывания в эвм
- •8.2. Задание
- •8.3. Порядок выполнения работы
- •8.4. Контрольные вопросы
- •8.5. . Литература
- •9. Лабораторная работа №8 формирование аналогового сигнала
- •9.1. Плата ввода-вывода l-154
- •9.2. Программное обеспечение платы
- •9.3. Задание
- •9.4. Порядок выполнения работы
- •9.5. Контрольные вопросы
- •9.6. Литература
- •10. Лабораторная работа № 9 Ввод аналогового сигнала
- •10.1. Ввод аналоговыхданных
- •10.2. Задание
- •10.3. Порядок выполнения работы
- •10.4. Контрольные вопросы
- •10.5 Литература
- •11. Лабораторная работа №10 программируемый таймер
- •11.1. Программируемый таймер
- •11.2. Режимы работы таймера
- •11.3. Подключение таймера в контроллере мс2721
- •11.4. Задание
- •11.5. Выполнение работы
- •11.6. Контрольные вопросы
- •11.7. Литература
3.3. Система команд процессора кр580ик80а.
Коды регистров: B - 000 H - 100 Коды пар регистров: BС - 00
С – 001 L - 101 DE - 01
D – 010 M - 110 HL - 10
E – 011 A - 111
Под регистром М понимается ячейка памяти, адрес которой помещен в пару регистров HL.
Некоторые часто употребляемые команды Таблица 3.2.
Структура кода команды |
Выполняемая операция |
Мнемоника |
Признаки |
||||
Z |
S |
C |
V |
P |
|||
|
Команды пересылки |
|
|
|
|
|
|
01 Ri Rj |
1. Регистр- регистр Ri Rj |
MOV Ri, Rj |
- |
- |
- |
- |
- |
00 Ri 110 |
2. Непосредственная загрузка регистра Ri <B2> |
MVI Ri |
- |
- |
- |
- |
- |
00 Ri 001 |
3.Непосредственная загрузка пары регистров Ri <B3> , Rj <B2> При Ri=110; SP <B3> <B2> |
LXI Ri |
- |
- |
- |
- |
- |
|
4. Запоминание/загрузка A и HL |
|
|
|
|
|
|
00000010 |
[(BC)] (A) |
STAX B |
- |
- |
- |
- |
- |
00010010 |
[(DE)] (A) |
STAX D |
- |
- |
- |
- |
- |
00001010 |
A [(BC)] |
LDAX B |
- |
- |
- |
- |
- |
00110010 |
[<B3> <B2>]A |
STA |
- |
- |
- |
- |
- |
00111010 |
A[<B3> <B2>] |
LDA |
- |
- |
- |
- |
- |
00101010 |
L[<B3> <B2>], H[<B3> <B2>]+1 |
LHLD |
- |
- |
- |
- |
- |
|
Положительное/отрицательное приращение |
|
|
|
|
|
|
00 Ri 100 |
Положительное приращение регистра Ri (Ri)+1 |
INP Ri |
+ |
+ |
- |
+ |
+ |
00 Ri 101 |
Отрицательное приращение регистра Ri (Ri)-1 |
DCP Ri |
+ |
+ |
- |
+ |
+ |
00 Ri 0011 |
Положительное приращение пары регистров RiRi+1 ( RiRi+1)+1; При Ri=110 - приращение SP |
INX Ri |
- |
- |
- |
- |
- |
00 Ri 1011 |
Отрицательное приращение пары регистров RiRi+1 ( RiRi+1)-1; При Ri=110 - приращение SP |
DCX Ri |
- |
- |
- |
- |
- |
|
Арифметические и логические операции |
|
|
|
|
|
|
10000 Ri |
A(A)+(Ri) |
ADD |
+ |
+ |
+ |
+ |
+ |
10001 Ri |
A(A)+(Ri)+(TC) |
ADC |
+ |
+ |
+ |
+ |
+ |
10010 Ri |
A(A)-(Ri) |
SUB |
+ |
+ |
+ |
+ |
+ |
Структура кода команды |
Выполняемая операция |
Мнемоника |
Z |
S |
C |
V |
P |
10011 Ri |
A(A)-(Ri) )-(TC) |
SBB |
+ |
+ |
+ |
+ |
+ |
10100 Ri |
A(A)(Ri) |
ANA |
+ |
+ |
0 |
0 |
+ |
10101 Ri |
A(A)(Ri) |
XRA |
+ |
+ |
0 |
0 |
+ |
10110 Ri |
A(A)(Ri) |
ORA |
+ |
+ |
0 |
0 |
+ |
10111 Ri |
A(A)-(Ri); Сравнение |
CMR |
+ |
+ |
+ |
+ |
+ |
|
Арифметические и логические операции с непосредственной адресацией |
|
|
|
|
|
|
11000110 |
A(A)+(B2) |
ADI |
+ |
+ |
+ |
+ |
+ |
11001110 |
A(A)+( B2)+(TC) |
ACI |
+ |
+ |
+ |
+ |
+ |
11010110 |
A(A)-( B2) |
SU1 |
+ |
+ |
+ |
+ |
+ |
11011110 |
A(A)-( B2) )-(TC) |
SBI |
+ |
+ |
+ |
+ |
+ |
11100110 |
A(A)( B2) |
ANI |
+ |
+ |
0 |
0 |
+ |
11101110 |
A(A)( B2) |
XRI |
+ |
+ |
0 |
0 |
+ |
11110110 |
A(A)( B2) |
ORI |
+ |
+ |
0 |
0 |
+ |
11111110 |
A(A)-( B2); Сравнение |
CPI |
+ |
+ |
+ |
+ |
+ |
|
Операции ввода и вывода |
|
|
|
|
|
|
11011011 |
Ввод: A(Входные данные) |
IN |
- |
- |
- |
- |
- |
11010011 |
Вывод: Шина данных (A) |
OUT |
- |
- |
- |
- |
- |
|
Прочие операции |
|
|
|
|
|
|
11111011 |
Разрешение прерывания |
EI |
- |
- |
- |
- |
- |
11110011 |
Запрет прерываний |
DI |
- |
- |
- |
- |
- |
00100111 |
Двоично-десятичная коррекция |
DAA |
+ |
+ |
+ |
+ |
+ |
00000000 |
Отсутствие операции |
NOP |
- |
- |
- |
- |
- |
01110110 |
Останов |
HLT |
- |
- |
- |
- |
- |
Некоторые команды ветвления Таблица 3.3
Условия перехода |
Переходы |
Вызов подпрограмм |
Возврат из подпрограммы |
|||
Код команды |
Мнемоника |
Код команды |
Мнемоника |
Код команды |
Мнемоника |
|
Нет |
11000011 |
JMP |
11001101 |
CALL |
11001001 |
RET |
Не ноль (Tz)=0 |
11000010 |
JNZ |
11000100 |
CNZ |
11000000 |
RNZ |
Ноль (Tz)=1 |
11001010 |
JZ |
11001100 |
CZ |
11001000 |
RZ |
Плюс (Ts)=0 |
11110010 |
JP |
11110100 |
CP |
11110000 |
RP |
Минус (Tz)=0 |
11111010 |
JM |
11111100 |
CM |
11111000 |
RM |