- •Цифровые и микропроцессорные устройства
- •Часть 4
- •07.04 2014 Г., протокол № 10
- •Введение
- •Лабораторная работа № 12составление линейных и циклических программ на языке ассемблер Цель работы
- •Подготовка к выполнению работы
- •Вопросы для самоконтроля
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Лабораторная работа № 13обучение работе на симуляторе микропроцессора Sim8085 Microprocessor Simulator
- •Содержание отчета
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •2 Индивидуальное задание № 14. 1
- •3 Индивидуальное задание № 14. 2
- •4 Индивидуальное задание № 14. 3
- •Лабораторная работа № 15логические команды и команды сдвига Цель работы
- •Подготовка к выполнению работы
- •Вопросы для самоконтроля
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Команды сравнения
- •Команды сдвига
- •Индивидуальное задание № 15. 1
- •Индивидуальное задание № 15. 2
- •Индивидуальное задание № 15. 3
- •Лабораторная работа № 16 команды управления Цель работы
- •Подготовка и выполнение работы
- •Вопросы для самоконтроля
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •1 Теоретическое обоснование
- •2 Индивидуальное задание № 16. 1
- •3 Индивидуальное задание № 16. 2
- •Лабораторная работа № 17обучение работе в интегрированной среде mplab ide
- •Содержание отчета
- •Контрольные вопросы
- •Методические указания
- •1 Структурная схема учебного стенда нтц – 31.000
- •2 Органы управления учебного стенда
- •Цель работы
- •Подготовка к выполнению работы
- •Вопросы для самоконтроля
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •1. 2 Общий формат инструкций и директив
- •1. 3 Директивы Ассемблера
- •1.4 Числовые константы и системы счисления
- •2 Тренировочный пример составления исходного кода программы
- •Лабораторная работа № 19исследование устройств ввода-вывода дискретных сигналов в микропроцессорных системах на базе миКроконтроллера семейства dsPic33f Цель работы
- •Подготовка к выполнению работы
- •Вопросы для самоконтроля
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •1 Краткие теоретические сведения
- •2 Схема электрическая принципиальная к лабораторной работе
- •3 Алгоритм и листинг программы к заданию № 19. 1
- •4 Алгоритм и листинг программы к заданию № 19. 2
- •Лабораторная работа № 20реализация временных функций в микропроцессорных системах на базе миКроконтроллера семейства dsPic33f Цель работы
- •Подготовка к выполнению работы
- •Вопросы для самоконтроля
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •1 Краткие теоретические сведения
- •1.1 Реализация временных функций
- •1.2 Метод программных циклов
- •1.3 Использование таймера/счётчика
- •1.4 Схема электрическая принципиальная к лабораторной работе
- •1. 5 Листинг программы для создания проекта lr20_1
- •1.6 Листинг программы для создания проекта lr20_2
- •1.7 Листинг программы для создания проекта lr20_3
- •Литература
- •Содержание
- •Цифровые и микропроцессорные устройства
- •Часть 4
Требования к знаниям и умениям учащихся
В результате выполнения лабораторной работы учащиеся должны знать:
систему команд МП Intel 8085A;
особенности команд управления.
Должны уметь:
составлять программы для простых восьмиразрядных МП на языке Ассемблер, содержащие команды управления;
выполнять ввод, отладку и выполнение программ на симуляторе МП Sim 8085 Microprocessor Simulator.
Методические указания
1 Теоретическое обоснование
Команды управления МП Intel 8085A включают в свой состав команды переходов, вызовов подпрограмм, возвратов в основную программу, передачи содержимого пары регистров в стек.
Существуют два типа команд переходов: безусловный и условный.
При выполнении команды безусловного перехода осуществляется передача управления по адресу, заданному во втором и третьем байтах команды, либо по адресу, заданному в регистровой паре.
Команды условного перехода выполняются в том случае, если установлен или сброшен соответствующий бит признака, в противном случае команда игнорируется и выполняется следующая за ней команда.
Существуют команды условного перехода для следующих битов регистра признаков:
бита нуля;
бита переноса;
бита знака;
бита четности.
Для каждого бита признака предусмотрены две команды перехода: переход по установленному биту признака (=1) и по сброшенному биту признака (=0).
Соответствие выполняемых команд и признаков приведены в таблице 16.1.
Таблица 16.1 – Соответствие выполняемых команд и признаков
Признак |
Ноль, Z |
Перенос, С |
Четность, Р |
Знак, S | |||||||
Команда |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 | |||
JZ |
да |
– |
– |
– |
– |
– |
– |
– | |||
JNZ |
– |
да |
– |
– |
– |
– |
– |
– | |||
JC |
– |
– |
да |
– |
– |
– |
– |
– | |||
JNC |
– |
– |
– |
да |
– |
– |
– |
– | |||
JPE |
– |
– |
– |
– |
да |
– |
– |
– | |||
JPO |
– |
– |
– |
– |
– |
да |
– |
– | |||
JM |
– |
– |
– |
– |
– |
– |
да |
| |||
JP |
– |
– |
– |
– |
– |
– |
– |
да |
Стек – это специальная область ОЗУ, используемая для сохранения и восстановления данных, а также адресов возврата при вызове подпрограммы. Нижняя граница области стека определяется 16-разрядным регистром-указателем стека SP. В микропроцессорной системе предусмотрены три типа операций со стеком:
запись в стек;
восстановление;
обмен стеком.
Запись в стек осуществляется при сохранении содержимого пар регистров (BC, DE, HL, PSW), а также при вызове подпрограммы (адрес возврата). Запись в стек производится следующим образом:
из указателя стека SPвычитается 1;
по адресу указателя стека записывается старший байт (содержимое ст. регистра или ст. байта адреса);
из указателя стека вычитается 1;
записывается младший байт.
Восстановление содержимого пар регистров и возврат осуществляется в обратном порядке:
по адресу в указателе стека считывается младший байт;
к содержимому указателя стека прибавляется 1;
считывается содержимое старшего байта;
к указателю прибавляется 1.
При вызове подпрограммы в стек записывается адрес команды, следующей за командой вызова подпрограммы. Затем, при возврате из подпрограммы, из стека в счетчик команд записывается адрес возврата. При этом необходимо следить за тем, чтобы непосредственно перед выполнением команды возврата из подпрограммы верхним элементом стека являлось значение адреса возврата, следовательно, чтобы между командами вызова подпрограммы и возврата не было загрузки стека без восстановления.