TM
選択されたストリング・ビットがテストされ、それに応じて条件コードが設定されます。FASTREXX に適した類似の関数についてはFLD_TMを参照してください。
- Returns
- テスト済みのビットがすべて 1 であれば、TM は 1 を戻します。そうでなければ、TM は 0 を戻します。
- string
- リテラル・ストリング、またはストリングを表す変数。
- mask
- string の中のどのビットをテストするか決定する ビット・ストリング。
テストの長さは、string と mask の 2 つの引数のうちの、 短い方の長さに基づきます。mask ビットの 1 は、string の中の等価のビットがテストされることを示します。mask ビットがゼロの場合、 等価の string ビットは無視されます。
例 1
入力レコードの 3 番目のバイトをテストし、下位ビットが設定されていれば、そのレコードの 2 番目のバイトに 16 進数の FF をオーバーレイします。
If TM(FLD(3,1),'01'x) Then Do
outrec = OVERLAY('FF'x,outrec,2)
Return
End
Return 'DROP'
例 2
入力レコードの 3 番目のバイトをテストし、上位ビットが設定されていれば、そのレコードの 2 番目のバイトの内容に 16 進数の 04 で論理和演算します。
If TM(FLC(3,1),'10000000'b) Then Do
outrec = OVERLAY(BITOR(fld(2,1),'04'x),outrec,2)
Return
End
Return 'DROP'