Курс лекций - Микропроцессоры


Описание машинных команд (продолжение) - часть 3


Количество байт: 2

Количество циклов: 2

Действие команды: (PC) = (PC) + 2

((SP)) = (direct)

(SP) = (SP) + 1

Машинный код:

1 1 0 0 0 0 0 0

d d d d d d d d

RET - возврат из подпрограммы.

Описание: последовательно выгружает старший и младший байты счетчика команд из стека, уменьшая содержимое указателя стека на 2. Выполнение программы продолжается с нового, только что загруженного в счетчик команд адреса. Команда не воздействует на флаги.

Пример: RET

Количество байт: 1

Количество циклов: 2

Действие команды: (PC) = (PC) + 2

(PC15-8) = ((SP))

(SP) = (SP) - 1

(PC7-0) = ((SP))

SP) = (SP) - 1

Машинный код: 0 0 1 0 0 0 1 0=

RETI - возврат из подпрограммы обслуживания прерывания.

Описание: последовательно выгружает старший и младший байты счетчика команд из стека, уменьшая содержимое указателя стека на 2. Кроме того, команда восстанавливает состояние логики прерываний, разрешая обработку следующего прерывания того же уровня приоритета. Выполнение программы продолжается с того же адреса, что был в программном счетчике (PC) до начала обработки прерывания (следующий за командой, во время выполнения которой был обнаружен запрос на прерывание). Команда не воздействует на флаги и не восстанавливает состояние PSW, бывшее до обработки прерывания. Если к этому моменту обнаруживается новый запрос на прерывание, то до нового вызова подпрограммы обслуживания прерывания выполняется одна команда из основной программы.

Пример: RETI

Количество байт: 1

Количество циклов: 2

Действие команды: (PC) = (PC) + 2

(PC15-8) = ((SP))

(SP) = (SP) - 1

(PC7-0) = ((SP))

(SP) = (SP) - 1

Машинный код:

0 0 1 1 0 0 1 0

RL A - сдвиг содержимого аккумулятора влево.

Описание: сдвигает восемь бит аккумулятора на один бит влево, бит 7 засылается на место бита 0. Команда не воздействует на флаги.

Пример: RL A

Количество байт: 1

Количество циклов: 1

Действие команды: (An+1) = (An) n=0..6

(A0) = (A7)

Машинный код:

0 0 1 0 0 0 1 1

RLC A - сдвиг содержимого аккумулятора влево через флаг переноса.




- Начало -  - Назад -  - Вперед -