tstring.h
にもどるqueue.h
にすすむbitop.h
ビット操作に関する関数群で、ヘッダ・ファイルは
bsys/bitop.h
である。
操作対象のビットに関しては、 基準となるアドレス、基準アドレスからのオフセット、 および bit 長で指定することになる。
オフセットは基準アドレスの MSB を 0 として指定する。
オフセットに 8 を超える値を指定可能であり、
操作対象ビット ( 列 ) が基準アドレスの指す 1
バイトに含まれている必要はない。
オフセット及びビット長に負の値を指定した場合の動作は保証しない。
|
VOID BCLR(VP base, W offset)
VP base 基準アドレス W offset オフセット
なし
基準アドレス base
から offset
ビットの 1
ビットを 0 に設定する。
|
VOID BSET(VP base, W offset)
VP base 基準アドレス W offset オフセット
なし
基準アドレス base
から offset
ビットの 1 ビットを 1 に設定する。
|
VOID BNOT(VP base, W offset)
VP base 基準アドレス W offset オフセット
なし
基準アドレス base
から offset
ビットの 1 ビットを反転する。
|
W BTST(VP base, W offset)
VP base 基準アドレス W offset オフセット
0 : 指定したビットは0 その他: 指定したビットは1
基準アドレス base
から offset
ビットの 1 ビットをチェックする。
指定したビットは 0 の場合は 0 を返し、
ビットが 1 の場合は 0 以外の値を返す。
|
W BVSCH0(VP base, W offset, W bitwidth)
VP base 基準アドレス W offset オフセット W bitwidth サーチ対象ビット長
< 0 サーチ対象ビット列に 0 は含まれなかった。 ≧ 0 ビットが 0 であった最初のビット位置
基準アドレス base + offset
から bitwidth
ビットをサーチする。
offset
から offset + bitwidth
までを順に調べ、
最初に見つかった 0 のビット位置
( offset
からのオフセット ) を関数値として戻す。
指定したサーチ対象ビット列に 0
が含まれなかった場合は負の値を戻す。
|
W BVSCH1(VP base, W offset, W bitwidth)
VP base 基準アドレス W offset オフセット W bitwidth サーチ対象ビット長
< 0 サーチ対象ビット列に1は含まれなかった。 ≧ 0 ビットが 1 であった最初のビット位置
基準アドレス base + offset
から bitwidth
ビットをサーチする。
offset
から offset + bitwidth
までを順に調べ、最初に見つかった 0 のビット位置
( offset
からのオフセット) を関数値として戻す。
指定したサーチ対象ビット列に 1 が含まれなかった場合は負の値を戻す。
BVSCH0()
|
VOID BVCLR(VP base, W offset, W bitwidth)
VP base 基準アドレス W offset オフセット W bitwidth クリア対象ビット長
なし
指定したアドレス、
オフセットからの bitwidth
ビットをすべて 0 に設定する。
|
VOID BVSET(VP base, W offset, W bitwidth)
VP base 基準アドレス W offset オフセット W bitwidth 設定対象ビット長
なし
指定したアドレス、
オフセットからの bitwidth
ビットをすべて 1 に設定する。
tstring.h
にもどるqueue.h
にすすむ