Cтраница 1
Двухоперандные команды FPP делятся на загружающие и сохраняющие. Последняя буква мнемонического обозначения команды определяет одинарную или двойную точность. [1]
Пример использования команды SAR при л 3. [2] |
Все двухоперандные команды AND, OR, XOR и TEST имеют по три одинаковых формата и совпадают по времени исполнения. Однооперандная команда NOT осуществляет инвертирование операнда и имеет один формат. Следует отметить, что при выполнении логических команд флаги CF и OF не изменяют своих значений, а в соответствии с результатом операции устанавливаются флаги PF, SF и ZF. Флаг AF после выполнения логических команд имеет неопределенное значение. [3]
Первое слово двухоперандных команд имеет следующий формат: слева направо в битах с 15-го по 12 - й содержится код операции, в битах с 11-го по 6 - й - адрес источника и в битах с 5-го по 0 - й - адрес приемника. [4]
Форматы основных Бшп15 3 2. [5] |
Формат 2 соответствует двухоперандным командам. [6]
В общем виде формат двухоперандной команды приведен на рис. 2.2, а, где штриховыми линиями обозначены необязательные байты команды. При d l осуществляется передача операнда или результата операции в регистр, который определяется полем reg второго байта команды; при d 0 - передача из указанного регистра. Поле w идентифицирует тип ( разрядность) операндов: при wl команда оперирует словом, при w 0 - байтом. [7]
И это соответствует действительности, так как одно - и двухоперандные команды должны ссылаться на общий регистр. [8]
В О-фазе производится обработка как операнда-источника, так и операнда-приемника двухоперандной команды. Если положить, что Rs и Rd есть внутренние регистры, которые содержат исходный операнд и адрес назначения соответственно, то 0-фаза может быть описана следующим образом. [9]
Программно-доступные регистры МП ВМ66. [10] |
Команды МП ВМ86 могут адресовать один или два операнда, причем двухоперандные команды являются, как правило, симметричными, так как результат операции может быть направлен на место любого из операндов. [11]
Отметим, что поле reg используется для указания регистра только в двухоперандных командах. Если в команде один операнд, то он идентифицируется полем r / m, а поле reg используется для расширения кода операции. [12]
IR [ 15: 12 ] используется для того, чтобы определить, какая из двухоперандных команд должна быть выполнена. [13]
Во-первых, команды могут быть одно - и двухоперандными или могут вообще не иметь операндов. Суммарное время выполнения двухоперандной команды складывается из времени обработки адресов источника и приемника и собственно времени выполнения команды Для однооперандной команды время выполнения суммируется только со временем обработки адреса источника; наконец, для безоперандных команд отсутствуют оба компонента обработки адресов. [14]
Упрощенная диаграмма передачи данных в ЭВМ. [15] |