
- •Основы микропроцессорной техники
- •Введение
- •1. Система команд микропроцессора 8080 Представление команд в числовой форме
- •Мнемоническое представление команд Ассемблер
- •Директивы Ассемблера процессора 8080
- •Методы адресации операндов команд
- •Биты признаков
- •Общее представление команд
- •Команды пересылок
- •Однобайтные пересылки
- •Двухбайтные пересылки
- •Команды передачи управления
- •Команды безусловных переходов
- •Команды условных переходов
- •Команды организации подпрограмм
- •Команды безусловных вызовов и возврата
- •Команды условных вызовов и возврата
- •Команды арифметических, логических и сдвиговых операций
- •Команды сложения
- •Команды вычитания
- •Команды логических операций
- •Команды сравнения
- •Команды сдвига
- •Специальные арифметическо-логические команды
- •Команды управления стеком
- •Команды ввода, вывода и управления состоянием процессора Команды ввода и вывода
- •Команды управления прерываниями
- •Команда перевода процессора в состояние останова
- •Учебная микро-эвм умк-80
- •Управление микро-эвм средствами Монитора
- •Чтение и модификация содержимого памяти хххх
- •Чтение и модификация содержимого регистров
- •Запуск программы пользователя
- •Отражение типа машинного цикла через слово состояния
- •Пошаговые режимы
- •Порядок выполнения работы Заполнение памяти средствами Монитора
- •Определение исходного положения области стека
- •Ввод программы средствами Монитора
- •Лабораторная работа № 1.2 Учебная микро-эвм умпк-80
- •Краткие сведения из теории Назначение умпк-80
- •Структура умпк-80 и распределения адресного пространства
- •Управление микро-эвм средствами Монитора
- •Тестирование микро-эвм и начальная установка
- •Порядок выполнения работы Исследование порядка включения умпк-80
- •Исследование содержимого памяти
- •Запись числа в память умпк-80
- •Запись числа в программно-доступные регистры
- •Запуск программы
- •Контроль выполнения команд программы
- •Содержание отчёта
- •Контрольные вопросы
- •Лабораторная работа № 2 Отдельные команды, простые программы
- •Краткие сведения из теории Типы команд
- •Форматы команд
- •Способы адресации операндов
- •Признаки результатов операций
- •Представление программы
- •Порядок выполнения работы Исследование отдельных команд арифметических и логических операций
- •3Результаты исследования команд арифметических и логических операций
- •Исследование команд пересылок и способов адресации операндов
- •Исследование команд арифметического сложения
- •Исследование операций сравнения однобайтных чисел
- •Содержание отчёта
- •Контрольные вопросы
- •Библиографический список
Команды ввода, вывода и управления состоянием процессора Команды ввода и вывода
Наряду с процессором и памятью к основным элементам микро-ЭВМ можно отнести внешние устройства. Внешние устройства – это те устройства для управления которыми рассчитана микро-ЭВМ: клавиатура, дисплей, динамик, накопители внешней памяти и так далее, включая управляемые объекты систем автоматического управления. Подключение таких различных устройств к одной общей универсальной шине микро-ЭВМ реализуется через интерфейсы. Интерфейс представляет собой совокупность аппаратных и программных средств, обеспечивающих сопряжение внешних устройств с микро-ЭВМ. Элементы аппаратных средств интерфейса (контроллеры) содержат в своём составе программно-доступные регистры, в которые можно записывать байты данных из процессора или из которых можно читать байты данных в процессор. Регистры контроллеров обеспечивают буферное хранение информации на пути между процессором и внешним устройством, поэтому их ещё часто называют портами внешних устройств.
Взаимодействие процессора 8080 с портами внешних устройств отличается от взаимодействия процессора с ячейками памяти. Адреса портов не 16-разрядные, а 8-разрядные. Адресное пространство портов, не является составной частью общего адресного пространства микро-ЭВМ. Вместо этого, в микро-ЭВМ с процессором 8080 имеется два адресных пространства:
для адресации памяти на основе 16-разрядных адресов в объёме 216=65536 возможных адресов;
для адресации портов интерфейсов внешних устройств на основе 8-разрядных адресов в объёме 28=256 возможных адресов.
Для обеспечения обмена процессора с портами в составе системы команд имеются всего две команды: одна для чтения порта (чтобы не путать эту операцию с чтением памяти, её называют вводом) и одна для записи в порт (вывод). В обеих случаях со стороны процессора в обмене участвует аккумулятор.
Команда IN port обеспечивает выполнение операции ввода в аккумулятор процессора байта из порта port прямо адресованного вторым байтом команды. В процессе выполнения этой двухбайтной по формату команды в рамках машинного цикла ввода происходит следующее. Сначала второй байт команды устанавливается на адресные линии в качестве адреса, причём, этот байт дублируется как в старших так и в младших восьми разрядах адресных линий: ABport. Этот адрес дешифрируется логикой микро-ЭВМ. Затем соответствующий выбранный порт устанавливает байт своего содержимого на линии данных, а процессор этот байт принимает в свой аккумулятор:(A)DB.
Пример 1.51
Требуется ввести в аккумулятор содержимое порта, имеющего адрес F1h.
Адрес Число Мнемокод Комментарий
0800 DB F1 IN F1 ;
Команда OUT port обеспечивает выполнение операции вывода байта из аккумулятора процессора в порт port прямо адресованный вторым байтом команды. В процессе выполнения этой двухбайтной по формату команды в рамках машинного цикла вывода происходит следующее. Сначала второй байт команды устанавливается на адресные линии в качестве адреса, причём, этот байт дублируется как в старших так и в младших восьми разрядах адресных линий: ABport. Вместе с ним на линии данных устанавливается байт из аккумулятора процессора: DB(A). Адрес дешифрируется логикой микро-ЭВМ. Затем соответствующий выбранный порт принимает байт с линий данных в свой регистр.
Пример 1.52
Требуется вывести число 13h в порт, имеющий адрес F3h.
Адрес Число Мнемокод Комментарий
0800 3E 13 MVI A,13 ; подготовка числа в аккумуляторе
0802 D3 F3 OUT F3 ; вывод из аккумулятора в порт F3