
- •Основы микропроцессорной техники
- •Введение
- •1. Система команд микропроцессора 8080 Представление команд в числовой форме
- •Мнемоническое представление команд Ассемблер
- •Директивы Ассемблера процессора 8080
- •Методы адресации операндов команд
- •Биты признаков
- •Общее представление команд
- •Команды пересылок
- •Однобайтные пересылки
- •Двухбайтные пересылки
- •Команды передачи управления
- •Команды безусловных переходов
- •Команды условных переходов
- •Команды организации подпрограмм
- •Команды безусловных вызовов и возврата
- •Команды условных вызовов и возврата
- •Команды арифметических, логических и сдвиговых операций
- •Команды сложения
- •Команды вычитания
- •Команды логических операций
- •Команды сравнения
- •Команды сдвига
- •Специальные арифметическо-логические команды
- •Команды управления стеком
- •Команды ввода, вывода и управления состоянием процессора Команды ввода и вывода
- •Команды управления прерываниями
- •Команда перевода процессора в состояние останова
- •Учебная микро-эвм умк-80
- •Управление микро-эвм средствами Монитора
- •Чтение и модификация содержимого памяти хххх
- •Чтение и модификация содержимого регистров
- •Запуск программы пользователя
- •Отражение типа машинного цикла через слово состояния
- •Пошаговые режимы
- •Порядок выполнения работы Заполнение памяти средствами Монитора
- •Определение исходного положения области стека
- •Ввод программы средствами Монитора
- •Лабораторная работа № 1.2 Учебная микро-эвм умпк-80
- •Краткие сведения из теории Назначение умпк-80
- •Структура умпк-80 и распределения адресного пространства
- •Управление микро-эвм средствами Монитора
- •Тестирование микро-эвм и начальная установка
- •Порядок выполнения работы Исследование порядка включения умпк-80
- •Исследование содержимого памяти
- •Запись числа в память умпк-80
- •Запись числа в программно-доступные регистры
- •Запуск программы
- •Контроль выполнения команд программы
- •Содержание отчёта
- •Контрольные вопросы
- •Лабораторная работа № 2 Отдельные команды, простые программы
- •Краткие сведения из теории Типы команд
- •Форматы команд
- •Способы адресации операндов
- •Признаки результатов операций
- •Представление программы
- •Порядок выполнения работы Исследование отдельных команд арифметических и логических операций
- •Исследование команд пересылок и способов адресации операндов
- •Исследование команд арифметического сложения
- •Исследование операций сравнения однобайтных чисел
- •Содержание отчёта
- •Контрольные вопросы
- •Библиографический список
Отражение типа машинного цикла через слово состояния
Особенностью машинных циклов процессора 8080 является то, что любой из них начинается с такта выдачи на линии данных байта информации о характеристиках этого машинного цикла (табл. 2.4). Этот байт записывается во внешний регистр состояния системного контроллера и используется для формирования сигналов управления текущим машинным циклом.
Таблица 2.4
Формат слова состояния PSW
№ бита |
Обозн. |
Назначение |
0 |
INTA |
Подтверждение прерывания |
1 |
|
Запись в память или вывод в регистр интерфейса |
2 |
STACK |
Обращение к стеку |
3 |
HLTA |
Подтверждение останова |
4 |
OUT |
Вывод в порт (регистр интерфейса) |
5 |
M1 |
М1 – прием из памяти первого байта команды |
6 |
INP |
Ввод из порта (регистра интерфейса) |
7 |
MEMR |
Чтение из памяти |
Пошаговые режимы
Пошаговые режимы предназначены для практического изучения выполнения процессором отдельных команд, а также для отладки программ. Он обеспечивается схемой пошагового выполнения (рис.1.1) и средствами системного Монитора.
Средствами пошагового выполнения программ выполняется перевод процессора в состояние останова после выполнения очередного шага. При этом производится выдача на соответствующие светодиоды информации о состоянии линий данных, адреса и регистра состояния в момент останова, т.е. перед началом выполнения следующего шага. Индицируется состояние:
линий данных;
линий адреса;
битов регистра состояния системного контроллера.
Переход в режим пошагового выполнения программ и возврат из него осуществляется переключателем . В данной микро-ЭВМ возможны два варианта пошагового выполнения программ в зависимости от величины шага:
шаг равен одной команде;
шаг равен одному машинному циклу команды.
Выбор одного из пошаговых режимов выполняется переключателем . Нажатое положение переключателя соответствует выбору шагов машинного цикла, а отжатое – выбору шагов команд.
Пошаговый режим машинных циклов позволяет увидеть внутрикомандные действия процессора и его следует применять чтобы прояснить ход выполнения отдельных команд.
Пошаговый режим командных циклов позволяет увидеть внутрипрограммные действия процессора и его следует применять для контроля хода выполнения программы. При этом можно выходить из пошагового режима в монитор для контроля результатов выполнения отдельных команд, а затем вновь возвращаться к пошаговым действиям. Это реализуется следующими последовательными операциями:
прервать выполнение программы нажатием клавиши ;
переключением выйти из пошагового режима;
нажать клавишу ;
обычным образом просмотреть из Монитора интересующие регистры и ячейки памяти;
переключением вернуться в пошаговый режим;
запустить программу от текущего содержимого счётчика команд, при том вводить стартовый адрес от останова необязательно.
Для продолжения выполнения шагов необходимо нажимать клавишу . В ходе выполнения шагов появляется возможность контролировать последовательность выполнения процессором его действий по интерпретации команд:
для шагов команд – последовательность выполнения команд программы;
для шагов машинных циклов – последовательность выполнения обращений к шине при выполнении текущих команд.
Информация для пользователя в пошаговых режимах отображается в двоичном числовом виде при помощи светодиодов (двоичной 1 соответствует свечение светодиода). Монитор эту же информацию отображает в виде шестнадцатеричных чисел: для компактности представления длинные двоичные числа группируются по 4 разряда (декадно), образуя шестнадцатеричные цифры. Соответствие двоичных комбинаций шестнадцатеричным, а также десятичным цифрам показано в табл. 2.5.: b (binary) – двоичная; h (hexadecimal) – шестнадцатеричная; d (decimal) – десятичная.