MPASM Technic – リテラルの引き算

PIC18FのSUBLW命令によるリテラル[固定数値]の引き算は、 数値-WREGとなる。

一般的な引き算では、WREG-固定数値 のほうが使いやすいのだが、このようなCPUニーモニックはない。

解決方法として、リテラルとして与える数値をマイナスとして記述し、加算することで解決する。

WREG – 10 の場合、 WREG + (-10 )とする。 ADDLW -.10

記述方法として、10進数を示す場合、先頭に .(Period) を付加する。

10進負数を示す場合、-. を付加することがポイント。 .-10ではない。

当然ではあるが、キャリー(ボロー)ビットの立ち方が加算とは逆になるので、結果の範囲判定を行う場合、注意する。

 

 

カテゴリー: MPASM, MPLAB X IDE, PIC, PIC18F, PIC18F46K40, PIC18FxxK40 パーマリンク