Выполнение инструкций
В зависимости от назначения все инструкции можно разделить на несколько групп:
– инструкции пересылки;
– арифметико-логические инструкции;
– инструкции сдвигов;
– инструкции обработки строк;
– инструкции переходов;
– инструкции управления и вспомогательные;
– префиксы инструкций.
Первые три категории команд (пересылки, арифметико-логические и сдвигов) можно назвать инструкциями обработки данных. Инструкции обработки строк стоят несколько особняком, поскольку они отличаются от команд обработки данных способом определения местоположения своих операндов. Инструкции переходов осуществляют передачу управления в процессе выполнения программы. Инструкции управления и вспомогательные в обычных программах применяются редко, их основное назначение – управление состоянием процессора. Префиксы инструкций самостоятельного значения не имеют и применяются в составе других команд, модифицируя их выполнение.
Выполнение каждой инструкции складывается из следующих шагов:
– выборки из памяти и дешифровки кода команды;
– определения местоположения операндов, если они явно задаются кодом команды (некоторые инструкции не имеют операндов вообще, в некоторых других местоположение операндов подразумевается);
– вычисления эффективного адреса операнда в памяти, если таковой имеется;
– собственно выполнения инструкции.