Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка - Лабораторные работы №1-4.DOC
Скачиваний:
28
Добавлен:
02.05.2014
Размер:
3.19 Mб
Скачать

2.5 Команды ввода и вывода , обращения к стеку и управления микропроцессором

Последняя группа команд выполняет операции помещения в стек и извлечения из него, ввода и вывода данных, обмена данными, подтверждения и неподтверждения прерываний, управления отсутствием операций и останова и установления маски прерываний.

INaр - вводит данные в А из порта периферийного устройства, адрес которого определяется вторым байтом команды.

OUTap - выводит данные из А в порт, адрес которого определяется вторым байтом команды.

PUSH RP - помещает содержимое регистровой пары RP в стек. В ячейку М(SP-1) помещает значение старшего регистра, в М(SP-2) - значение младшего регистра пары, указатель стека дважды декрементируется SP=SP-2. Разновидностью этой команды является команда занесения в стек слова состояния процессора PUSH PSW, которая помещает в М( SP - 1) содержимое А, а в ячейку М(SP - 2 ) содержимое F, причем разрядам ячейки М( SP - 2 ) присваиваются b0СУ, b2 P, b4АС, b6Z, b7S.

POP RP извлекает из стека в регистровую пару содержимое двух ячеек памяти, в младший регистр загружаются данные из М(SP), в старший - из М(SP+1). К указателю стека прибавляется 2. Разновидностью этой команды является POP PSW , которая из ячейки М(SP) загружает регистр F по следующему правилу : флагу СУb0,Pb2, ACb4, Zb6, Sb7; AM(SP+1).

XTHL осуществляет обмен содержимого H,L с двумя ячейками вершины стека : LM(SP), HM(SP+1).

SPHL передает в указатель стека содержимое регистровой пары H,L.

EI разрешает прерывания. При выполнении EI прерывания не признаются.

DI - после выполнения этой команды микропроцессор игнорирует запросы на прерывания до появления команды DI.

HLT - останов вычислений.

3 Порядок выполнения работы

3.1 Ответить на вопросы ,используя задание (таблица 1.1).

3.2 Написать программу в соответствии с заданием и алгоритмом (рисунок 2.1).

В качестве последней команды останова использовать RST4*8, позволяющую вызвать Монитор для индикации результатов .

НАЧАЛО

H,L Nя RAL (четные) A  (A-M(Nÿ ))

RAR (нечетные) ( четные )

А(A-M(Nя)-CÓ)

X  M(HL) 1 ( нечетные )

СУ = 1

HL+1 0

A (A+M(Nя+1)) HL  Nя+2

Y  M(HL)

1 0

RG..M(Nя) S=1 A  M(HL)

A  RG... RST 4*8

Рисунок 2.1

3.3 Занести программу в свободную область ОЗУ и отладить .

3.4 Осуществить пошаговый процесс вычислений отлаженной программой, для чего кнопкой ADDR и клавишами данных установить начальный адрес программы, а переключатель "Прогон-отладка” установить в положении "отладка". Нажать клавишу REG и А ,проверить содержимое всех РОН нажатием клавиши NEXT. Нажать клавишу STEP. После реализации команды вновь проверить содержимое РОН. Осуществить прогон программы кнопкой STEP в ручном режиме с записью состояний РОН в отчет на каждом шаге реализации программы .

3.5 Вновь набрать начальный адрес программы . Переключатель "Прогон-отладка" установить в положение "Прогон ". Нажать клавишу RUN выполнения программы в автоматическом режиме. Сравнить конечные результаты вычислений с п.3.4.