
- •1. Учебно-отладочное устройство «электроника 580»
- •1. 1. Общие сведения
- •1. 2. Технические характеристики уоу
- •1. 3. Устройство и работа уоу
- •1. 4. Включение уоу
- •1. 5. Чтение из памяти и запись информации в память
- •1. 6. Выполнение программы в пошаговом режиме
- •1. 7. Выполнение программы в автоматическом режиме.
- •2. Лабораторная работа №1
- •3. Лабораторная работа № 2
- •3. 1. Машинные циклы выполнения команд
- •3. 2. Программа с прямой адресацией операнда
- •3. 3. Программа с косвенной адресацией операнда
- •3. 4. Задания для самостоятельной подготовки
- •3. 5. Выполнение лабораторной работы
- •3. 6. Содержание отчета
- •3. 7. Вопросы для самоконтроля
- •4. Лабораторная работа № 3
- •4. 1. Команды передачи управления без условия и по условию.
- •4.2. Команды логических операций
- •4.3. Маскирование данных
- •4.4. Задание для самостоятельной подготовки
- •4.5. Выполнение лабораторной работы
- •4.6. Содержание отчета
3. Лабораторная работа № 2
ЗАПИСЬ И ВЫПОЛНЕНИЕ ПРОСТЫХ ПРОГРАММ
Цель работы: запись и чтение программ; исследование выполнения отдельных команд и простых программ; применение различных методов адресации операндов.
3. 1. Машинные циклы выполнения команд
Микропроцессор КР580ВМ80А имеет фиксированный набор команд. Время выполнения команды определяется процессом получения, декодирования и выполнения команды. В зависимости от вида команды время её выполнения может составлять 1 – 5 машинных циклов. Машинный цикл состоит из 3 – 5 машинных тактов. Для КР580ВМ80А имеется 10 различных типов машинных циклов: извлечение кода команды (цикл М1), чтение данных из памяти, запись данных в память, запись в стек и чтение данных из стека, чтение и запись данных во внешние устройства, цикл обслуживания прерываний, останов, обслуживание прерываний в режиме останова. Первым машинным циклом при извлечении любой команды является цикл М1. В каждом машинном цикле МП проверяет состояние сигнала «Готов» на своем входе. При нулевом сигнале на этом входе работа МП приостанавливается. В УОУ это используется для выполнения программы в пошаговом режиме. Одно нажатие клавиши STEP приводит к выполнению одной команды программы.
3. 2. Программа с прямой адресацией операнда
Рассмотрим программу 1, извлекающую число из памяти по адресу 8500, инвертирующую его и записывающую результат в ячейку памяти по адресу 8501.
ПРОГРАММА 1 (в мнемокодах)
Мнемокод
|
Комментарий |
LDA 8500 |
Получить число по адресу 8500 |
CMA |
Инвертировать число |
STA 8501 |
Записать результат по адресу 8501 |
RST4 |
Конец и вызов системной программы «Монитор» |
При составлении программ и их записи в ОЗУ коды команд и числа представляются в шестнадцатеричной системе счисления.
Команды могут быть одно-, двух- или трехбайтные и поэтому должны занимать соответственно одну, две или три ячейки памяти.
ПРОГРАММА 1 (размещение по адресам ячеек памяти)
Адрес
|
Код |
Комментарий |
8400 |
3A |
Код команды LDA |
8401 |
00 |
Младший байт адреса |
8402 |
85 |
Старший байт адреса |
8403 |
2F |
Код команды CMA |
8404 |
32 |
Код команды STA |
8405 |
01 |
Младший байт адреса |
8406 |
85 |
Старший байт адреса |
8407 |
E7 |
Код команды RST 4 |
Предварительную запись программ удобно проводить в более компактной форме. В программе указывается начальный адрес каждой команды и при этом понимается, что в зависимости от длины (одно-, двух- или трехбайтной) команды она будет занимать в памяти от одной до трех последовательных ячеек памяти. При такой записи в левом столбце указываются лишь адреса команд в программе. Это позволяет сократить объем при написании программ и сделать более простым их анализ.
ПРОГРАММА 1 (общий вид записи)
Адрес
|
Код команды |
Мнемокод |
Комментарий |
8400 |
3A 00 85 |
LDA 8500 |
Получить число |
8403 |
2F |
CMA |
Инвертировать число |
8404 |
32 01 85 |
STA 8501 |
Записать число по адресу 8501 |
8407 |
E7 |
RST4 |
Вызвать программу «Монитор»
|
|
|
|
|
При выполнении программ в пошаговом режиме вместо команды RST4 удобнее использовать команду HLT.
В программе 1 применен прямой способ адресации.