// 直交形式
<dst> = ABS <dreg>;
// 基本形式
[ IF <cond> ] <dst> = ABS <xop>;
// 直交形式 AR = ABS MY0; // 基本形式 AR = ABS AX0; IF GE AR = ABS AX1; // 条件実行
オペランドの絶対値を計算します。結果はARかAFに格納します。なお、オペランドが-1ちょうどの場合はASTATのAVフラグが1になります。
実チップ(Rev 0.1)で試したところオペランドが-1(0x8000)だと結果も-1(0x8000)となりました。妥当な値だと思われます。ABS(-1)も参考にしてください。なお、AR_SATモードの場合は結果は0x7FFFとなります。
<dst> ::= AR, AF <dreg> ::= AX0, AX1, AY0, AY1, MX0, MX1, MY0, MY1, SI, AR, MR2, MR1, MR0, SR2, SR1, SR0 <xop> ::= AX0, AX1, AR, MR2, MR1, MR0, SR1, SR0 <cond> ::= EQ, NE, GT, LE, LT, GE, AV, NOT AV, AC, NOT AC, SWCOND, NOT SWCOND, MV, NOT MV, NOT CE, TRUE