Команди для MPlab - На допомогу студентам БНТУ - курсові, реферати, лабораторні!
Команди для MPlab
ADD LW K – додавання константи та акумулятора. Константа від 0 до 255 (у десятковій системі), (w)+k -> (w) змінюються прапори C, DC, Z.
ADD wf f,d – додавання акумулятора з регістром: (w)+(f) –> (пр.) d. f від 0 до 127 d належить значення 0 або 1 в залежності від приймача. Змінюються прапори C, DC, Z.
AND LW K – побита U константи та акумулятора. (w)^k – > (w). Змінюється прапор Z.
AND wf f,d – побитное U між акумулятором та регістром. (w)^(f) – >(пр.)d. Змінюється прапор Z.
BCF f, b – очистити біт у регістрі b від 0 до 7. 0 -> (f). Вказано. біт регістру запис-ся.
BSF f, b – встановити біт у регістрі. 1 -> (f). Прапори не змінюються.
Btfsc f, b – перевірити біт у регістрі і пропустити, якщо 0. Якщо біт =1, виконуються такі команди. Якщо =0, наступна команда пропускається.
Btfss f, b – перевірити біт у регістрі та пропустити, якщо =1.
CALL K – виклик підпрограми. приймає значення від 0 до 2047. (РС)+1 -> TOS, K -> PC, (PCLATH) -> PC. Адреса наступної інструкції завантажується у вершину стека. 11 біт завантажується з коду команд в лічильник команд, а 2 старших завантажується в 12-й і 11-й. Команда виконується за 2 цикли.
CLR F f – очищує вміст регістрів. Змінюється прапор Z.
CLR W – очищення акумулятора. Змінюється прапор Z.
CLR WDT – очищає сторожовий таймер та його розподільник. Змінюються прапори ТО та PD.
COM f f, d – інвертує регістр. Змінюється прапор Z. (f) – 1 -> (пр)d.
Decf f,d – декремент регістру f. Змінюється прапор Z. (f) – 1 -> (пр)d.
Dtc fsz f,d – відняти 1 з регістру і пропустити, якщо 0. Якщо результат не дорівнює 0, то виконуєтьсянаступна команда, якщо =0, наступна команда пропускається.
IOR lw k – побита АБО const та акумулятора. Змінюється прапор Z. (w) \/ до -> (w).
IOR wf f, d – побита АБО акумулятора та регістра. Змінюється прапор Z. (w)\/(f) -> (пр)d.
MOV f f, d – пересилає вміст регістру f приймач, залежить від d. Змінюється прапор Z. (f) -> (пр)d, (f) -> (f) – використовується для перевірки вмісту регістру.
MOV lw k – пересилання const в акумулятор.
MOV wf f – пересилання вмісту акумулятора в регістр. (w) -> (f)
NOP – пуста операція.
REtfIE - Повернення з підпрограми з дозволом переривання. TOS -> PC, 1 -> GIE. Вершина стека завантажується в лічильник команд. Встановлюється в 1 біт, дозволяючи переривання.
RETlwk – повернення з підпрограми із завантаженням константи в акумулятор. K -> (w), TOS -> PC.
RETURN – повернення із підпрограми. TOS -> PC.
RLF f, d - циклічний зсув регістра f вліво через перенесення. Змінюється прапор З. Вміст завантажується залежно від d.
RRF f, d – циклічний зсув регістра f праворуч через перенесення. Змінюється прапор З. Вміст завантажується залежно від d.
SLEEP – змінюються прапори ТО та PD. Очищає сторожовий таймер та його ділитель.
SUB LW K – віднімає від константи вміст акумулятора. К – (w) –> (w). Змінюються прапори C, DC, Z.
SUB wf f, d – робить віднімання з регістра акумулятора. Приймач залежить від біта d. (f) – (w) -> (пр)d. Змінюються прапори C, DC, Z.
SWAPF f, d – міняє місцями старший та молодший півбайти регістру. . Приймач залежить від біта d.
XOR LW k – побитний виняток АБО константи та акумулятора. Змінюється прапор Z. (w)\-/ k -> (w).
XOR WW f, d – побитевиняток АБО акумулятора та регістра. Змінюється прапор Z. (w)\-/ (f) -> (пр)d.