要素別処理組込みサブルーチン:1 つの場所から別の場所にビット列 (ビット・フィールド) をコピーします。
形式
CALL MVBITS (from, frompos, len, to, topos)
from
(入力) 整数型。これは,ビット・フィールドの転送元の位置を表します。
frompos
(入力) 整数型。負であってはなりません。これは,from から転送されるフィールドの先頭のビット位置を識別します。frompos + len は BIT_SIZE(from) 以下でなくてはなりません。
len
(入力) 整数型。負であってはなりません。これは,from から転送されるフィールドの長さを識別します。
to
(入力,出力) 整数型。from と同じ種別パラメタを持っていなくてはなりません。これはビット・フィールドの転送先の位置を表します。to は,from の位置 frompos から to の位置 topos に,長さ len のビット列をコピーすることによって設定されます。to のこれ以外のビットは変更されません。
戻る時に,to の (topos から始まる) len 個のビットは,サブルーチンに入った時点で from の (frompos から始まる) len 個のビットが持っていた値と等しくなっています。
topos
(入力) 整数型。負であってはなりません。これは,転送されるビットの (to の中での) 開始位置を識別します。topos + len は BIT_SIZE(to) 以下でなくてはなりません。
詳細は,「ビット関数」を参照してください。
整数値をビット列として解釈するモデルについては,「ビット・データのモデル」を参照してください。
また,以下の個別サブルーチンも使用することができます。
IMVBITS | すべての引数が INTEGER(2) でなくてはなりません。 |
JMVBITS | 引数は INTEGER(2) または INTEGER(4) です。少なくとも 1 つが INTEGER(4) でなくてはなりません。 |
KMVBITS | 引数は INTEGER(2),INTEGER(4),または INTEGER(8) です。少なくとも 1 つが INTEGER(8) でなくてはなりません。 |
互換性
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
関連情報
BIT_SIZE,IBCLR,IBSET,ISHFT,ISHFTC
例
TO の初期値が 6 である場合,MVBITS を引数 (7, 2, 2, TO, 0) を指定して呼び出した後の値は 5 となります。
以下に他の例を示します。
INTEGER(1) :: from = 13 ! 00001101 INTEGER(1) :: to = 6 ! 00000110 CALL MVBITS(from, 2, 2, to, 0) ! to = 00000111 を返します。 END