 |
PIC16F1708 |
instrukční web |
Instrukce |
Instrukce přenosu
| Název |
Popis |
| MOVF f, d |
Okopíruje číslo z f do W nebo opět do f -podle d |
| MOVWF f |
Okopíruje číslo z W do f |
| MOVLW k |
Uloží osmibytové číslo k do W |
| CLRF f |
Vynuluje registr f |
| CLRW |
Vynuluje registr W |
| MOVLB k |
Uloží číslo k do registru BSR - přepne stránku RAM |
| MOVLP k |
Uloží číslo k do registru PCLATH - pro skoky |
Aritmetické instrukce
| Název |
Popis |
Vzorec |
| ADDWF f, d |
Sečte registr W a f, výsledek do W nebo f - podle d |
W + f = podle d |
| ADDLW k |
Sečte W s čísle k |
W + k = W |
| SUBWF f, d |
Odečte W od k, výsledek do W nebo f - podle d |
f - W = podle d |
| SUBLW k |
Odečte k od W |
k - W = W |
| DECF f, d |
Odečte od registru k 1, výsledek do W nebo f - podle d |
f - 1 = podle d |
| INCF f, d |
Přičte k registru f 1, výsledek do W nebo f - podle d |
f + 1 = podle d |
Logické instrukce
| Název |
Popis |
Vzorec |
| COMF f, d |
Negace všech bitů v registru f, výsledek do W nebo f - podle d |
|
| ANDWF f, d |
Logický součin W a f, každý bit zvlášť |
W and f = podle d |
| ANDLW k |
Logický součin W a konstanty k, každý bit zvlášť |
W and k=W |
| IORWF f, d |
Logický součet W a registru f, výsledek do W nebo f - podle d |
W or f = podle d |
| IORLW k |
Logický součet W a konstanty k |
W or k = W |
| XORWF f, d |
Logický EX-OR W a registru f |
W EX-OR f = podle d |
| XORLW k |
Logický EX-OR W a konstanty k |
W EX-OR k = W |
Bitové instrukce
| Název |
Popis |
| BCF f, b |
nastavý bit b v registru f do 0 (bit clear) |
| BSF f, b |
nastavý bit b v registru f do 1 (bit set) |
| LSLF f, d |
Logický posun registru f vlevo, výsledek do W nebo f - podle d |
| LSRF f, d |
Logický posun registru f vpravo, výsledek do W nebo f - podle d |
Skoky
| Název |
Popis |
Vzorec |
| GOTO aa |
Provede skok na adresu aa |
provede se vždy |
| BRA k |
Relativní skok o k buněk |
provede se vždy |
| BRW |
Relativní skok o číslo v registru W |
provede se vždy |
| BTFSC f, b |
Otestuje bit b v registru f, když je bit b 0 přeskočí následující instruci |
neprovede se vždy |
| BTFSS f, b |
Otestuje bit b v registru f, když je bit b 1 přeskočí následující instrukci |
neprovede se vždy |
| DECFSZ f, d |
registr f sníží o 1, výsledek uloží podle d, když je registr f 0, přeskočí následující instrukci |
| INCFSZ f, d |
registr f zvýší o 1, výsledek uloží podle d, když je registr f 0, přeskočí následující instrukci |
Podprogramy a přerušení
| Název |
Popis |
| CALL aa |
Zavolá podprogram na adrese aa |
| CALLW |
Zavolá podprogram na adrese podle čísla v registru W |
| RETURN |
Návrat z podprogramu |
| RETLW k |
Návrat z podprogramu s číslem k v registru W |
| RETFIE |
Návrat z přerušení |
Ostatní
| Název |
Popis |
| NOP |
Nedělej nic |
| ADDFSR n, k |
Přičte číslo k k registru FSRn |
| MOVIW n, mm |
|
| MOVWI n, mm |
|
|