
- •Оглавление
- •Общие сведения о микропроцессоре кр580вм80/кр580вм80а (мп кр580) Цели и задачи практикума
- •Вводная информация
- •Структура мп кр580
- •Блок регистров.
- •Арифметическо-логическое устройство.
- •Структура памяти и форматы команд мп кр580
- •Справочная информация по микропроцессору мп кр580
- •Система команд кр580.
- •Коды команд мп кр580.
- •Лабораторная работа №1.Ознакомление с работой мп кр580 и работой эмулятора emКр580
- •1.1.Руководство пользования эмулятором emКр580
- •1.1.1.Текстовый редактор.
- •1.1.2.Синтаксис редактора.
- •1.1.3.Эмулятор программы.
- •1.2.Задания для самоподготовки
- •1.3.Задания к лабораторной работе
- •1.4.Содержание отчета
- •1.5.Контрольные вопросы
- •Лабораторная работа №2.Исследование системы команд мп кр580
- •2.1.Краткие сведения из теории
- •2.1.1.Способы адресации памяти.
- •2.1.2.Система команд микропроцессора.
- •2.1.2.1Команды пересылки данных.
- •2.1.2.2Арифметические и логические команды.
- •2.1.2.3Команды передачи управления.
- •2.1.2.4Специальные команды.
- •2.2.Задания для самоподготовки
- •2.3.Задания к лабораторной работе
- •2.4.Содержание отчета
- •2.5.Контрольные вопросы
- •Лабораторная работа №3.Подпрограммы и стек
- •3.1.Краткие сведения из теории
- •3.2.Задания для самоподготовки
- •3.3.Задания к лабораторной работе
- •3.4.Содержание отчета
- •3.5.Контрольные вопросы
- •Лабораторная работа №4.Ввод/вывод, маскирование данных и организация условных переходов
- •4.1.Краткие сведения из теории
- •4.1.1.Общие сведения об организации интерфейса ввода/вывода.
- •4.1.2.Маскирование данных.
- •4.1.3.Организация условных переходов.
- •4.2.Задания для самоподготовки
- •4.3.Задания к лабораторной работе
- •4.4.Содержание отчета
- •4.5.Контрольные вопросы
- •Лабораторная работа №5.Выполнение арифметических операций
- •5.1.Краткие сведения из теории
- •5.1.1.Сложение и вычитание.
- •5.1.2.Умножение чисел.
- •5.1.3.Деление чисел.
- •5.1.4.Вычисление специальных функций.
- •5.2.Задания для самоподготовки
- •5.3.Задания к лабораторной работе
- •5.4.Содержание отчета
- •5.5.Контрольные вопросы
- •Литература
2.1.2.Система команд микропроцессора.
Команды МП можно разделить на 4 категории:
Команды пересылки данных (см. Табл. 0- – Табл. 0-).
Эти команды приводят к перемещению элементов информации между регистрами или между регистром и ячейкой памяти (портом ввода/вывода). Общее число таких команд велико, т. к. имеется много видов адресации, а также большое число ограничений на форматы команд, обусловленное небольшой длиной слова процессора. Это приводит к усложнению архитектуры.
Арифметические и логические команды (см. Табл. 0- – Табл. 0-).
К ним относятся команды, объединяющие два элемента данных арифметически или логически, или выполняют операции над одним числом. Для этого используется регистр А.
Команды передачи управления (см. Табл. 0- – Табл. 0-).
Они включают в себя команды разветвления, перехода к подпрограммам и возврата из подпрограмм.
Команды различного назначения (специальные команды, см. Табл. 0-).
К данному классу относятся команды, которые нельзя точно классифицировать.
2.1.2.1Команды пересылки данных.
Команды пересылки "регистр-регистр" – MOV R1, R2. Формат этих команд имеет вид 01 DDD SSS, где DDD – регистр приемник, SSS – регистр источник. Регистры определяются номерами B = 0, C = 1, D = 2, E = 3, H = 4, L = 5, A =7. Таким образом, команда 4С (01001100) означает "переслать содержимое регистра Н в регистр С". Если значение DDD или SSS равно 110, то приемником или источником является ячейка памяти, адрес которой хранится в паре регистров HL (косвенная адресация).
Команда MVI служит для пересылки одного байта в любой из 7 РОН. Формат команды 00 DDD 110. Если DDD = 0, 1, ..., 5, 7, то пересылается константа, следующая в программе за этой командой в регистры B, C, ..., L, A. Если поле DDD = 6, то константа пересылается в ячейку памяти, адрес которой хранится в паре регистров H, L.
Для быстрой загрузки регистров H, L существует команда LXI H, пересылающая следующие за командой LXI H два байта (в программе) в указанную пару регистров. Таким же образом команда LXI D загружает два байта в пару регистров D и Е, а команда (LXI B) – два байта в регистры В и С. Эти команды называются командами непосредственной загрузки.
Существуют команды, выделяющие регистр А для специальных целей. Команды STAX и LDAX служат для передачи данных между регистром А и ячейкой памяти, адрес которой находится либо в паре регистров ВС, либо в паре регистров DЕ, причем STAX B – пересылает содержимое А в ячейку памяти, адрес которой находится в ВС, а LDAX D – осуществляет обратную передачу содержимого ячейки памяти с адресом, записанным в DE в регистр А.
В выше приведенных командах доступ к ячейке памяти становится возможным только после помещения адреса в пару регистров. Это эффективно, если неоднократно используется один и тот же адрес. При одноразовом использовании адреса используют метод абсолютной адресации.
К этой же группе команд могут быть отнесены команды ввода/вывода. Команды ввода/вывода IN и OUT осуществляют передачу данных между процессором и каналом ввода/вывода (портом ввода/вывода), номер которого приведен вслед за командой.