!!UNTER BEARBEITUNG!!
ADDLW
|
ADD Zahl und W
|
Syntax:
|
ADDLW k
|
Operanten:
|
0 ≤ k ≤ 255
|
Operation:
|
(W) + k → (W)
|
Beeinflusste Statusbits:
|
C, DC, Z
|
Beschreibung:
|
Der Inhalt des W Registers wird mit der 8-Bit Zahl k ADD addiert und das Ergebnis landet wieder im W Register
|
|
ADDWF
|
ADD W und f
|
Syntax:
|
ADDWF f,d
|
Operanten:
|
0 ≤ f ≤ 127 und d ∈ [0,1]
|
Operation:
|
(W) + (f) → (destination)
|
Beeinflusste Statusbits:
|
C, DC, Z
|
Beschreibung:
|
Der Inhalt des W Registers wird mit dem Register f addiert und das Ergebnis landet entweder im W Register (d=0) oder im Register f (d=1)
|
|
ANDLW
|
AND Zahl mit W
|
Syntax:
|
ADDLW k
|
Operanten:
|
0 ≤ k ≤ 255
|
Operation:
|
(W) + k → (W)
|
Beeinflusste Statusbits:
|
Z
|
Beschreibung:
|
Der Inhalt des W Registers wird mit der 8-Bit Zahl k verundent und das Ergebnis landet wieder im W Register
|
|
ANDWF
|
AND W mit f
|
Syntax:
|
ANDWF f,d
|
Operanten:
|
0 ≤ f ≤ 127 und d ∈ [0,1]
|
Operation:
|
(W) .AND. (f) → (destination)
|
Beeinflusste Statusbits:
|
Z
|
Beschreibung:
|
Der Inhalt des W Registers wird mit dem Register f verundet und das Ergebnis landet entweder im W Register (d=0) oder im Register f (d=1)
|
|
BCF
|
Bit Clear f
|
Syntax:
|
BCF f,b
|
Operanten:
|
0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
|
Operation:
|
0 → (f)
|
Beeinflusste Statusbits:
|
/
|
Beschreibung:
|
Bit ‘b’ in Register ‘f’ wird auf 0 gesetzt
|
|
BSF
|
Bit Set f
|
Syntax:
|
BSF f,b
|
Operanten:
|
0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
|
Operation:
|
0 → (f<b>)
|
Beeinflusste Statusbits:
|
/
|
Beschreibung:
|
Bit ‘b’ in Register ‘f’ wird auf 1 gesetzt
|
|
BTFSC
|
Bit Test f, Skip if Clear
|
Syntax:
|
BTFSC f,b
|
Operanten:
|
0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
|
Operation:
|
skip if (f<b>) = 0
|
Beeinflusste Statusbits:
|
/
|
Beschreibung:
|
Wenn das Bit b im Register f 0 ist, dann wird der nachfolgende Befehl nicht und stattdessen ein NOP ausgeführt. Wenn das Bit b 1 ist, dann wird der nächste Befehl ausgeführt.
|
|
BTFSS
|
Bit Test f, Skip if Set
|
Syntax:
|
BTFSS f,b
|
Operanten:
|
0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
|
Operation:
|
skip if (f<b>) = 1
|
Beeinflusste Statusbits:
|
/
|
Beschreibung:
|
Wenn das Bit b im Register f 1 ist, dann wird der nachfolgende Befehl nicht und stattdessen ein NOP ausgeführt. Wenn das Bit b 0 ist, dann wird der nächste Befehl ausgeführt.
|
|
CALL
|
Call Subroutine
|
Syntax:
|
CALL k
|
Operanten:
|
0 ≤ k ≤ 2047
|
Operation:
|
(PC) + 1 → TOS,
k → PC<10:0>,
(PCLATH<4:3>) → PC<12:11>
|
Beeinflusste Statusbits:
|
/
|
Beschreibung:
|
Als erstes wird die Rückkehradresse (PC+1) in den Stack geschrieben. Dann Die 11bit Sprungadresse in den PC geladen (die 2 MSB kommen aus dem PCLATH).
|
|
CLRF
|
Clear f
|
Syntax:
|
CLRF f
|
Operanten:
|
0 ≤ f ≤ 127
|
Operation:
|
00h → (f),
1 → Z
|
Beeinflusste Statusbits:
|
Z
|
Beschreibung:
|
Das komplette Byte im Register f wird gelöscht (lauter 0er). Das hat zur folge, das Z gesetzt wird.
|
|