Добавил:
Студент, если у тебя есть завалявшиеся работы, то не стесняйся, загрузи их на СтудентФайлс! Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_лаб2.docx
Скачиваний:
4
Добавлен:
16.07.2022
Размер:
2.51 Mб
Скачать

Основная часть работы.

После выполнения Этапов 1 – 4 следует приступить к основной части работы — к выполнению заданий 1–3 Варианта –SAMP.

Цель работы. Исследование с помощью симулятора AVSIM85 структуры микроЭВМ, назначения ее основных устройств и их взаимодействия при функционировании

: Задание1: Ввод с регистров 00,01,02,03 порта I8155 в РОН’ы В,С,E,H соответственно чисел 01111101B, 2EH, 43H и 00101101B.

Цель задания 1

  • исследование программного ввода внешних данных в микроЭВМ;

  • пересылки вводимых данных в заданные регистры, т.е. распределение внутренних ресурсов процессора применительно к заданным требованиям

Задание выполняется в Режиме непосредственного ввода данных в порты и непосредственного исполнения команд из командной строки симулятора. .

Порядок выполнения задания 1.

Этап1. Загрузка внешних данных в порты ввода. При этом моделируется ситуация приема в микроЭВМ данных из внешних устройств, подключенных к портам ввода/вывода.

Для Варианта_SAMP в порты 00, 01,02,03 вручную загружаются соответственно данные 1111101B, 2EH, 43H и 00101101B.

При этом, работа упрощается , если использовать следующие приемы:

  • переключения типа: строка Menu окно Screen выполняются путем нажатия клавиши Esc.

  • переход из любого активного подокна метаокна Screen в поле ввода требуемого порта I:00; I:01; I:02; I:03 выполняется при нажатии соответственно комбинации клавиш (Alt – 1), (Alt – 2), (Alt – 3), (Alt – 4).

  • используя для ввода поля HEXBINARY порта, данные можно вводить либо в виде шестнадцатеричного, либо двоичного кода.

Этап2. Ввод данных с текущего порта ввода в процессор. Моделируется режим программного безусловного ввода.

Программный безусловный ввод заключается в следующем.

Первое. Ввод инициируется процессором в ходе реализации программы. Момент ввода не зависит от “контекста” – наличия или отсутствия данных в портах, необходимости экстренного ввода/вывода данных и т.п.

Второе. Командой, инициализирующей ввод является команда IN port содержащаяся в программе.

Замечание. Процедура ввода может быть оформлена как подпрограмма, однако, отмеченные ранее принципы 1, 2 – также должны выполняться , но уже на уровне подпрограммы.

Ввод данных из портов в процессор в лабораторной работе осуществляется следующим образом. Данные вводятся последовательно, начиная с порта I:00. Ввод реализуется в режиме непосредственно исполнения команды In port. При этом необходимо учитывать, что

Первое. Команда IN port использует неявную адресацию по приемнику данных , поэтому ввод всегда осуществляется через регистр–аккумулятор процессора (приемник).

Второе. Перед приемом очередных данных, ранее введенные данные из аккумулятора необходимо переслать

  1. либо в заданный регистр – приемник. (В Варианте –SAMP: РОН’ы В,С,E,H.)

  2. либо в один из свободных РОН для временного хранения.

Для этого необходимо.

Первое. Активизировать в строке Menu команду EXECUTE. Эта команда независимо от состояния экрана отладчика позволяет ввести и выполнить любую команду CPU

Второе. В стоку – приглашение ENTER Mnemonic: ввести мнемокод команды IN port.

Введенная команда исполняется после нажатия клавиши ENTER.

Третье. Путем повторной активизации в строке Menu команды EXECUTE с последующим введением мнемокода выполнить команду MOV R,A. Этим обеспечивается сохранение данных путем их передачи из аккумулятора в заданный внутренний регистр–приемник CPU – R.

Четвертое. Повторяя процедуры 1–3, ввести в заданные внутренние регистры данные с портов I:01–I:03h.

Прием данных с внешних устройств в CPU для последующей обработки — завершен.

