Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
110607_INF_UChPOS-2_v9.doc
Скачиваний:
23
Добавлен:
08.11.2018
Размер:
3.4 Mб
Скачать

2. Структура машинных команд

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

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

Процессор имеет определенный набор команд, называемый системой команд процессора.

Система команд процессора характеризуется тремя аспектами: форматами, способами адресации и системой операций.

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

Под форматом команды следует понимать длину команды, количество, размер, положение, назначение и способ кодировки ее полей.

Команды, как и любая информация в ЭВМ, кодируются двоичными словами, которые должны содержать в себе следующие виды информации:

- тип операции, которую следует реализовать в данной команде (КОП);

- место в памяти, откуда следует взять первый операнд (А1);

- место в памяти, откуда следует взять второй операнд (А2);

- место в памяти, куда следует поместить результат (A3).

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

а)

б)

в)

КОП

г)

Рис. 4.7. Форматы команд: а — трехадресный; б — двухадресный; в — одноадресный; г — безадресный

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

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

Для реализации одноадресных форматов (инверсия, сдвиг, инкремент и др.) (рис. 4.7, в) в процессоре предусматривают специальную ячейку — аккумулятор. Первый операнд и результат всегда размещаются в аккумуляторе, а второй операнд адресуется полем А.

Реальная система команд обычно имеет команды нескольких форматов, при­чем тип формата определяется в поле КОП.

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

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

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

При непосредственной адресации необходимые данные содержит сама команда. Эти данные содержатся во втором и третьем байтах трехбайтовой команды или во втором - двухбайтовой. В случае трехбайтовой команды младшие разряды шестнадцатибитового числа содержатся во втором байте команды, а старшие - в третьем (рис.4.8, а).

В случае прямой адресации во втором и третьем байтах команд содержится полный шестнадцатиразрядный адрес памяти. Младшим байтом является второй байт команды В2, а старшим - третий (рис. 4.8, б). Таким способом можно обратиться к любой ячейке адресного пространства памяти.

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

Последним способом является косвенная адресация, при которой в регистровой паре микропроцессора, определяемой кодом команды, содержится полный шестнадцатиразрядный адрес ячейки памяти, содержащей данные (рис. 4.8, г). Старший байт адреса записывается в первом регистре пары, а младший байт - во втором.

Рис. 4.8. Способы адресации: а) непосредственная; б) прямая; в) регистровая; г) косвенная.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]