7.1.5. Машинные команды

 

Команда разделяется на группы бит или поля, причем поле кода операции (КОП) показывает, что должен делать компьютер, а остальные поля, называемые операндами, идентифицируют требуемую команде информацию. Операнд может содержать данное, часть адреса данного, косвенный указатель данного или другую информацию, относящуюся к обрабатываемым командой данным. Общий формат команды представлен на Рис. 7.13.

Рис. 7.13. Общий формат команды

Команды могут содержать несколько операндов, но чем больше операндов и чем они длиннее, тем больше места занимает команда в памяти и тем больше времени требуется для передачи ее в ЦП. Чтобы минимизировать общее число бит в команде, большинство команд, особенно в 16-битных компьютерах, имеют один или два операнда, причем минимум одним из операндов в двухоперандной команде является регистр. Так как пространства памяти и ввода-вывода относительно велики, адреса памяти и ввода-вывода требуют сравнительно много бит, а из-за ограниченного числа регистров для определения регистра требуются всего несколько бит. Следовательно, для экономии длины команды следует максимально пользоваться регистрами. Ограничение двумя операндами, конечно, уменьшает гибкость многих команд, но в действительности излишняя гибкость и не нужна. Например, команда сложения, в которой приходится указывать два слагаемых и результат, приводится к двум операндам посредством загрузки суммы на место одного из слагаемых. При этом оно теряется, но обычно это не играет роли. Если же слагаемое потребуется в дальнейшем, его приходится дублировать (запоминать где-то еще) до выполнения сложения.

 

 

HotLog

.  

Заказчику web дизайна и программирования - каталог сайтов, обзор дизайн студий