
- •Лабораторная работа № 1 Ознакомление с работой на учебной микро-эвм.
- •Структура учебной микро-эвм.
- •Адресация в учебной микро-эвм.
- •Директивы монитора.
- •Лабораторная работа № 2 Запись и выполнение простых программ
- •Лабораторная работа № 3 Ввод - вывод, маскирование данных и организация условных переходов.
- •Лабораторная работа 4 Подпрограмма и стек
- •Лабораторная работа n5 Подключение дисплея и клавиатуры к микро-эвм
Лабораторная работа № 2 Запись и выполнение простых программ
Цель работы: исследование выполнения микропроцессором отдельных команд и простых программ; исследование различных методов адресации в программах; запись программ.
Краткие сведения из теории.
Микропроцессор БИС КР580ИК80 имеет фиксированный набор команд. Время выполнения команды определяется процессом получения, декодирования и выполнения команды. Это время можно представить состоящим из ряда временных интервалов.
Наиболее короткий временной интервал, равный периоду синхросигналов МП БИС, называется машинным тактом.
Время, необходимое для извлечения 1 байт информации из памяти или внешнего устройства или выполнения команды, определяемой одним машинным словом, называется машинным циклом.
Машинный цикл для МП БИС может включать в себя 3...5 машинных тактов. В зависимости от вида команды время выполнения может состоять из 1...5 машинных циклов. Для МП БИС имеется 10 различных циклов:
извлечение кода команды (цикл М1);
чтение данных из памяти;
запись данных в память;
извлечение данных из стека;
запись данных в стек;
ввод данных из внешнего устройства;
запись данных во внешнее устройство;
цикл обслуживания прерывания;
останов;
обслуживание прерывания в режиме останова.
Первым машинным циклом при извлечении любой команды является цикл М1.
На каждом машинном цикле МП БИС проверяет состояние сигнала « готов» на своем входе. Нулевой сигнал на этом входе приостанавливает нормальную работу МП БИС, при этом на магистралях микро-ЭВМ присутствует вся информация, передаваемая на рассматриваемом машинном цикле. В учебной микро-ЭВМ это используется для исследования выполнения команд по машинным циклам. В этом режиме информация на магистралях микро-ЭВМ отображается светодиодами состояния.
Запись программы.
Программа записывается в микро-ЭВМ в последовательных ячейках памяти.
Рассмотрим простейшую программу ( программа П.1), извлекающую число из адреса памяти 0В00, инвертирующую его и записывающую результат в адрес памяти 0В01.
Программа П.1 (в мнемокодах)
-
Мнемокод
Комментарий
LDA 0B00
;получить число из адреса 0В00
CMA
;инвертировать число
STA 0В01
;записать результат по адресу 0В01
RST1
;прервать выполнение программы
При записи программ все числа представляются в шестнадцатеричной системе счисления.
Для записи программы в память микро-ЭВМ необходимо перевести мнемокоды команд в машинные коды. Команды в программе могут быть одно-, двух- или трехбайтные и должны занимать в памяти соответственно один, два или три адреса.
Программа П.1 (размещение по адресам памяти)
Адрес Число Комментарий
0800 3А ;код команды LDA
0801 80 ;младший байт адреса
0802 0В ;старший байт адреса
0803 2F ;код команды CMA
0804 32 ;код команды STA
0805 01 ;младший байт адреса
0806 0В ;старший байт адреса
0807 CF ;код команды RST1
Программа П.1 (общий вид записи)
-
Адрес
Машинный код
Метка
Мнемокод
Комментарий
0800
3А 00 0В
LDA, 0B00
;получить число
0803
2F
CMA
;инвертировать число
0804
32 01 0В
STA, 0B01
;записать по адресу
;0В01
0807
CF
RST1
;прервать выполнение
;программы
Предварительную запись программ удобно производить в более компактной форме. В программе указывается начальный адрес каждой команды и при этом понимается, что в зависимости от длины (одно-, двух- или трехбайтная) команды в памяти будут занимать от одной до трех последовательных ячеек. При такой записи в левом столбце указывается лишь адреса команд в программе. Это позволяет сократить объем при описании программ и сделать более простым их анализ.
Здесь используется прямой способ адресации.
Рассмотрим программу, аналогичную программе П.1 с использованием косвенного способа адресации (программа П.2).
Программа П.2
Адрес |
Машинный код |
Метка |
Мнемокод |
Комментарий |
0800 |
21 00 0В |
|
LXIH 0B00 |
;записать в регистры H,L |
|
|
|
|
;число 0В00 |
0803 |
7Е |
|
MOV A,M |
;получить число из адреса, |
|
|
|
|
;указанного в регистрах |
|
|
|
|
;H,L |
0804 |
2F |
|
CMA |
;инвертировать число |
|
|
|
|
;в аккумуляторе |
0805 |
23 |
|
INX M |
|
|
|
|
|
;увеличить на 1 число в |
|
|
|
|
;регистрах H,L |
0806 |
77 |
|
MOV M,A |
;записать число из |
|
|
|
|
;аккумулятора по адресу, |
|
|
|
|
;указанному в H,L |
0807 |
CF |
|
RST1 |
;прервать выполнение |
|
|
|
|
;программы |
Задания для домашней подготовки.
Ознакомьтесь с языком программирования и структурой команд МП БИС КР580ИК80.
Изучите режимы работы и временные диаграммы процесса выполнения команд МП БИС КР580ИК80.
Изучите методы программирования на языке ассемблера и в машинных кодах для МП БИС КР580ИК80.
Рассмотрите правила выполнения команд INT A (3C), DCR A (3D), ADD A (87), ANA A(A7), ORA A (B7), CMP A (BF0, DAA (27).
Рассмотрите результат выполнения программы П.1 при записи по адресу 0803 команд, приведенных в п. 4 задания. Результаты выполнения программы при различных командах, записанных в программе П.1 по адресу 0803, занести в табл.1.
Таблица 1
Число, записанное по адресу 0В00 |
Команда, записанная по адресу 0803 |
Число, записанное по адресу 0В01 |
||
|
|
|
Видоизмените и запишите программу П.2 так, чтобы при её выполнении исследуемое число первоначально записывалось по адресу 0В00.
Разработайте программы:
а) увеличения на 5 числа, записанного по адресу 0В00, и записи результата по адресу 0В01 (программа П.3);
б) сложения чисел, записанных по адресам 0В00 и 0ВА0, и записи результата по адресу 0В01 (программа П.4);
в) сравнения чисел в адресах 0В00 и 0В01 и записи большего из них в регистр В (программа П.5).
Задания к лабораторной работе.
Задание 1. Исследовать программу П.1.
Порядок выполнения задания:
Ввести в микро-ЭВМ программу П.1.
Записать по адресу 0В00 исследуемое число.
Осуществить пуск программы П.1 с адреса 0В00. Проверить результат выполнения программы путём исследования числа, записанного по адресу 0В01.
Исследовать процесс выполнения программы по командам. После выполнения каждой команды проанализировать содержание всех программно -доступных регистров МП БИС.
Исследовать процесс выполнения команд в программе П.1 по машинным циклам. Обратить внимание на последовательность передачи и преобразования информации в микро-ЭВМ при выполнении каждой команды. Представить временные диаграммы процесса выполнения любой одно- и трёхбайтной команды в программе.
Заменяя в программе П.2 команду CMA на команды INR A (3C), DCR A (3D), ADD A (87), FNF A (A7), ORA A (B7), CMP A (BF), DAA (27), исследовать результат выполнения указанных команд по числу, записанному по адресу 0В01. Проверить табл.П.1, заполненную при выполнении домашнего задания.
Задание 2. Исследовать программу П.2.
Порядок выполнения задания:
Ввести в микро-ЭВМ программу П.2.
Записать по адресу 0В00 исследуемое число.
Осуществить пуск программы с адреса 0800. Проверить результат выполнения программы по числу, записанному по адресу 0В01.
Исследовать процесс выполнения команды MOV A,M по машинным циклам.
Ввести и исследовать выполнение микро-ЭВМ видоизмененной программы П.2, позволяющей первоначально записывать исследуемое число по адресу 0В00.
Задание 3. Исследовать программу П.3.
Порядок выполнения задания:
Ввести в микро-ЭВМ программу П.3, разработанную при домашней подготовке.
Осуществить пуск программы П.3 и проверить результат её выполнения по числу, записанному по адресу 0В01 при числах 05, FE, записанных по адресу 0В00.
Задание 4. Исследовать программу П.4.
Порядок выполнения задания:
Ввести в микро-ЭВМ программу П.4, разработанную при домашней подготовке.
Проверить результат выполнения программы по числу, записанному по адресу 0В01, последовательно записывая по адресам 0В00 и 0ВА0 соответственно числа 0В и В0, FE и B5 и осуществляя пуск программы. Видоизменить и исследовать программу П.4 для случая, когда сумма двух чисел будет превышать восьмиразрядное число.
Задание 5. Исследовать программу П.5.
Порядок выполнения задания:
Ввести в микро-ЭВМ программу П.5 , разработанную при домашней подготовке.
Записать по адресам 0В00 и 0В01 исследуемые числа.
Осуществить пуск программы П.5. Проверить результат её выполнения по числу, записанному в регистре В.
Работа на учебной микро-ЭВМ.
При выполнении лабораторной работы на учебной микро-ЭВМ следует иметь в виду, что:
Ввод исследуемой программы осуществляется путем её последовательной записи в ячейки памяти. Для записи числа по адресу используются клавиши ОТА, ЗпУВ и цифровые клавиши на клавиатуре.
Пуск программы осуществляется нажатием на клавишу П.
Выполнение программы по командам осуществляется нажатием на клавишу ШК. После выполнения каждой команды микро-ЭВМ позволяет выводить на дисплей содержание программно -доступных регистров МП БИС с помощью клавиш ОТРг и ЗпУВ.
Выполнение программы по машинным циклам осуществляется последовательным нажатием на клавишу ШМЦ, при этом информация на дисплей микро-ЭВМ не выводится, а отображается лишь на светодиодах магистралей. Окончание режима производится нажатием на клавишу СТ, при этом на дисплей выводится адрес текущей программы, выполняемой микро-ЭВМ на момент выхода из режима выполнения команды по машинным циклам.
Содержание отчета .
Отчет должен содержать:
Заполненную табл.П.1 для случаев выполнения программы П.1 при использовании команд, представленных в п.4 задания для домашней подготовки.
Временные диаграммы выполнения любой произвольно выбранной одно- и трёхбайтной команды в программе П.1.
Временную диаграмму выполнения микро-ЭВМ команды MOV A,M в программе П.2.
Видоизменённую программу П.2, записанную в машинных кодах, позволяющую первоначально записывать исследуемое число по адресу 0В00.
Разработанные в процессе домашней подготовки программы П.3, П.4 и П.5, записанные в машинных кодах; результаты исследований работы программы по 3, 4, 5 заданий.
Задание для самопроверки.
За сколько машинных тактов выполняется каждая команда в программах П.1 и П.2?
Укажите различия в способах адресации, используемых в микро-ЭВМ, построенной на основе МПК серии К580.
Укажите все возможные способы адресации, используемые при составлении программы по п.7а задания для домашней подготовки.
При выполнении каких команд, приведенных в п.4 задания для домашней подготовки, задействуются разряды регистра состояния МП БИС ?
Сформулируйте правила выполнения МП БИС команд, приведенных в п.4 задания для домашней подготовки.
Изобразите временные диаграммы процесса выполнения микро-ЭВМ следующих команд: LDA <A2> <A1>, CMA, SТA<A2> <A1>, MOV M, A, MOV A,M ; INR M.