Inštrukcie PIC 16F84/62x
Pri simulácii PIC v programe KTechLab je možné napísať program aj v jazyku Assembler, preto som sa rozhodol spísať a popísať všetkých 35 inštrukcií, ktoré tieto (tento) mikroradiče poznajú. Mikroradiče 16F84, 16F627 aj 16F628 (vrátane ich novších verzií s A na konci) majú rovnakú sadu inštrukcií…
Obsah článku
Aritmetické
ADDLW
ADDLW konštanta
Súčet konštanty a obsahu registra W a výsledok uloží do W.
Cyklov: | 1 |
---|---|
Ovplyvňuje: | C, DC, Z |
ADDWF
ADDWF f,d
Súčet obsahu registra W a obsahu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | C, DC, Z |
DECF
DECF f,d
Odpočíta jedna od obsahu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
INCF
INCF f,d
Pripočíta jedna k obsahu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
SUBLW
SUBLW konštanta
Odpočíta konštantu od obsahu registra W a výsledok uloží do W.
Cyklov: | 1 |
---|---|
Ovplyvňuje: | C, DC, Z |
SUBWF
SUBWF f,d
Odpočíta od obsahu registra W obsah registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | C, DC, Z |
Logické
ANDLW
ANDLW konštanta
Logické AND obsahu registra W a konštanty a výsledok uloží do W.
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
ANDWF
ANDWF f,d
Logické AND obsahu registra W a obsahu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
COMF
COMF f,d
Negácia obsahu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
IORLW
IORLW konštanta
Logické OR obsahu registra W a konštanty a výsledok uloží do W.
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
IORWF
IORWF f,d
Logické OR obsahu registra W a obsahu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
XORLW
XORLW konštanta
Logické XOR obsahu registra W a konštanty a výsledok uloží do W.
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
XORWF
XORWF f,d
Logické XOR obsahu registra W a obsahu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | Z |
Presun dát
RRF
RRF f,d
Rotácia doprava cez bit C a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | C |
SWAPF
SWAPF f,d
Výmena dolného a horného polbajtu registra f a výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov: | 1 |
---|---|
Ovplyvňuje: | - |
Skoky
BTFSC
BTFSC f, b
Ak je bit b registra f nulový, tak preskočí nasledujúcu inštrukciu. Cyklov 1 (2 pri skoku) Ovplyvňuje -
BTFSS
BTFSS f,b
Ak je bit b registra f nenulový, preskočí nasledujúcu inštrukciu. Cyklov 1 (2 pri skoku) Ovplyvňuje -
DECFSZ
DECFSZ f,d
Odpočíta od registra f jedna, ak je výsledok nulový, preskočí nasledujúcu inštrukciu, výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov 1 (2 pri skoku) Ovplyvňuje -
INCFSZ
INCFSZ f,d
K registru f pripočíta jedna, ak je výsledok nulový (pretečenie), preskočí nasledujpcu inštrukciu, výsledok uloží do:
- f, ak
d=1
- W, ak
d=0
Cyklov 1 (2 pri skoku) Ovplyvňuje -