:
 








Команда. Формат команды. Классификация команд. Особенности состава команд Intel.

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

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

В команде зачастую содержатся не сами операнды, а информация об их расположении (адреса ячеек памяти и регистры, где они находятся).

Общая структура команды имеет следующий вид:

,т.е. операционная и адресная части.

 

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

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

В свою очередь, эти части, что особенно характерно для адресной части, могут состоять из нескольких полей.

Структура команды определяется составом, назначением и расположением полей в коде.

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

Классификация команд по основным признакам:

 

Первую классификацию можно представить след. образом:

¨ команды арифметических операций для чисел с фиксированной или плавающей запятой;

¨ команды десятичной арифметики;

¨ команды передачи данных (MOV AX, 0FFFh);

¨ команды операций ввода/вывода (IN, OUT);

¨ команды логических операций (AND, OR, NOT);

¨ команды передачи управления (управление циклом — LOOP, условные переходы — JAE, JB);

¨ команды задания режима работы машины и др.

 

По адресности (количеству адресов в адресном поле) команды подразделяются на:

1) Трехадресные – А1, А2 – адреса операндов, А3 – адрес результата,

ОЗУ[А3]:=ОЗУ[А1]*ОЗУ[А2] - справедливо для прямой адресации

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

2) двухадресные – А1 является адресом первого операнда, А2 – адресом второго операнда, результат записывается либо по одному из адресов, либо остается в аккумуляторе:

ОЗУ[А1]:=ОЗУ[А1]*ОЗУ[А2] - результат записывается по одному из адресов,

АКК:=ОЗУ[А1]*ОЗУ[А2] - результат остается в аккумуляторе,

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

АКК:=ОЗУ[А1]*<АКК>, где * - арифметическая или логическая операция,

 

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

 

Для программиста наиболее естественны и удобны трехадресные команды. Однако из-за необходимости иметь большое число разрядов для представления адресов и кода операции длина трехадресной команды становится недопустимо большой, и ее не удается разместить в машинном слове. Следует отметить, что очень часто в качестве операндов исп-ся результаты операций, хранимые в регистрах машины. В этом случае выполняемые команды носят 1 и 2-х адресный характер, поэтому 3-х адресные - редко.

Обычно в ЭВМ используется несколько форматов команд разной длины. В действительности же адресные поля команд большей частью содержат не сами адреса, а только информацию, позволяющую определить действительные (исполнительные) адреса операндов в соответствии с используемыми в командах способами адресации.

 

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

Можно установить, как это принято для большинства машин, что после выполнения данной команды, расположенной по адресу К (и занимающей L ячеек), выполняется команда из (K+L)-й ячейки. Такой порядок выборки команд называется естественным. Он нарушается только специальными командами. В таком случае отпадает необходимость указывать в команде в явной форме адрес следующей команды.

 


:

  1. Особенности состава команд Intel.




<== | ==>
 | Особенности состава команд Intel.

? google:

 

© studopedia.com.ua '.


: 0.002 .