- •1. Основные понятия и определения мпс
- •2. Понятие об архитектуре мп. Классификация мп.
- •3.Обобщенная структура мп. Назначение элементов структуры.
- •4.Рабочий цикл мп. (цикл фон-Неймана).
- •8. Структурная схема к580вм80, назначение элементов
- •7. Уго к580вм80, назначение выводов
- •33) Алгоритм функционирования к580вм80
- •12. Организация памяти мпс.
- •11. Организация обмена информацией в мпс на базе к580вм80
- •10. Структура мпс на базе к580вм80, организация шин
- •9 Программная модель мп кр580вм80а имеет вид:
- •14 Режимы адресации к580вм80
- •13. Система команд микропроцессора к580.
- •15. Методика записи программ на ассемблере.
- •16. Структурная схема к1810вм86
- •17. Программная модель к1810вм86.
- •18. Сегментация памяти к1810вм86, методы адресации
- •1) Основные понятия и определения мпс
- •6. Режимы обмена в мпс
- •19. Уго к1810вм86, назначение выводов
- •20. Режимы обмена к1810вм86мк
- •21.Структура микроконтроллера atmel avr
- •23.Система команд, режимы адресации аа
- •24. Схемы портов ввода-вывода мк(в общем)
- •1.2.3. Двунаправленный порт ввода-вывода
- •1.2.4. Квазидвунаправленный порт ввода-вывода
- •1.2.5. Двунаправленный порт ввода-вывода с программным подключением «подтягивающих» резисторов
- •25. Схема порта аа
- •26. Назначение, структура и работа таймеров-счетчиков (в общем виде)
- •27. Схема работы и управление таймеров-счетчиков т0 аа
- •28. Генераторы шим сигналов на таймерах аа
- •29. Классификация последовательных интерфейсов
- •30. Организация последовательного интерфейса rs-232, формат кадра и управление последовательным интерфейсом в Atmel avr
- •31. Средства программно-аппаратной поддержки для разработки программ для Atmel avr
- •32. Структура программы мк Atmel avr
14 Режимы адресации к580вм80
В обозначении команды каким-либо образом определяются каждые, участвующие в операции операнды. Способ определения операнда называется адресацией. Для МПС разработано около 20 режимов адресации, направленных на сокращение длины программы и времени её выполнения. В МП К580 используются следующие виды адресации:
Прямая адресация. Команда содержит полный 16 битный адрес памяти. Команда 3-х байтна.
Непосредственная адресация (Immediate) Команда содержит непосредственно операнд, т.е. байт данных.
К освенная адресация (Indirect). В КОП 2 или 3 бита определяет регистровую пару, которая содержит адрес операнда. B регистровой паре ВС лежит адрес, который надо прочитать.
Р егистровая адресация. КОП содержит группу бит (3), которые указывают на регистр, содержащий операнд. Если встречается регистр М, то подразумевается, что адрес находится в регистровой паре HL. Характерный признак – два операнда.
Неявная адресация. Адрес операнда явно не указан, но он подразумевается, т.е. в самом коде команды закладывается, с каким кодом операнда надо работать.
Стековая. Push – заталкивание в стек; POР – Чтение стека. При этом адрес вершины стека указывается SP. Кроме рассмотренных используются адресации:
Индексная адресация;
Базовая адресация (все адреса вычисляются относительно базового адреса).
13. Система команд микропроцессора к580.
Система команд К580 содержит 78 базовых команд, а с учетом модификации их 244. Все команды можно разбить на следующие группы:
Команды пересылок (97);
Арифметические команды (74);
Логические команды (32);
Команды перехода и возврата (35);
Управляющие команды (6).
1)
а) Типа «регистр-регистр». MOV R1, R2; MVI R, data8; LXI RP, adr16.
б) Типа «регистр-память» MOV R, M; MVI M, data8; MOV M, R; LDA adr16; STA adr16.
Запрещается делать пересылки типа «память-память», а так же из регистра М в него же. Вместо этого используют регистр HLT.
Косвенная адресация через регистровую пару: LDAX RP; STAX RP; LHLD adr16; PUSH RP; POP RP; Циклические пересылки XCHG(HL,DE){RR}, XTHL(HL, вершина стека){RM}; Команды ввода-вывода IN adr8; OUT adr8.
2) Арифметические.
А) Сложение ADD R (A=A+R); ADI data8 (A=A+data8); ADD M (A=A+M[HL]); DAD RP (HLHL+RP);
Б) Сложение с учетом переноса (Carry). ADC R (A=A+R+C {C – флаг переноса}); ADC M; ACI data8.
В) Вычитание SUB R; SUB M; SUI data8
Г) вычитание с учетом заёма (Barrow) SBB M; SBI data8;
Д) Инкрементирование (+1). INR R; INR M; INX RP;
Е) Декрементирование (-1). DCR R; DCR M; DCX RP;
Ж) Десятичная коррекция. DAA.
З) Сравнение CMP R; CMP M;
3) Логические команды.
А) лог «И». ANA R (A&R{AA&R}); ANI data8;
Б) Логическое «ИЛИ» ORA R (A<-AR); ORI data8;
В) Исключающее «ИЛИ» XRA R (AAR); XRI data8;
Г) Инвертирование аккумулятора CMA AнеA
Е) Циклические сдвиги: сдвиг влево RLC
R AL.
Ее отличие в том, что флаг С включают внутрь контура переноса. Сдвиг вправо RRC, а с включеным внутрь контура С – RAR.
4) Команды перехода и возврата.
А) Команды безусловного перехода. JMP adr16. Команды безусловного вызова подпрограммы CALL adr16. Команда безусловного возврата из подпрограммы RET. В стек СК.
Команды условного перехода J<cond> adr16. Условного вызова подпрограммы C<COND> adr16; условного возврата из подпрограммы R<CON> adr16.
|
Z=0 |
Z=1 |
C=0 |
C=1 |
S=0 |
S=1 |
P=0 |
P=1 |
Усл-й переход |
Jnz |
Jz |
Jc |
Jnc |
Jp |
Jm |
Jpo |
Jpe |
Условный вызов |
Cnz |
Cz |
Cc |
Cnc |
Cp |
Cm |
Cpo |
Cpe |
Условный выход |
Rnz |
Rz |
Rc |
Rnc |
Rp |
Rm |
Rpo |
rpe |
Безусловный переход: jm b2b3 (b2b3PC); вызов подпрограммы: CALL b2b3 (H(PC)M[SP-1], L(PC)M[SP-2], b2b3PC). По команде RET происходит следующее: M[SP] L(PC), M[SP]H[PC] восстановление программного счетчика. К этой же группе относятся команды обработки прерываний и команды рестарта N=0…7; RST N – перегружает содержимое счетчика команд в стек, а в младший байт заносится начальный адрес обращений прерываний для которых PCN*8.
RST 0 0000h
0001h
RST 1 0008h
RST 2 0010h
RST 3 0018h
RST 4 0020h
RST 5 0028h
RST 6 0030h
RST 7 0038h
Отличие команды RST от команды CALL состоит в том, что здесь происходит сброс внутреннего триггера разрешения прерывания. После этого запрещается обращение других прерываний.
Управляющие.
HALT – останов. Вызывает прекращение выполнения программы и переход в состояние останова.
NOP – холостая команда. Занимает 4 машинный такта. Используется для задержки и для замены не нужных команд после отладки программы.
EI, DI - команды разрешения/запрещения прерывания.
STC – команды установки флага переноса (С1) SET C.
CMC – команда инвертирования С.