ビット判定をしたい

解決


ZORO  2001-03-26 14:59:37  No: 74046  IP: [192.*.*.*]

はじめて投稿させていただきます。

Byte型変数a(1バイト)にある値がセットされています。
この変数aの3ビット目と、4ビット目が立っているかどうか調べたい
のですが、VBではどのように判定すればいいのでしょうか?
3ビット目と4ビット目以外のビットも可変で、ビットが立っていたり
立っていなかったりします。
宜しくお願いします。

編集 削除
PAPY  2001-03-27 14:26:46  No: 74047  IP: [192.*.*.*]

ANDでビットをかけてみたらいかがですか?

そもそも、ビット操作する場合は
「OR,Xor,AND,NOT」などが一般的に使われます。

3bit目を調べるのは10進で[4]をAND結合
4bit目を調べるのは10進で[8]をAND結合

※戻り値が[0]じゃなかったらビットがたっているということになります。

編集 削除
ZORO  2001-03-27 15:00:42  No: 74048  IP: [192.*.*.*]

有り難うございます。解決できました。簡単でした(恥)。
と、今度は逆のやり方がわかりません。
6ビット目にビットを立てたり、7ビット目のビットを0にしたり・・・。
ご面倒でなければご教授願います。m(._.)m

編集 削除
PAPY  2001-03-28 13:38:01  No: 74049  IP: [192.*.*.*]

これ↓
6bit目を立てるのは10進で[32]をOR結合
7bit目を伏せるのは10進で[191]をAND結合

編集 削除
ZORO  2001-03-28 13:54:06  No: 74050  IP: [192.*.*.*]

ご丁寧に有り難うございます。解決できました。
また何かありましたら宜しくお願いいたします。

編集 削除
ZORO  2001-03-29 15:45:51  No: 74051  IP: [192.*.*.*]

解決にするのを忘れました(汗)。

編集 削除