整数および符号なしの演算

すべての算術演算 (式に入っているものを除く) で、演算項目 1、演算項目 2、 および結果のフィールドが符号なしの形式で定義されている場合には、 命令は符号なしの形式で実行されます。 同じように、演算項目 1、演算項目 2、および結果のフィールドが整数または 符号なしの形式のいずれかとして定義されている場合には、命令は整数形式で 実行されます。 いずれかのフィールドが整数または符号なしの形式でない場合には、 命令はデフォルトの形式 (パック 10 進数) で実行されます。

次の項目は、整数および符号なしの 算術演算のみに適用されます。
  • すべての整数および符号なし命令は 8 バイト形式で実行されます。
  • 整数および符号なしの値は 1 つの命令で一緒に使用することができます。 ただし、演算項目 1、演算項目 2、または結果のフィールドが整数の場合 には、符号なしの値はすべて整数に変換されます。 必要な場合には、数値オーバーフローを生じにくくするために、1 バイト、2 バイト、 または 4 バイトの符号なしの値が、より大きなサイズの整数値に変換されます。
  • あるリテラルが、20 またはそれ以下の桁数であり、小数点以下の桁数がゼロであって、 整数および符号なしのフィールドに指定できる範囲内に 入っている場合、そのリテラルは、負の値であるのか正の値であるのかに応じて、 それぞれ整数または符号なしの形式でロードされます。
注: 整数または符号なしの演算では、パフォーマンスが向上します。ただし、 整数または符号なしの数値形式を使用する場合には、パックまたはゾーン 10 進数形式を使用する場合に比べて、 数値オーバーフローの可能性は高くなります。