ОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
УЧЕБНЫЙ МИКРПРОЦЕССОРНЫЙ
КОМПЛЕКТ (УМК)
Методические указания к выполнению лабораторных работ по автоматизации
Эксперимента
___________
Издание ОмГУ Омск 2002
УДК 681.322
Учебный микропроцессорный комплект (УМК): Методические указания к выполнению лабораторных работ по автоматизации эксперимента / Сост. В.В.Шкуркин. Омск: изд. Омск. ун-та, 2002.
Ó Омский госуниверситет, 2002
Цель работы: Изучение архитектуры 8-разрядного микропроцессора КР580ВМ80А, приобретение навыков составления программ в кодах команд и на языке ассемблера с использованием учебной микро-ЭВМ УМК
Архитектура микропроцессора
Микропроцессор является важнейшим компонентом всякой микроЭВМ. Его характеристики – разрядность слова, быстродействие, система команд, режимы адресации памяти, число программно-доступных регистров, система обработки прерываний – в основном определяют характеристики всей микроЭВМ.
Микропроцессор – сложное цифровое электронное устройство, причем большая часть его элементов недоступна извне. Например, нельзя с помощью какого-нибудь сигнала изменить содержимое программного счетчика, входящего в блок регистров МП. Это можно сделать только программным путем, т. е. в результате выполнения микропроцессором программы, находящейся в памяти микроЭВМ.
Составляя программу для микроЭВМ в машинных кодах или на языке ассемблера, программист абстрагируется от всего многообразия элементов МП и имеет дело лишь с системой команд и ограниченным числом регистров микропроцессора, называемых программно-доступными регистрами. Эти регистры характеризуются тем, что их имена или условные обозначения (номера) могут применяться в машинных командах, а содержимое регистров может быть изменено, прочитано или использовано с помощью соответствующих команд по желанию программиста. Программно-доступные регистры обычно составляют малую часть всех регистров микропроцессора. Никакие другие элементы МП, кроме его программно-доступных регистров не находят отражения в программах, написанных в кодах или на языке ассемблера. То есть с точки зрения программиста архитектура микропроцессора есть совокупность программно-доступных регистров, каким-то образом связанных с остальными компонентами процессора с целью выполнения операций, соответствующих системе команд данного процессора. Систему команд и набор программно-доступных регистров можно рассматривать как программную модель микропроцессора, которую должен знать программист, чтобы создавать программы.
Рассмотрим программную модель микропроцессора КР580ВМ80А. Структура этого МП с точки зрения программиста приведена на рис. 1. Всего для программиста доступны 10 регистров, в число которых входят шесть 8-разрядных регистров общего назначения (РОН) – B, C, D, E, H, L, 8-разрядные регистры A (аккумулятор), F (регистр признаков) и 16-разрядные регистры SP (указатель стека) и PC (счетчик команд). В ряде команд для адресации операнда и некоторых других целей одновременно используются пары регистров общего назначения, при этом допустимы пары регистров (BC), (DE), (HL). Обращение к парам регистров осуществляется по имени (букве) первого регистра пары. Следовательно, к перечисленным парам регистров можно обратиться по именам B, D, H соответственно. Кроме символического имени каждый РОН, а также регистр A имеют трехзначный двоичный код (таблица 1).
Содержимое пары регистров A (аккумулятор) и F (регистр признаков) иногда называют словом состояния программы и обозначают PSW. При этом особое значение имеет регистр F, который предназначен для хранения признаков или флажков (таблица 2). Признаки имеют следующий смысл:
S – бит знака, принимающий значение 1, если содержимое регистра A становится отрицательным после выполнения некоторой операции. Так как регистр A 8-разрядный, то в нем можно представлять числа со знаком в диапазоне от –128 (-27) до +127 (27-1). Таким образом S = 1, если число в аккумуляторе имеет значение от –128 до –1, и S = 0, если число в аккумуляторе имеет значение от 0 до +127;
Z – бит нулевого признака, принимающий значение 1, если число в аккумуляторе равно 0; если же число в аккумуляторе не равно 0, то бит нулевого признака сбрасывается;
Таблица 1
Имя регистра | B | C | D | E | H | L | M | A |
Двоичный код |
Примечание: в табл. 1 M – является обозначением содержимого ячейки памяти, адрес которой содержится в паре регистров H, L.
Таблица 2
Флажок | S | Z | - | AC | - | P | - | CY |
Разряд |
AC – бит дополнительного переноса, установка которого означает наличие переноса из младшего полубайта в старший полубайт аккумулятора, т.е. из разряда 3 в разряд 4, если разряды нумеровать в порядке возрастания их веса (справа налево). Этот бит применяется при выполнении команд десятичной арифметики;
P – бит четности, принимающий значение 1, если суммарное число единичных разрядов в аккумуляторе является четным, и значение 0 в противном случае;
CY – бит переноса, устанавливаемый в случае переноса из старшего разряда (разряда 7) аккумулятора при выполнении некоторых операций над данными. При отсутствии переноса в выполняющейся операции этот признак сбрасывается.
Разряды 1, 3, 5 в регистре признаков F не используются в качестве признаков. Полное описание каждой команды микропроцессора должно содержать информацию о том, на какие признаки оказывает влияние эта команда.