Cтраница 4
Значительное увеличение скорости работы программ и снижение стоимости программного обеспечения также может быть достигнуто, если при проектировании машины предусматриваются средства для работы с простыми элементами данных, например, такими, как одномерные массивы или векторы. В частности, употребление нескольких регистров общего назначения позволяет программисту применять эффективные по времени методы адресации операндов. Приведенный выше пример суммирования элементов массива хорошо подходит для иллюстрации использования регистров общего назначения. Они могут служить в качестве указателей адресов или индексными регистрами, а также в качестве аккумуляторов данных. [46]
В этой главе Вашему вниманию предлагается детальное описание системы команд микропроцессора 8088 ( и 8086) и режимов адресации операндов. [47]
Формат ключа торых содержит 2048 байт. защиты Байт каждого ключа (. [48] |
В ЕС ЭВМ используют пять основных форматов команд, представленных на рис. 8.5. Форматы команд условно обозначают форматными кодами: RR, RX, RS, SI, SS, указывающими местоположение и способ адресации исходных операндов. [49]
Использование в PDP-11 общего регистра в качестве счетчика команд, вообще говоря, уникально. Обеспечиваемая при этом гибкость приводит к некоторым интересным способам спецификации относительного и непосредственного режимов адресации. Особенности применения счетчика команд для адресации операндов более детально обсуждаются позже в этой главе и гл. [50]
Машинные форматы команд. [51] |
АЛУ процессора; 2) символическая форма, которая непосредственно используется программистом при записи команд исходной программы на бланке. Знание машинного формата помогает программисту быстрее проанализировать и исправить программу в случае возникновения в ней ошибки. Машинный формат команд наиболее тесно связан с адресацией операндов в памяти и регистрами АЛУ процессора. [52]
Машинные форматы команд. [53] |
АЛУ процессора; 2) символическая форма, которая непосредственно используется программ:: м при записи команд исходной программы на бланке. Знание машинксп формата помогает программисту быстрее проанализировать и исправить программу в случае возникновения в ней ошибки. Машинный формат команд наиболее тесно связан с адресацией операндов в памяти и регистрами АЛУ процессора. [54]
По количеству явно заданных адресов операндов все машинные команды делятся на три класса: двухадресные, одноадресные и нульадресные. В зависимости от использованных режимов адресации операндов команда может иметь длину в одно, два или три слова памяти. Первое слово команды содержит код операции и режимы адресации операндов, а второе и третье слова - это либо непосредственно операнды, либо значения, используемые при определении действительных адресов операндов. [55]
Микропроцессор 8088 предоставляет Вам множество способов доступа к операндам, с которыми должна работать Ваша программа. Операнды могут содержаться в регистрах, в самих командах, в памяти или е портах ввода-вывода. В рекламных проспектах производителей оборудования утверждается, что микропроцессор 8088 имеет 24 режима адресации операндов; Пожалуй, так оно и есть, если рассматривать все возможные комбинации. [56]
Так как язык ассемблера ориентирован на конкретную микро - ЭВМ, отличную от машин подобного класса, то. Эти различия в основном относятся к терминам, используемым в командах, и способам адресации операндов. Язык ассемблера должен соответствовать специфическим особенностям МП. Имеется большая разница между одно - и двухадресной машинами. Важным фактором является следующий: имеет машина регистры общего назначения или нет. [57]
Как было описано выше, команда состоит из кода операции и адресов операндов. Все множество команд процессора, определяющих набор выполняемых им элементарных операций, и способов адресации операндов называется системой команд процессора. В случае бинарных операций ( сложение, вычитание и др.) функционально в команде должно присутствовать четыре адреса: два для операндов, один для результата-операции и один для следующей выполняемой команды. [58]
Безадресные, или служебные, инструкции состоят из одного кода операции. В инструкциях передачи управления указываются код операции и константа перехода либо код операции и операнд, определяющий адрес перехода. В большинстве инструкций для каждого операнда задается режим адресации, уточняющий его местонахождение в регистре или в памяти. В зависимости от кода операции и режимов адресации операндов инструкции могут занимать одно, два или три слова. [59]
Это противоречие в машинах с коротким словом преодолевается расширением кодов операций в команде. Для задания небольшой группы основных операций ( арифметических и др.) используется короткий код операции, а получаемая при этом сравнительно большая адресная часть команды позволяет реализовать гибкую, например двухадресную с многими модификациями, адресацию. Для задания других операций используются более длинные ( расширяемые) коды операций, при этом сокращаемая адресная часть оставляет возможность лишь для более простой, например одноадресной, адресации операндов. [60]