Микропроцессоры. Особенности архитектуры. Понятие о состоянии процессора (программы). Вектор слова состояния. Принципы организации системы прерываний, страница 4

Информация о состоянии процессора лежит в основе многих процедур управления вычислительным процессом.

Эта информация используется в следующих случаях:

1)  при анализе ситуации в случае отказов или сбоев;

2)  при возобновлении программы после отказа или сбоя;

3)  при возобновлении выполнения программы после прерывания и т.п.

Совокупность значений запоминающих элементов после данного такта или после выполнения данной команды называется вектором состояния или словом состояния  процессора. (PSW).

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

Слово состояния для МП имеет следующий вид:

Система команд МП

Классификация команд по назначению.

Все команды МП по назначению делятся на следующие группы:

1. команды пересылок (команды обмена)

2. арифметические команды

3. логические команды

4. команды передачи управления

5. команды ввода-вывода и работы со стеком.

Структура и формат команды

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

Процессору необходимо задать информацию о выполняемой операции, адресную информацию об операндах, место хранения результата. Для фиксации этой информации в коде команды выделяются определенные разряды или поля. Общая структура команды имеет вид:

                                                                                                                                                                                                                                                                                                                                                                                   

Адресная часть в свою очередь может состоять из нескольких полей.

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

Число разрядов, отводимых под код операции, должно быть таким, чтобы можно было представить все выполняемые машинные операции. Если система команд содержит М операций, то число разрядов в коде операции должно быть:

                                          nко >   log2M

По формату все команды МП делятся на 1-, 2-  и 3-байтные.

1-байтные (одноадресные) команды ( в программе занимают только один адрес) содержат только одно поле, только операционную часть (код операции) Код операции содержит всю необходимую для процессора информацию – сведения о выполняемой операции, сведения об операндах и о месте результата.

Например,  команда   ADDB (арифметическая команда). Сложить содержимое аккумулятора с содержимым регистра В. Один операнд находится в аккумуляторе, второй - в регистре В, результат сложения остается в аккумуляторе.

2-байтные (двухадресные) команды имеют следующий формат:

Арифметическая команда   ADI data. Сложить содержимое регистра А с операндом, который  задан во втором байте кода команды. Результат оставить в аккумуляторе.

3-байтные (трехадресные) команды имеют следующий формат:

Чаще всего эти команды используются для работы с адресами.

Команда в общем виде LXI rp data. Конкретно: LXI H 0900.

Загрузить в регистровую пару HL адрес 0900. В памяти команда занимает три соседних байта (три соседних адреса). В первом байте записан код операции, в двух последующих – загружаемый адрес.

Способы адресации

Типовой МП использует пять способов адресации: неявную, регистровую, непосредственную, прямую, косвенную.

Регистровая адресация. Когда используются команды с этим типом адресации, источник информации и приемник информации точно определены, ими являются конкретные регистры.

Команда MOV R1,R2. Переслать содержимое регистра R1 в регистр R2.

R2 – источник информации,  R1 – приемник информации.

Конкретно – MOV B,D. Переслать операнд из регистра D в регистр B. Регистр D – источник информации,  регистр B – приемник информации.