Главная страница

Лекции по ВМСС. Конспект лекций по курсу "Электронные вычислительные машины, системы и сети"


Скачать 3.89 Mb.
НазваниеКонспект лекций по курсу "Электронные вычислительные машины, системы и сети"
Дата14.02.2022
Размер3.89 Mb.
Формат файлаdoc
Имя файлаЛекции по ВМСС.doc
ТипКонспект
#361333
страница16 из 24
1   ...   12   13   14   15   16   17   18   19   ...   24



3. ПРОГРАММНАЯ МОДЕЛЬ МИКРОПРОЦЕССОРА
К1810ВМ86 содержит две относительно независимые части: операционное устройство, реализующее заданные командой МП операции, и устройство шинного интерфейса, осуществляющее выборку команд из памяти, а также обращение к памяти и к внешним устройствам для считывания операндов и записи результатов (рис. 1). Оба устройства работают совместно, что распараллеливает процессы выборки и исполнения команды и повышает быстродействие МП. Операционное устройство, как правило, выполняет команды, коды которых уже находятся в МП, и поэтому такты выборки команды не включаются в цикл.

Выполнение команд можно представить последовательностью циклов шины, в течение которых МП обращается к памяти за командами или обменивается данными с памятью или внешними устройствами. Каждый цикл шины инициируется устройством шинного интерфейса и содержит четыре обязательных такта Т1-Т4. В такте Т1 выдаётся адрес на совмещённую шину адреса/данных, в такте Т2 производится коммутация направления передачи, в тактах Т3, Т4. - передача данных. Операционное устройство МП содержит группу общих регистров, арифметико-логическое устройство (АЛУ), регистр флагов F и блок управления. Восемь 16-битовых регистров общего назначения участвуют во многих командах. В соответствии с основным назначением рассматриваемых регистров выделяют регистры АХ, ВХ, СХ, DХ, используемые прежде всего для записи данных, и регистры SР, ВР, SI, DI. которые хранят главным образом адресную информацию. Особенностью регистров АХ, ВХ, СХ, DX является то, что они допускают раздельное использование младших, и старших байтов. Тем самым обеспе­чивается возможность обработки, как слов, так и байтов.

Все остальные регистры являются неделимыми и оперируют 16-разряд­ными словами и в случае использования только старшего или младшего байтов. Указательные регистры SP и ВР хранят смещение адреса в преде­лах текущего стекового сегмента памяти, а индексные регистры SI и DI хранят смещение адреса соответственно в текущем сегменте данных и в текущем дополнительном сегменте. Арифметическо-логическое устройство содержит 16-битовый комбинационный сумматор, с помощью которого вы­полняются арифметические операции, наборы комбинационных схем для выполнения логических операций, схемы для операций сдвигов и десятичной коррекции, а также регистры для временного хранения операндов и результатов. К АЛУ примыкает регистр флагов F (рис.2, где X обозначает неопределенное состояние бита). Его младший байт FL полностью соответствует регистру флагов K580ВМ80, а старший байт FH содержит четыре флага, отсутствующие в К580ВМ80. Шесть арифметических флагов фиксируют определенные признаки результата выполнения операции (арифметической, логической, сдвига или загрузки регистра флагов). Значения этих флагов (кроме флага AF) используются для реализации условных переходов, изменяющих ход выполнения программы.

CF – флаг переноса, фиксирует значение переноса (заема), возникающего при сложении (вычитании) байтов или слов, а также значение выдвигаемого бита при сдвиге операнда. PF – флаг чётности (или парите-тета), фиксирует наличие чётного числа единиц в младшем байте результата операции, может быть использован, например, для контроля правильности передачи данных. AF - флаг вспомогательного переноса, фиксирует перенос (заем) из младшей тетрады, т.е. из бита аЗ в бит а4 при сложении (вычитании), используется только для двоично-десятичной арифметики, оперирует исключительно младшими байтами. ZF – флаг нуля, сигнализирует о флаг знака получении нулевого результата операции. SF – флаг знака дублирует значение старшего бита результата, который при использовании дополнительного кода соответствует знаку числа. OF - флаг переполнения, сигнализирует о потере старшего бита результата сложения или вычитания в связи с переполнением разрядной сетки при работе со знаковыми числами. При сложении этот флаг устанавливается в единицу, если происходит перенос в старший бит и нет переноса из старшего бита или имеется перенос из старшего бита, но отсутствует перенос в него: в противном случае флаг - OF устанавливается в нуль. При вычитании он устанавливается в единицу, когда возникает заём из старшего бита, но заём в старший бит отсутствует либо имеется заем в старший бит, но отсутствует заём из него. Имеется специальная команда прерывания при переполнении, которая в указанных случаях генерирует программное прерывание. Для управления некоторыми действиями МП пред­назначены три дополнительных флага. DF - флаг направления, управляемый командами CLD и STD: определяет порядок обработки цепочек в соответс­твующих командах: от меньших адресов (DF=0) или от больших (DF=1). IF - флаг разрешения прерываний, управляемый с помощью команд СLI и STI: при IF=1 микропроцессор воспринимает (распознаёт) и соответственно реагирует на запрос прерывания по входу INTR; при IF=0 прерывания по этому входу запрещаются (маскируются) и МП игнорирует поступающие запросы прерываний. Значение флага IF не влияет на восприятие внешних не маскируемых прерываний, по входу NMI, а также внутренних (программ­ных) прерываний, выполняемых по команде INT. TF - флаг трассировки (прослеживания). При TF =1 МП переходит в покомандный (пошаговый) ре­жим работы, применяемый при отладке программ, когда автоматически ге­нерируется сигнал внутреннего прерывания типа 1 после выполнения ко­манд с целью перехода к соответствующей подпрограмме. Команды установ­ки или сброса флага TF отсутствуют, так что управление этим флагом осуществляется опосредованно, путём пересылки содержимого регистра флагов F через стек в общий регистр.

Таблица 1

Регистр

Название

Специальная функция регистра


АХ

AL
AH



Аккумулятор


Аккумулятор

(младший байт)

Аккумулятор

(старший байт)


Умножение, деление и ввод – вывод слов

Умножение, деление и ввод – вывод байтов; преобразования байтов; десятичная арифметика

Умножение и деление слов


BX




Базовый регистр

Счетчик


Адресация по базе; преобразование адресов



CX

СL



Счетчик

Счетчик

(младший байт)



Подсчет циклов; подсчет элементов цепочек

Реализация параметрических сдвигов



DX


Регистр данных


Умножение и деление слов; косвенный ввод – вывод




SP



Указатель стека


Операции с использованием стека



BP


Указатель базы


Базовый регистр


SI


Индекс источника


Указатель цепочки – источника, индексный регистр



DI


Индекс приёмника


Указатель цепочки – источника, индексный регистр

1   ...   12   13   14   15   16   17   18   19   ...   24


написать администратору сайта