Detailed reference for the XORWF instruction in PIC18 ISA.
Exclusive OR the contents of WREG with file register f.
d = 0 → result is stored in WREG.d = 1 → result is stored back into register f.a = 0 → Access‑bank addressing.a = 1 → Banked addressing.; d=0, a=0 → result in WREG, Access bank
XORWF 0x20, 0, 0 ; W = W XOR 0x20 (Access bank); d=0, a=0 → result in WREG, Access bank
XORWF 0x20, 0, 0 ; W = W XOR 0x20 (Access bank); d=0, a=1 → result in WREG, Banked address
XORWF 0x20, 0, 1 ; W = W XOR 0x20 (Banked); d=0, a=1 → result in WREG, Banked address
XORWF 0x20, 0, 1 ; W = W XOR 0x20 (Banked); d=1, a=0 → result back to file register, Access bank
XORWF 0x20, 1, 0 ; 0x20 = 0x20 XOR W (Access bank); d=1, a=0 → result back to file register, Access bank
XORWF 0x20, 1, 0 ; 0x20 = 0x20 XOR W (Access bank); d=1, a=1 → result back to file register, Banked address
XORWF 0x20, 1, 1 ; 0x20 = 0x20 XOR W (Banked); d=1, a=1 → result back to file register, Banked address
XORWF 0x20, 1, 1 ; 0x20 = 0x20 XOR W (Banked); Load literal into WREG then XOR, result in WREG (Access bank)
MOVLW 0x55
XORWF 0x20, 0, 0 ; W = W XOR 0x20 = 0x55 XOR 0x20; Load literal into WREG then XOR, result in WREG (Access bank)
MOVLW 0x55
XORWF 0x20, 0, 0 ; W = W XOR 0x20 = 0x55 XOR 0x20