
- •Цифровые и микропроцессорные устройства
- •Часть 3
- •Введение
- •Порядок выполнения работы
- •Структурная схема умк
- •Назначение органов управления, ввода и индикации
- •Включение и запуск умк
- •Команды системной программы монитор умк
- •Команда просмотр и модификация содержимого ячейки памяти
- •Команда просмотр и модификация содержимого регистров
- •Команда заполнение массива памяти константой
- •5.4 Команда старт программы
- •Команда подсчет контрольной суммы
- •Команда перемещение массива памяти
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды загрузки регистров общего пользования
- •Команды манипуляции 16-разрядными данными
- •Команды загрузки регистра указателя стека
- •Команды пересылки
- •Команда загрузки счетчика команд pchl
- •Команды прямой записи в память
- •Команды чтения памяти по прямому адресу
- •Команды чтения-записи памяти при косвенной адресации через регистровую пару hl
- •Команды чтения/записи при прямой адресации через регистровые пары bc, de
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды сложения 8-разрядных чисел
- •Команды вычитания 8-разрядных чисел
- •Команды двойного сложения
- •Команды инкремента
- •Команды декремента
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Команды логического сложения
- •Команды логического умножения
- •Команды исключающие или
- •Команда инверсия
- •Команды сравнения
- •Теоретическое обоснование
- •Команды сравнения с содержимым регистра
- •Команды сдвига
- •Теоретическое обоснование
- •Команды циклического сдвига
- •Команды сдвига через перенос
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды безусловного перехода
- •Команды перехода по признаку – ноль
- •Команды перехода по признаку с – перенос
- •Команды перехода по признаку р – четность
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды записи в стек, восстановления и обмена стеком
- •Команды вызова подпрограммы и возврата
- •Изучение архитектуры однокристального микроконтроллера pic16f84 Цель работы
- •Подготовка к выполнению работы
- •Вопросы для самоконтроля
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Литература
- •Пример выполнения задания на симуляторе sim8085 microprocessor simulator
- •Содержание
- •Цифровые и микропроцессорные устройства
- •Часть 3
Приборы, оборудование и документация
Учебный микропроцессорный комплект (УМК).
Методические указания к лабораторной работе.
Порядок выполнения работы
Проверка подготовки учащихся к занятию по вопросам для самоконтроля в виде фронтального или программированного опроса и инструктаж по технике безопасности.
Включить и привести в рабочее состояние УМК.
Установить автоматический режим работы УМК. Для этого отжать клавиши РБ/ШГ и КМ/ЦК.
Выполнить программы, содержащие команды манипуляции стеком, вызова подпрограммы и возврата. Вначале следует выполнить контрольную программу, а затем задание для каждого вида команды. Методические рекомендации по выполнению этих заданий приведены в методических указаниях к данной лабораторной работе.
После проверки преподавателем результатов выключить питание УМК и вынуть вилку шнура питания из розетки.
Ответить на контрольные вопросы.
Оформить отчет и сдать зачет.
Содержание отчета
Наименование и цели лабораторной работы.
Условия, алгоритмы, проверочные программы и результаты выполнения заданий № 1, 2 в виде таблиц.
Краткие пояснения по ходу выполнения и результатам для каждого задания.
Ответы на контрольные вопросы.
Контрольные вопросы
Поясните, как сохранить в стеке содержимое пары регистров DE. Укажите необходимые команды и поясните действия МП.
Поясните, как восстановить содержимое пары регистров DE из стека. Укажите необходимые команды и поясните действия МП.
Поясните, как МП осуществляет сравнение содержимого пар регистров HL и DE в подпрограмме сравнения (таблица 81).
Поясните, как МП осуществляет подсчет КС в подпрограмме подсчета КС (задание 2).
Требования к знаниям и умениям учащихся
В результате выполнения лабораторной работы учащиеся должны знать:
систему команд МП КР580ВМ80;
команды манипуляции стеком, вызова подпрограммы и возврата;
назначение команд системной программы МОНИТОР.
Должны уметь:
составлять программы, содержащие последовательности команд манипуляции стеком, вызова подпрограммы и возврата;
готовить к работе УМК;
вводить и выполнять программы в автоматическом режиме.
Методические указания
Теоретическое обоснование
Стек – это специальная область ОЗУ, используемая для сохранения и восстановления данных, а также адресов возврата при вызове подпрограммы. Нижняя граница области стека определяется 16-разрядным регистром-указателем стека SP. В микропроцессорной системе предусмотрены три типа операций со стеком:
запись в стек;
восстановление;
обмен стеком.
Запись в стек осуществляется при сохранении содержимого пар регистров (BC, DE, HL, PSW), а также при вызове подпрограммы (адрес возврата). Запись в стек производится следующим образом:
из указателя стека SP вычитается 1;
по адресу указателя стека записывается старший байт (содержимое ст. регистра или ст. байта адреса);
из указателя стека вычитается 1;
записывается младший байт.
Например, при сохранении содержимого пары регистров BC указатель стека и сам стек будут выглядеть:
|
область стека |
Значение после записи → SP-2 |
C |
SP-1 |
B |
Исходное значение → SP → |
занятая ячейка |
Восстановление содержимого пар регистров и возврат осуществляется в обратном порядке:
по адресу в указателе стека считывается младший байт;
к содержимому указателя стека прибавляется 1;
считывается содержимое старшего байта;
к указателю прибавляется 1.
Восстановление содержимого пары регистров BC осуществляется следующим образом:
Исходное значение → SP → |
C |
SP+1 |
B |
Значение после восстановления SP+2 |
|
При обмене стеком осуществляется обмен содержимого верхнего элемента стека и содержимого пары регистров HL. Значение указателя стека при этом не изменится.
|
область стека |
|
L ← |
|
← SP |
H ← |
|
|
|
|
|
Восстановление содержимого пар регистров из стека должно производится в обратном порядке записи. Так, например, если в стек была произведена запись в последовательности: BC, DE, HL – восстановление должно производится в обратном порядке: HL, DE, BC. Таким образом, стек работает по принципу «первым пришел, последним ушел».
При вызове подпрограммы в стек записывается адрес команды, следующей за командой вызова подпрограммы. Затем, при возврате из подпрограммы, из стека в счетчик команд записывается адрес возврата. Необходимо следить за тем, чтобы непосредственно перед выполнением команды возврат из подпрограммы верхним элементом стека являлось значение адреса возврата. То есть, чтобы между командами вызова подпрограммы и возврата не было загрузки стека без восстановления.