MULTIPLY ステートメントは、数字項目を乗算し、結果を保管します。
MULTIPLY ステートメントには 2 つの形式があります。
MULTIPLY ステートメント - 形式 1 .-------------------. V | >>-MULTIPLY--+-ID-1-------+--BY----ID-2--+---------+-+----------> '-リテラル-1-' '-ROUNDED-' >--+------------------------------------------+-----------------> '-+----+--SIZE ERROR--命令ステートメント-1-' '-ON-' >--+-----------------------------------------------+------------> '-NOT--+----+--SIZE ERROR--命令ステートメント-2-' '-ON-' >--+--------------+-------------------------------------------->< '-END-MULTIPLY-'
形式 1 では、ID-1 またはリテラル-1 の値が保管されます。 この値は、ID-2 が指定されている順序で左から右に、それぞれの ID-2 によって乗算され、保管されます。
MULTIPLY ステートメント - 形式 2 - GIVING >>-MULTIPLY--+-ID-1-------+--BY--+-ID-2-------+-----------------> '-リテラル-1-' '-リテラル-2-' .-------------------. V | >--GIVING----ID-3--+---------+-+--------------------------------> '-ROUNDED-' >--+------------------------------------------+-----------------> '-+----+--SIZE ERROR--命令ステートメント-1-' '-ON-' >--+-----------------------------------------------+------------> '-NOT--+----+--SIZE ERROR--命令ステートメント-2-' '-ON-' >--+--------------+-------------------------------------------->< '-END-MULTIPLY-'
形式 2 では、ID-1 またはリテラル-1 の値が ID-2 またはリテラル-2 の値によって乗算されます。 その後、積が、ID-3 によって参照されているそれぞれのデータ項目に保管されます。
すべての形式において、以下が適用されます。
オペランドの合成は、すべての受信データ項目を重ね合わせることによって決定されます。 オペランドの合成に関する詳細は オペランドのサイズを参照してください。
+----------------------------------IBM 拡張----------------------------------+
浮動小数点データ項目および浮動小数点リテラルは、数字データ項目または数字リテラルが指定できるところではどこでも使用できます。
+------------------------------End of IBM 拡張-------------------------------+