Выполнение элементарных операций



Рассмотрим процедуру, для реализации которой нужно выполнить следующую последовательность элементарных операций:

1) Нажать клавишу с буквой "А" на клавиатуре.

2) Поместить букву "А" в память.

3) Вывести букву "А" на экран дисплея.

 

Диаграмма выполнения процедуры ввода-запоминания-вывода изображена на рисунке 4.1.

В данной программе всего три команды, хотя может показаться, что в памяти программ записано шесть команд. Это связано с тем, что команда обычно разбивается на части.

Первая часть команды 1 - команда ввода данных.

Во второй части команды 1 указывается, откуда нужно ввести данные (из порта 1). Первая часть команды, предписывающая конкретное действие, называется кодом операции (КОП), а вторая часть - операндом. Код операции и операнд размещаются в отдельных ячейках памяти программ. КОП хранится в ячейке 100, а код операнда - в ячейке 101 (порт 1); последний указывает, откуда нужно взять информацию.

1) МП выдает адрес 100 на шину адреса. По шине управления поступает сигнал, устанавливающий память программ (конкретную микросхему) в режим считывания.

2)  ЗУ программ пересылает первую команду ("Ввести данные") по шине данных, и МП получает это закодированное сообщение. Команда помещается в регистр команд. МП декодирует (интерпретирует) полученную команду и определяет, что для команды нужен операнд. 

 

 

Рисунок 4.1

 

3) МП выдает адрес 101 на ША; ШУ используется для перевода памяти программ в режим считывания.

4) Из памяти программ на ШД пересылается операнд "Из порта 1". Этот операнд находится в программной памяти в ячейке 101. Код операнда (содержащий адрес порта 1) передается по ШД к МП и направляется в регистр команд. МП теперь декодирует полную команду ("Ввести данные из порта 1").

5) МП, используя ША и ШУ, связывающие его с устройством ввода, открывает порт 1. Цифровой код буквы "А" передается в аккумулятор внутри МП и запоминается. Важно отметить, что при обработке каждой программной команды МП действует согласно микропроцедуре выборки-декодирования-исполнения.

6) МП обращается к ячейке 102 по ША. ШУ используется для перевода памяти программ в режим считывания.

7) Код команды "Запомнить данные" подается на ШД и пересылается в МП, где помещается в регистр команд.

8) МП дешифрирует эту команду и определяет, что для нее нужен операнд. МП обращается к ячейке памяти 103 и приводит в активное состояние вход считывания микросхем памяти программ.

9)  Из памяти программ на ШД пересылается код сообщения "В ячейке памяти 200". МП воспринимает этот операнд и помещает его в регистр команд. Полная команда "Запомнить данные в ячейке памяти 200" выбрана из памяти программ и декодирована.

10) Теперь начинается процесс выполнения команды. МП пересылает адрес 200 на ША и активизирует вход записи, относящийся к памяти данных.

11) МП направляет хранящуюся в аккумуляторе информацию в память данных. Код буквы "А" передается по ШД и записывается в ячейку 200 этой памяти. Выполнена вторая команда. Процесс запоминания не разрушает содержимого аккумулятора. В нем по-прежнему находится код буквы "А".

12) МП обращается к ячейке памяти 104 для выбора очередной команды и переводит память программ в режим считывания.

13) Код команды вывода данных пересылается по ШД к МП, который помещает ее в регистр команд, дешифрирует и определяет, что нужен операнд.

14) МП выдает адрес 105 на ША и устанавливает память программ в режим считывания.

15) Из памяти программ по ШД к МП поступает код операнда "В порт 10", который далее помещается в регистр команд.

16) МП дешифрирует полную команду "Вывести данные в порт 10". С помощью ША и ШУ, связывающих его с устройством вывода, МП открывает порт 10, пересылает код буквы "А" (все еще находящийся в аккумуляторе) по ШД. Буква "А" выводится через порт 10 на экран дисплея.

Контрольные вопросы:

1. Описать общий принцип работы микропроцессора.

2. Описать этапы выполнения элементарной операции

 

 


Дата добавления: 2019-09-13; просмотров: 96;