中間結果の精度

表 66 は、デフォルトの精度規則についてさらに詳しく説明したものです。

表 66. 中間結果の精度
演算 結果の精度
注:
次の演算では数値結果が作成されます。 L1 および L2 は、2 つのオペランドの桁数です。 Lr は結果の桁数です。 D1 および D2 は 2 つのオペランドの小数位の数です。 Dr は結果の小数位の数です。 T は一時的な値です。
N1+N2 T=min (max (L1-D1, L2-D2)+1, 63)

Dr=min (max (D1,D2), 63-t)

Lr=t+Dr

N1-N2 T=min (max (L1-D1, L2-D2)+1, 63)

Dr=min (max (D1,D2), 63-t)

Lr=t+Dr

N1*N2 Lr=min (L1+L2, 63)

Dr=min (D1+D2, 63-min ((L1-D1)+(L2-D2), 63))

N1/N2 Lr=63

Dr=max (63-((L1-D1)+D2), 0)

N1**N2 倍精度浮動小数点
注:
次の演算では文字結果が作成されます。 Ln はオペランドの長さを文字数で表しています。
C1+C2 Lr=min(L1+L2,65535)
注:
次の演算では DBCS 結果が作成されます。 Ln はオペランドの長さを DBCS 文字数で表しています。
D1+D2 Lr=min(L1+L2,16383)
注:
次の演算では、サブタイプが標識である文字タイプの結果が作成されます。結果は常に標識値 (1 文字) です。
V1=V2 1 (標識)
V1>=V2 1 (標識)
V1>V2 1 (標識)
V1<=V2 1 (標識)
V1<V2 1 (標識)
V1<>V2 1 (標識)
V1 AND V2 1 (標識)
V1 OR V2 1 (標識)