
- •Компьютерная и микропроцессорная техника в электротехнологии
- •Введение
- •Лабораторная работа № 1. Использование специальных возможностей excel
- •Лабораторная работа № 2. Средства автоматизации научно-исследовательских работ. Среда mathcad. Часть I.
- •Литература
- •Лабораторная работа № 3. Средства автоматизации научно-исследовательских работ. Среда mathcad. Часть II.
- •Литература
- •Лабораторная работа №4. Matlab в задачах вычислительной математики
- •Лабораторная работа №5. Введение в Simulink
- •Графопостроитель ху Graph
- •Блок алгебраического контура Algebraic Constraint
- •Разработка структурной модели и ее исследование.
- •Задание:
- •3.2. Задание:
- •Выводы по работе.
- •Лабораторная работа №6. Моделирование логических устройств в среде matlab/Simulink.
- •Лабораторная работа №7. Исследование работы триггеров в среде Simulink. Регистры и счетчики. Связь логических и структурных схем в Simulink.
- •Лабораторная работа № 8. Изучение архитектуры микропроцессорной системы "микротренажер мт-1804".
- •Лабораторная работа №9. Изучение архитектуры микропроцессорной системы "электроника-580".
- •Литература
- •Дополнительная литература
- •Лабораторная работа №10. Программирование микропроцессорной системы "электроника-580.
- •Литература
- •Дополнительная литература
- •Требования к оформлению отчетов по лабораторным работам
- •Содержание
Лабораторная работа №9. Изучение архитектуры микропроцессорной системы "электроника-580".
Цель работы: знакомство с конструкцией, назначением органов управления и индикации микропроцессорной системы "Электроника-580", приобретение навыков практической работы с устройством, освоение основных возможностей служебной программы МОНИТОР, а также разработка простейших программ на языке Ассемблера, реализующих арифметические, логические, сдвиговые операции над операндами и основные алгоритмические процедуры в пошаговом режиме.
Подготовка к работе
1. Подготовка к работе должна начаться с изучения материала разд. 1 пособия [1], при этом особое внимание следует уделить следующим вопросам:
архитектура микропроцессора К580ВМ80 (МП580) (рис.3 [1]), программно-доступные элементы структуры МП580 (рис.4 [1]);
архитектура микропроцессорной системы "Электроника-580" (МПС-Э580) (рис.1 и приложение 1 [1]);
- распределение адресного пространства в МПС-Э580 (рис.2 [1]);
- форматы команд, способы адресации данных и команд в МП580;
- основные возможности системы команд МП580.
2. Ознакомиться с описанием конструкции МПС-Э580 (разд. 2 [1]), обращая внимание на следующие моменты:
- состав и назначение клавиш и переключателей на панели управления МПС-Э580;
- состав и назначение органов индикации на панели МПС-Э580.
3. Познакомиться с описанием основных процедур взаимодействия оператора с МПС-Э580(разд. 3[1]):
включение устройства;
чтение содержимого ячеек памяти (ЯП) и регистров МП580;
- запись программы и данных в память МПС-Э580, запись данных в регистры МП580, исправление допущенных при этом ошибок;
- выполнение программы в пошаговом режиме (разд. 4 [1]),
4. При непосредственной подготовке к лабораторной работе необходимо:
ознакомиться с индивидуальным заданием (задачи 9.1, 9.2 и 9.3);
составить блок-схемы алгоритма выполнения каждой из задач 9.1 - 9.3;
записать программы на языке Ассемблера для задач 9.1-9.3;
- выполнить трансляцию программ с языка Ассемблера в машинные коды МП580, подготовить листинги загрузки (адрес ЯП - содержимое ЯП).
Размещение программ в памяти МПС-Э580 следует осуществлять с учетом распределения адресного пространства в МПС-Э580 (рис.2 [1]). Целесообразно небольшие программы размещать с адреса 8200Н.
Допуск к работе в лаборатории происходит при наличии оформленного протокола, содержащего блок-схемы алгоритмов и загрузочные листинги программ для задач 9.1 - 9.3 в соответствии с индивидуальным заданием.
Задание к лабораторной работе №9
Задача 9.1. Выполнить загрузку регистра R операндом D (D → R), организовать цикл по условию Z=0, декрементируя содержимое регистра R при положительных значениях D и инкрементируя (R) при отрицательных D. При выходе из цикла вернуться к загрузке регистра R операндом D (D → R) (табл. 9.1).
Таблица 9.1
Задача 9.2. Выполнить загрузку аккумулятора А кодом К (К → А), организовать цикл по условию CY = 0 или CY = 1, выполняя циклический или арифметический сдвиг влево или вправо в соответствии с индивидуальным заданием. При выходе из цикла вернуться к загрузке аккумулятора А кодом К (К → А) (табл. 9.2).
Таблица 9.2
№ вар. |
CY |
Код |
Сдвиг |
№ вар. |
CY |
Код |
Сдвиг |
1 |
1 |
0001 0000 |
Цикл., вправо |
14 |
0 |
1110 1111 |
Цикл., влево |
2 |
0 |
1101 1111 |
Цикл., влево |
15 |
1 |
0001 0000 |
Арифм., вправо |
3 |
1 |
0000 1000 |
Арифм., вправо |
16 |
0 |
1101 1111 |
Арифм., влево |
4 |
0 |
1111 0111 |
Арифм., влево |
17 |
1 |
0010 0000 |
Цикл., вправо |
5 |
1 |
0000 0100 |
Цикл., вправо |
18 |
0 |
1111 0111 |
Цикл., влево |
6 |
0 |
1110 1111 |
Цикл., влево |
19 |
0 |
0000 0010 |
Арифм., вправо |
7 |
1 |
0001 0000 |
Арифм., вправо |
20 |
1 |
1011 1111 |
Арифм., влево |
8 |
0 |
1101 1111 |
Арифм., влево |
21 |
0 |
0000 1000 |
Цикл., вправо |
9 |
1 |
0010 0000 |
Цикл., вправо |
22 |
1 |
0000 0100 |
Цикл., влево |
10 |
0 |
1111 0111 |
Цикл., влево |
23 |
0 |
1110 1111 |
Арифм., вправо |
11 |
1 |
0000 0010 |
Арифм., вправо |
24 |
1 |
0001 0000 |
Арифм., влево |
12 |
0 |
1011 1111 |
Арифм., влево |
25 |
0 |
1101 1111 |
Цикл., вправо |
13 |
1 |
0000 1000 |
Цикл., вправо |
26 |
1 |
0010 0000 |
Цикл., влево |
Задача 9.3. В регистре R МП580 находится неизвестный 8-разрядный код К. Составить программу, которая подсчитает число единичных разрядов в записи кода К и разместит результат подсчета в регистре r. Регистры R и r определены в индивидуальном задании (табл.9.3), код К задается преподавателем при проверке работоспособности программы. Завершить текст программы командой RST4 (код команды - Е7).
Таблица 9.3
Порядок выполнения работы
При выполнении задач следует придерживаться следующего порядка:
В режиме ОТЛАДКА занести программу в память МПС-Э580, используя шестнадцатеричную форму записи двоичных чисел (разд. 3 [1]).
После осуществления записи программы в память осуществить чтение содержимого используемой области памяти с целью контроля соответствия ее содержимого листингу программы.
В задачах 9.1 и 9.2 следует использовать пошаговый режим выполнения программы (разд. 4 [1]). Провести самостоятельное тестирование работоспособности каждой программы, фиксируя после исполнения каждой команды содержимое используемых регистров и значения признаков результата Z и CY в листинге программы.
Убедившись в правильной работе тестируемой программы, продемонстрировать преподавателю полученное решение.
4. Решение задачи 9.3 необходимо проверить самостоятельно, используя пошаговый режим выполнения программы (разд. 4 [1]). Для этого следует перед исполнением программы занести в регистр R произвольное значение кода и убедиться в правильной работе программы, фиксируя в листинге программы после исполнения каждой команды содержимое используемых регистров и значений признаков результата.
Если решение правильно, то можно выполнить задачу 9.3 в непрерывном режиме работы МПС-Э580 (разд. 6 [1]). Убедившись в правильной работе программы, продемонстрировать преподавателю полученное решение.
Вопросы для самопроверки
Сколько прогрограммно-доступных 8-разрядных регистров имеется в МП580? Назовите их. Сколько регистровых пар образовано на их основе? Какие регистры входят в состав каждой регистровой пары?
Какой объем адресуемой памяти может быть в МПС на основе МП580? Как записать младший и старший адреса полного адресного пространства в двоичной и в шестнадцатеричной форме?
Как распределено в МПС-Э580 адресное пространство между ПЗУ и ОЗУ? Каковы объемы ПЗУ и ОЗУ в МПС-Э580?
Какие адреса в адресном пространстве ОЗУ нельзя использовать при размещении программ пользователя? Как называется эта область адресов?
С какого адреса предпочтительнее размещать программы пользователя в ОЗУ МПС-Э580? Почему?
Какую область адресов ОЗУ занимает стековая память в МПС-Э580? Как изменяется размер области ОЗУ пользователя при работе стека?
Как на индикаторе МПС-Э580 отображаются шестнадцатеричные цифры В и D? При выводе каких сообщений могут появляться буквы S, Р, R ? Как отображается буква R?
Сколько разрядов индикатора используется при отображении содержимого ячейки памяти? При отображении содержимого регистра? При отображении содержимого регистровой пары? Что выводится на индикатор в каждом из названных случаев?
Что означает символ "запятая", выводимый в разряде 6 индикатора?
В каких случаях на индикаторе может появиться сообщение "Err"? Какие действия при этом следует предпринять?
Какое событие происходит при первом нажатии клавиши "MEM"? При последующих нажатиях?
Какими способами можно контролировать значение признаков результата Z и CY при пошаговом исполнении программы? А значения других признаков результата (S, АС, Р)?