概要

XORWF f[,d,[,a]]
ワーキングレジスタとデーターメモリf番地とのビットごとのXOR(排他的論理和:2つのビット値が同じ場合は0を違う場合は1を返す)を計算します。XORは指定された複数のビットを反転させることができます。また2回実行すれば答えが元に戻ります
bit0とbit1を反転させたい場合
b'10101010' と b'00000011' との XORは b'10101001'となる。
2回実行すると元の値に戻る
b'10101001' と b'00000011' との XORは b'10101010'となる。
[]内は省略可能であることを示す。
f[,d,[,a]]についてはリンクを参照してください。

記述例

XORWF ADS1 ; メモリ(ADS1 アクセスバンク) 結果をメモリへ上書きする
XORWF ADS1,F ; メモリ(ADS1 アクセスバンク) 結果をメモリへ上書きする
XORWF ADS1,W ; メモリ(ADS1 アクセスバンク) 結果をワーキングレジスタ
XORWF ADS1,0 ; メモリ(ADS1 アクセスバンク) 結果をワーキングレジスタ
XORWF ADS1,1 ; メモリ(ADS1 アクセスバンク) 結果をメモリへ上書きする
XORWF ADS1,F,BANKED ; メモリ(ADS1 BSRレジスタで指定) 結果をメモリへ上書きする
XORWF ADS1,1,1 ; メモリ(ADS1 BSRレジスタで指定) 結果をメモリへ上書きする

フラグ

N : 計算結果が負の場合1にセットされる
Z : 計算結果が0の場合1にセットされる