BIT_AND マクロ

(計算内容) BIT_AND マクロは、IBM® Campaign および IBM Interact で使用可能です。

構文

data1 BIT_AND data2 data1 & data2

パラメーター

data1

data2 の値とのビット単位 AND をとる、負でない整数です。これは定数値、列、セル範囲、またはこれらのいずれかに評価される式になります。data のフォーマット定義については、このガイドの IBM 製品の章にある「マクロ関数パラメーター」セクションを参照してください。

data2

data1 の値とのビット単位 AND をとる、負でない整数です。これは定数値、列、セル範囲、またはこれらのいずれかに評価される式になります。data2 の列の数は、data2 が定数でない限り、 data1 の列の数と同じでなければなりません。data のフォーマット定義については、このガイドの IBM 製品の章にある「マクロ関数パラメーター」セクションを参照してください。

説明

BIT_AND は、2 つの指定データ範囲間のビット単位 AND を実行します。入力列ごとに新しい列を 1 つ返します。各列には、data1 の対応列と data2 の対応列とをビット単位 AND 演算したものが入ります (つまり、data1 の第 1 列は data の第 1 列とビット単位 AND 演算され、第 2 列は第 2 列とビット単位 AND 演算され、以下同様に続きます)。

data2 が定数の場合、data1 の各値とその値とのビット単位 AND 演算が行われます。data2 に 1 つ以上の列が含まれている場合は、data2 の 1 つの列と data2 の 1 つの列との間で行と行を対応させて計算が実行されます。data1 の最初の行と data2 の最初の行とがビット単位 AND 演算され、2 番目以降の行に対しても同様に演算されます。この行ごとの計算は、最短の列の最後の値までの各行の結果を生成します。

注: このマクロ関数の精度は、 未満の整数値に制限されています。負の値は許可されません。
注: BIT_AND 演算子は、アンパーサンド (&) に簡略化できます。アンパーサンドを使用して、2 つの引数を分離できます (例えば、BIT_AND(V1, 3) を指定する際、単に V1&3 と入力できます)。

TEMP = 3 BIT_AND 7 または TEMP = 3 & 7

値 3 を含む新しい列を TEMP という名前で作成します (011111 とのビット単位 AND をとると、011 になります)。

TEMP = V1 & 8

V1 列の内容とバイナリー値 1000 とをビット単位 AND 演算したものを各値とする、TEMP という名前の新しい列を作成します。

TEMP = V1 & V1

V1 列と同じ内容を含む新しい列を TEMP という名前で作成します (各値をそれ自体と AND 演算すると、その値そのものになります)。

TEMP = V1 & V2

各値が列 V1 の行の値と列 V2 の対応する行の値とをビット単位 AND 演算したものである新しい列を TEMP という名前で作成します。

TEMP = V1:V3 & V4:V6

TEMPVX、および VY という名前の新しい列 3 つを作成します。TEMP 列には、V1 の値と V4 列の対応する行の値とをビット単位 AND 演算したものが入ります。VX 列には、V2 列と V5 列とをビット単位 AND 演算した値が入ります。VY 列には、V3 列と V6 列とをビット単位 AND 演算した値が入ります。

TEMP = V1[10:20] & V2 または TEMP = V1[10:20] & V2[1:11]

V1 列の 10 行目から 20 行目にある値と V2 列の 1 行目から 11 行目にある値とをビット単位 AND 演算した結果が最初の 11 個のセルに含まれる新しい列を TEMP という名前で作成します。TEMP の他のセルは空です。

関連関数

機能 説明
BIT_NOT 指定されたデータ範囲の内容のビット単位 NOT を計算します
BIT_OR 指定された 2 つのデータ範囲間のビット単位 OR を計算します
BIT_XOR または XOR 指定された 2 つのデータ範囲間のビット単位 XOR を計算します