Для проверки правильности ввода, следует обратить внимание на совпадение данных в портах–источниках и в соответствующих регистрах–приемниках.

Если ввод выполнен правильно, следует приступать к выполнению Задания 2 Варианта_Samp.

Задание 2. Сложить числа, введенные в РОН’ы C и E. Зафиксировать сумму и состояние флагов Регистра признаков.

Цель задания. Исследование принципов взаимодействия функциональных узлов МП I8085A при .выполнении команд (на примере арифметических операций)

Следует исходить из следующих положений.

Первое. Подлежащие сложению данные (операнды) находятся в заданных РОН’ах процессора.

Второе. Из группы арифметических команд, целесообразно использовать команду ADD r, обеспечивающую сложение двух операндов, находящихся во внутренних регистрах процессора.

Третье. В команде ADD r (формальное описание(A)  (A)+(r)) используются следующие типы адресации

  1. регистровая (один из операндов)

  2. неявная– через аккумулятор(второй операнд и результат

Неявная адресация одного из операндов, требует его предварительной пересылки из регистра–источника в аккумулятор.

С учетом этих положений Задание 2 выполняется следующим образом.

Этап1. Решение Контрольного примера. Пример необходимо решить, используя для этого данные, загруженные в заданные регистры. При сложении необходимо контролировать флаги–признаки.

Для Задания 2 Варианта_Samp контрольный пример решается следующим образом. Слагаемые имеют соответственно значения 2EH, 43H. Поэтому

а) результат при сложении в шестнадцатеричной системе счисления

б) результат при сложении в двоичной системе счисления

В регистре признаков, будут зафиксированы следующие, характеризующие результат, признаки: S=0, Z=0, AC=1, P=1, C=0. Распределение признаков в регистре признаков показано на Рисунке 13.

Э тап 2. Сложение операндов. Сложение выполняется в режиме непосредственного исполнения команд. (Активизация команд EXECUTE ENTER Mnemonic ввод и исполнение команды). Перед сложением необходима пересылка одного из операндов в аккумулятор. Для Задания 2 Варианта_Samp, соответствующая программа (исполняемая в режиме покомандного ввода ) запишется , как

MOV A,E ; пересылка операнда в аккумулятор

ADD C ; сложение

Этап 3. Документирование результатов. Необходимо зафиксировать, для включения в отчет, состояние аккумулятора (полученную сумму) и состояние регистра признаков. Должно иметь место совпадение фактических результатов с результатами контрольного примера.

При совпадении можно приступать к выполнению Задания 3 Варианта_Samp.

Задание 3. Ввести в ячейки с адресами 0800Н –0807H сегмента данных 0800h 083Fh (оперативная память) cледующие данные (94, BB, F1, C0, F1, E9, 22,BE,)H. Для ввода использовать внешний порт 02H.

Следует иметь в виду, что отладчик уже сконфигурирован для решения задачи, а именно –

активизирован внешний порт I:02 для приема данных,

выделен и визуализирован массив оперативной памяти для записи принимаемых данных.

Целью задания является изучения программного безусловного ввода в микроЭВМ массива данных от внешнего устройства. При таком способе ввода выполняются следующие принципы

Первое. Ввод инициируется процессором в ходе реализации программы.

Второе. Данные вводятся через регистр-аккумулятор процессора.

Третье. Данные записываются в последовательные ячейки памяти (массив).

Четвертое. Массив для записи данных должен входить в DS. При этом начальный адрес массива определяется либо ТЗ на разработку программы, либо самим программистом при начальном распределении ресурсов микроЭВМ .

Задание 3 выполняется следующим образом.

Этап1. Принимается во внимание, что начальный адрес массива данных установлен в Задании. Следует, однако, проверить, входит ли массив в DS. В случае необходимости, следует переконфигурировать отладчик (микроЭВМ) и отразить соответствующие действия в отчете.

Этап2. В режиме непосредственного ввода и исполнения команд, реализуется Управляющая программа. Она обеспечивает один цикл ввода — прием в аккумулятор и запись в ячейку памяти очередных j – ых данных.

Соседние файлы в предмете Основы микропроцессорной техники