Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по ОМТ.doc
Скачиваний:
17
Добавлен:
19.11.2019
Размер:
3.88 Mб
Скачать

Return – Выход из подпрограммы

Синтаксис

RETURN

Операнды

Операция

Измен.

флаги

Описание

В счетчик команд PC загружается значение с вершины стека. Команда выполняется за 2 машинных цикла.

Пример

; w = 6

call subprogram

; w = 8

...

subprogram:

addlw 2

return

RLF – Циклический сдвиг регистра f влево через флаг переноса С

Синтаксис

RLF f,d

Операнды

Операция

Измен.

флаги

C

Описание

Выполняется циклический сдвиг содержимого регистра f влево через флаг переноса. 0-й бит встает на место 1-го, 1-й на место 2-го и т.д. 7-й бит записывается в флаг переноса С, а затем из флага С в 0-й. В зависимости от операнда d результат операции записывается либо в регистре f, либо в регистре W.

Пример

; w = 12, f(4) = 135 = 0b10000111, c = 0

rlf 4,1

; w = 12, f(4) = 16 = 0b00001111, c = 1

rlf 4,0

; w = 30 = 0b00011110, f(4) = 16, c = 0

RRF – Циклический сдвиг регистра f вправо через флаг переноса С

Синтаксис

RLF f,d

Операнды

Операция

Измен.

флаги

C

Описание

Выполняется циклический сдвиг содержимого регистра f вправо через флаг переноса. 7-й бит встает на место 6-го, 6-й на место 5-го и т.д. 0-й бит записывается в флаг переноса С, а затем из флага С в 7-й. В зависимости от операнда d результат операции записывается либо в регистре f, либо в регистре W.

Пример

; w = 12, f(4) = 7 = 0b00000111, c = 0

rrf 4,1

; w = 12, f(4) = 83 = 0b10000011, c = 1

rrf 4,0

; w = 193 = 0b11000001, f(4) = 83, c = 1

Sleep – Перейти в спящий режим

Синтаксис

SLEEP

Операнды

Операция

Измен.

флаги

Описание

Команда сбрасывает флаг таймаута и устанавливает флаг спящего режима . Затем очищается регистр-счтчик сторожевого таймера и его предделитель если он настроен. После этого микроконтроллер переводится в спящий режим и тактовый генератор отключается.

Пример

sleep

Sublw – Вычитение w из константы k

Синтаксис

SUBLW k

Операнды

Операция

Измен.

флаги

C, DC, Z

Описание

Выполняется вычитание регистра W из 8-битной константы k. Результат помещается в регистр W.

Пример

; w = 3

sublw 5

; w = 2