Реклама:

В 8051 предусмотрено шесть простых форматов команд (рис. 5.12). Размер команд может быть равен 1, 2 или 3 байтам. Вариант 1 формата предусматривает наличие в команде только кода операции. Такова, к примеру, команда инкремента сумматора.

Вариант 2 формата также состоит из одного байта, но из 8 бит в нем 5 выделяется на код операции, оставшиеся 3 - на номер регистра. По этому формату строятся команды, которые одновременно обращаются к сумматору и регистру, например команды добавления значения из регистра в сумматор или переноса данных из сумматора в регистр.

Форматы команд 8051

Рис. 5.12. Форматы команд 8051

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

Варианты 4 и 5 формата предназначены для команд переходов и вызовов подпрограмм. 11-разрядные адреса применяются в отсутствие внешней памяти, когда длина адреса не превышает 4096 (в модели 8051) или 8192 (в модели 8052). Если внешняя память присутствует и ее объем составляет более 8 Кбайт, применяются 16-разрядные адреса.

Команда, построенная по варианту 6 формата, содержит два 8-разрядных операнда. Этот формат характерен для многих команд, например, для команды переноса 8-разрядной непосредственной константы по адресу встроенной в микросхему памяти.

Форматы команд процессора UltraSPARC III || Оглавление || Адресация