<< Előző oldal Vissza a tartalomjegyzékhez Következő oldal >>
9.2. Utasításkészlet összefoglaló táblázat
A következő táblázatban a közepes teljesítményű PIC mikrovezérlők utasításkészlete látható funkció szerinti csoportosításban. (Egy utasítás több csoportban is szerepelhet.)
BÁJT-SZINTŰ REGISZTER KEZELŐ UTASÍTÁSOK | |||||
---|---|---|---|---|---|
MPASM mnemonik és szintaxis |
Rövid leírás | Ciklus- szám |
Utasításszó | Módosított jelzőbitek |
|
ADDWF | f,d | W és f összeadása | 1 | 00 0111 dfff ffff | C, DC, Z |
ANDWF | f,d | W és f bitenkénti "ÉS" művelet |
1 | 00 0101 dfff ffff | Z |
CLRF | f | f nullázása | 1 | 00 0001 1fff ffff | Z |
COMF | f,d | f bitenkénti negációja | 1 | 00 1001 dfff ffff | Z |
DECF | f,d | 1-gyel csökkenti f értékét | 1 | 00 0011 dfff ffff | Z |
DECFSZ | f,d | 1-gyel csökkenti f-et, a következő utasítást átugorja, ha [f] = 0 |
1 (2) | 00 1011 dfff ffff | - |
INCF | f,d | 1-gyel növeli f értékét | 1 | 00 1010 dfff ffff | Z |
INCFSZ | f,d | 1-gyel növeli f-et, a következő utasítást átugorja, ha [f] = 0 |
1 (2) | 00 1111 dfff ffff | - |
IORWF | f,d | W és f bitenkénti "VAGY" művelet |
1 | 00 0100 dfff ffff | Z |
MOVF | f,d | f kiolvasása a W-be vagy csak tesztelésre |
1 | 00 1000 dfff ffff | Z |
MOVWF | f | W beírása f-be | 1 | 00 0000 1fff ffff | - |
RLF | f,d | forgatás balra C-n keresztül | 1 | 00 1101 dfff ffff | C |
RRF | f,d | forgatás jobbra C-n keresztül | 1 | 00 1100 dfff ffff | C |
SUBWF | f,d | W kivonása f-ből | 1 | 00 0010 dfff ffff | C, DC, Z |
SWAPF | f,d | az alsó és felső négy bit cseréje | 1 | 00 1110 dfff ffff | - |
XORWF | f,d | W és f bitenkénti "kizáró-VAGY" művelet |
1 | 00 0110 dfff ffff | Z |
BIT-SZINTŰ REGISZTER KEZELŐ UTASÍTÁSOK | |||||
MPASM mnemonik és szintaxis |
Rövid leírás | Ciklus- szám |
Utasításszó | Módosított jelzőbitek |
|
BCF | f,b | a b-edik bitet "0"-ra állítja | 1 | 01 00bb bfff ffff | - |
BSF | f,b | a b-edik bitet "1"-re állítja | 1 | 01 01bb bfff ffff | - |
BTFSC | f,b | bitteszt; a következő utasítást átugorja, ha [b] = 0 |
1 (2) | 01 10bb bfff ffff | - |
BTFSS | f,b | bitteszt; a következő utasítást átugorja, ha [b] = 1 |
1 (2) | 01 11bb bfff ffff | - |
KONSTANSOS UTASÍTÁSOK | |||||
MPASM mnemonik és szintaxis |
Rövid leírás | Ciklus- szám |
Utasításszó | Módosított jelzőbitek |
|
ADDLW | k | konstans hozzáadása W-hez | 1 | 11 111x kkkk kkkk | C, DC, Z |
ANDLW | k | konstans és W bitenkénti "ÉS" művelet |
1 | 11 1001 kkkk kkkk | Z |
IORLW | k | konstans és W bitenkénti "VAGY" művelet |
1 | 11 1000 kkkk kkkk | Z |
MOVLW | k | konstans bevitele W-be | 1 | 11 00xx kkkk kkkk | - |
RETLW | k | szubrutinból visszatérés konstans W-be töltésével |
2 | 11 01xx kkkk kkkk | - |
SUBLW | k | W kivonása konstansból | 1 | 11 110x kkkk kkkk | C, DC, Z |
XORLW | k | konstans és W bitenkénti "kizáró-VAGY" művelet |
1 | 11 1010 kkkk kkkk | Z |
FELTÉTEL NÉLKÜLI ELÁGAZÁSOK | |||||
MPASM mnemonik és szintaxis |
Rövid leírás | Ciklus- szám |
Utasításszó | Módosított jelzőbitek |
|
CALL | k | szubrutin hívás a k címről | 2 | 10 0kkk kkkk kkkk | - |
GOTO | k | a k címre ugrás | 2 | 10 1kkk kkkk kkkk | - |
FELTÉTELES ELÁGAZÁSOK | |||||
MPASM mnemonik és szintaxis |
Rövid leírás | Ciklus- szám |
Utasításszó | Módosított jelzőbitek |
|
BTFSC | f,b | bitteszt; a következő utasítást átugorja, ha [b] = 0 |
1 (2) | 01 10bb bfff ffff | - |
BTFSS | f,b | bitteszt; a következő utasítást átugorja, ha [b] = 1 |
1 (2) | 01 11bb bfff ffff | - |
DECFSZ | f,d | 1-gyel csökkenti f-et, a következő utasítást átugorja, ha [f] = 0 |
1 (2) | 00 1011 dfff ffff | - |
INCFSZ | f,d | 1-gyel növeli f-et, a következő utasítást átugorja, ha [f] = 0 |
1 (2) | 00 1111 dfff ffff | - |
KÖZVETLEN VEZÉRLŐ UTASÍTÁSOK | |||||
MPASM mnemonik és szintaxis |
Rövid leírás | Ciklus- szám |
Utasításszó | Módosított jelzőbitek |
|
CLRW | - | W nullázása | 1 | 00 0001 0xxx xxxx | Z |
CLRWDT | - | a WDT számlálójának nullázása | 1 | 00 0000 0110 0100 | , |
NOP | - | üres utasítás, nincs érdemi művelet | 1 | 00 0000 0xx0 0000 | - |
RETFIE | - | visszatérés megszakításból | 2 | 00 0000 0000 1001 | - |
RETLW | k | szubrutinból visszatérés konstans W-be töltésével |
2 | 11 01xx kkkk kkkk | - |
RETURN | - | visszatérés szubrutinból | 2 | 00 0000 0000 1000 | - |
SLEEP | - | a készenléti üzemmód aktivizálása | 1 | 00 0000 0110 0011 | , |
Ahol:
d - célkijelölő bit (ha d=0, akkor az eredmény a W-be íródik; ha d=1, akkor az f-be);
f - 7 bites adatregiszter cím;
b - 3 bites bitcím az adatregiszteren belül;
k - 8 bites konstans vagy 11 bites programmemória cím;
x - tetszőleges érték, de célszerű "0"-t használni.
A C, DC, Z, és jelzőbitek a STATUS regiszterben találhatóak.
A közepes teljesítményű, 14 bites utasításhosszú mikrovezérlők felismerik és végrehajtják még az OPTION és TRIS utasításokat, amelyek a 12 bites utasításhosszú PIC mikrovezérlők hardvervezérléséhez szükségesek. Így 12 bitesről 14 bites mikrovezérlőre való áttéréskor a program csekély változtatással felhasználható. A gyártó az OPTION és TRIS utasítások használatát a későbbi kompatibilitási problémák miatt nem ajánlja. Természetesen minden feladat hiánytalanul megoldható ezek nélkül is.
Letölthető és kinyomtatható táblázatok:
ˇ
Word 6.0 formátumú összefoglaló táblázat;
ˇ
Word 2000 formátumú összefoglaló táblázat.
Tudomány és Technika (test@t-es-t.hu)
<< Előző oldal Vissza a tartalomjegyzékhez Vissza a lap tetejére Következő oldal >>