Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornaya_rabota_1.docx
Скачиваний:
10
Добавлен:
16.09.2019
Размер:
358.29 Кб
Скачать

3. Система команд мп

Выполнение каждой команды производится микропроцессорной БИС в строго определенной последовательности, определяемой кодом команды, и синхронизируется во времени сигналами 1, 2 тактового генератора.

В зависимости от вида команды время выполнения команды (время получения, декодирования и выполнения) может состоять из 1–5 машинных циклов. Машинный цикл (МЦ) – время, требуемое для извлечения одного байта информации из памяти или выполнения команды, определяемой одним машинным словом. Машинный цикл может состоять из 3–5 машинных тактов. Машинный такт (МТ) – период синхросигналов 1 или 2. Для микропроцессорной БИС К580ВМ80 существует десять различных типов машинных циклов:

– извлечение кода команды;

– чтение данных из памяти;

– запись данных в память;

– извлечение из стека;

– запись данных в стек;

– ввод данных из внешнего устройства;

– запись данных во внешнее устройство;

– цикл обслуживания прерывания;

– обслуживание прерывания при работе МП в режиме останова;

– останов.

Первым машинным циклом при выполнении любой команды всегда является цикл извлечения кода команды.

Восьмиразрядное машинное слово используется для сообщения МП как кода команд, так и данных. Набор команд фиксирован и состоит из 244 различных команд. Все команды можно разделить на пять групп:

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

– арифметические команды, включают в себя команды сложения, вычитания, увеличения или уменьшения на единицу данных в регистрах или памяти;

– логические команды, позволяющие осуществить логические операции И, ИЛИ, исключающее ИЛИ, сравнение, сдвиг в регистрах или памяти;

– команды передачи управления, обеспечивающие передачу управления по условию или безусловную передачу, а также вызов или возврат из подпрограмм;

– команды управления и работы со стеком, организующие ввод – вывод из микро-ЭВМ, доступ к стеку и внутреннему регистру признаков микропроцессорной БИС, а также ее управление.

Память микро-ЭВМ организована в виде восьмиразрядных ячеек, каждая из которых имеет свой шестнадцатиразрядный адрес. Таким образом, микропроцессорная БИС может работать с памятью до 65536 байт.

Одна команда может содержать от одного до трех байт. Многобайтовые команды записываются в последовательные ячейки памяти. Первый байт команды всегда содержит код команды. При трехбайтовых командах во втором и третьем байтах содержатся данные (адрес), причем во втором байте записывается младший байт данных, а в третьем – старший байт данных (адреса).

Микропроцессорная БИС имеет четыре различных типа адресации к памяти или регистрам:

– прямая адресация – второй и третий байты команды содержат адрес памяти (младший байт адреса во втором байте команды, а старший байт – в третьем);

– адресация к регистру – команда указывает на регистр или пару регистров, в которых записаны данные;

– косвенная адресация с помощью регистров – команда указывает на пару регистров, в которых записан адрес памяти или данные;

– непосредственная – команда сама содержит данные.

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

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

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

При обслуживании прерывания, в зависимости от кода команды RST<N>, микропроцессорная БИС обращается к одной из восьми фиксированных ячеек памяти. Особенностью команды RST является то, что ее код передается в МП по шине данных от источника запроса на прерывание. Это происходит после того, как микропроцессор входит в режим прерывания и вырабатывает признак INTE=1. По этой команде содержимое программного счетчика микропроцессора записывается в стек, затем в нем устанавливается адрес прерывающей программы, состоящий из трехразрядного адреса из команды RST и нулей в остальных разрядах. Таким образом, передается управление одной из восьми возможных прерывающих программ.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]