第二部 トロン仕様チップ命令詳細第十八章 10進演算強化命令
DCSUBU
10進演算強化命令 <<L2>>

【ニモニックとオペランド】

DCSUBU src, dest

【機能】

Decimal calculation subtract unsigned
符号なし10進強化減算

【オプション】

なし

【命令フォーマットと表記法】

【解説】

 DCSUBU命令はsrcdestを符号なしパック形式10進数として減算を行います。
 srcdestを10進減算して、その結果でdestを置き換えます。この演算は符号なしデータについて行います。
 最上位桁でボローが発生する場合には、destが10の補数で表現された状態になっているので、DCADJU命令を使用してdestの補数を取る必要があります。
 srcのサイズがdestのサイズよりも小さい場合には、srcdestのサイズにゼロ拡張します。destのサイズがsrcのサイズよりも小さい場合には、実行前にdestsrcのサイズにゼロ拡張して、結果の上位桁(destに入らない桁)をカットします。この場合、カットされる値を検査して、演算結果がdestのサイズ内で表現できない場合にはオーバフローを示すためにV_flagをセットします。

【フラグ変化】

【発生EIT】

RIE  src [Gen/ru], dest [Gen/mu]のアドレッシングモード違反
RIE  sx = 11, sy = 11
DDT srcdestがH'0〜H'9以外の桁を含む

【使用例】



 汎用レジスタR5で指定されたロケーションの内容(32ビット長)をR7で指定されたロケーションの内容(32ビット長)から10進減算します。結果はR7で指定されたロケーションに32ビット長で格納されます。