Контроль выполнения команд программы
24. Ввести в ОЗУ коды программы 2.2.
25. Записать на дисплей адрес начала введенной программы.
26. Нажать клавишу . При этом процессор выполнит первую команду. Затем выведет на дисплей в поле адреса новое содержимое программного счетчика, а также код очередной команды по этому адресу. После этого вернется в Монитор и остановится в ожидании нажатия пользователем управляющих клавиш. У пользователя появляется возможность проконтролировать результат выполненной команды.
27. Нажать клавишу и убедится что первая команда действительно записала число 0B в аккумулятор. Теперь необходимо продолжить выполнение программы дальше.
28. Нажать на клавишу при этом микро-ЭВМ выведет последнее содержимое программного счетчика процессора с адресом следующей команды нашей программы.
29. Нажать клавишу три раза подряд при этом микро-ЭВМ выполнит очередные три команды программы.
30. Нажать клавишу , и убедится что в регистровой паре BC записан адрес 0B0B. Затем нажать клавишу , ввести адрес0B0B и проконтролировать наличие в этой ячейке числа 0B.
32. Продолжить представленным выше образом пошаговое выполнение программы и контроль хода выполнения ее команд до последней команды.
Программа 2.2.
Адрес Число Метка Мнемокод Комментарий
0800 3E 0B MVI A,0B ;поместить число 0B в регистр A
0802 47 MOV B,A ;переслать содержимое регистра A в ;регистр B
0803 4F MOV C,A ;переслать содержимое регистра A в ;регистр C
0804 02 STAX B ;число из регистра A записать в память ; ;по адресу в рег. паре BC
0805 3E 00 MVI A,00 ;поместить число 00 в регистр A
0807 47 MOV B,A ;переслать содержимое регистра A в ;регистр B
0808 4F MOV C,A ;переслать содержимое регистра A в ;регистр C
0809 CF RST 1 ;вернуться в Монитор
Содержание отчёта
Отчёт должен содержать:
· функциональную схему УМПК-80;
· текст программы 2.2 с описанием результатов просмотра в точках останова;
· описание машинных циклов исследованных команд в форме таблицы и определение времени выполнения этих команд;
· карту памяти УМПК-80;
· информацию о содержании программно-доступных регистров УМПК-80 после выполнения программы начальной установки микро-ЭВМ.
Контрольные вопросы
1. Объясните назначения элементов функциональной схемы УМПК-80.
2. Каков объём основной памяти УМПК-80? На какие области поделена основная память УМПК-80?
3. Каким может быть максимальный размер основной памяти микроЭВМ с процессором 8080?
4. Какие внешние устройства имеются в составе УМПК-80 и как к ним программно обращаться?
5. Что такое системный Монитор? Какими возможностями обеспечивает пользователя монитор УМПК-80?
6. Какие тесты выполняются автоматически при каждом перезапуске УМПК-80?
7. Для каких целей применяются пошаговые режимы? Когда следует использовать режим шагов команд, а когда – режим шагов машинных циклов?
8. Каковы ограничения на использование пошаговых режимов?
Лабораторная работа № 2
Отдельные команды, простые программы
Цель работы: ознакомиться с системой команд, методами адресации процессора 8080, освоить приёмы документирования программ.
Краткие сведения из теории
Типы команд
Микропроцессор I8080 имеет фиксированный набор команд. Система команд состоит из шести различных типов (групп) команд.
· команды пересылок – обеспечивают операции перемещения однобайтных или двухбайтных операндов между регистрами процессора, памятью данных или памятью программ;
· команды передач управления – обеспечивают безусловные и условные ветвления в программе;
· команды организации подпрограмм – обеспечивают условные и безусловные вызовы подпрограмм и возвраты из подпрограмм;
· команды арифметических, логических и сдвиговых операций, среди которых представлены: арифметические сложение и вычитание, а также логические “И”, “ИЛИ”, “НЕ”, “Исключающее ИЛИ”, сдвига вправо и влево, сравнения;
· команды управления стеком – обеспечивают установку указателя стека, а также операции чтения и записи стека;
· команды ввода, вывода и управления состоянием процессора – обеспечивают операции обмена байтами процессора с регистрами интерфейсов внешних устройств, а также управление триггером разрешения прерываний процессора, перевод процессора в состояние останова и отсутствие операций.
Сведения по этим командам представлены в разделе 1.
Форматы команд
Команды программы хранятся в основной памяти. Они имеют одно-, двух- или трёхбайтный формат (табл. 1.2) В первом байте команды содержится её код, однозначно определяющий эту команду и, в том числе, её формат. Многобайтные команды размещаются в последовательных ячейках памяти. Адрес первого байта команды считается адресом всей команды.