論理演算子ルーチン

ビット単位で論理演算を実行するルーチンです。CBL_NOT 以外の各ルーチンは、いずれも 2 つの作用対象を使用します。

作用対象の長さ (length) がリテラルで指定されており、RETURNING 句が使用されていない場合は、ネイティブ コードがインライン コードを生成するように最適化されます。

2 つの作用対象、つまり source および target を使用するルーチンでは、これらの作用対象を入れ替えても結果は変わりません (CBL_IMP は除く)。ただし、計算結果は常に 2 つ目の作用対象 (target) に格納されます。

source または target の長さが length の値より短い場合は、該当するデータ項目の後続バイトが、指定された length の長さまで使用されます。

次のいずれかの構文を使用すれば、length は省略できます。

        length of source

または

        length of target

ただし、データ項目の全バイトが使用されることが条件です。

論理積および論理和は、VALUE 句を使って実行することも可能です。

これらのルーチンは、RETURN-CODE には影響を与えません。