ビット演算について

bit.png

List of pages tagged with bit:

ビットフィールド
~は否定だけど、なぜかbool型には効かない。
bool型を逆転させたいときは!を使う。

bool miffy=true;
bool opposite_miffy=!miffy;

特定のビットだけ反転させたい場合はXOR(^)を使う

10101010
xor 00001111
10100101

あるビットから上をすべてfで埋めたい時の技

一度右ビットシフトしてから同じ分だけ左ビットシフトするとそうなるぞ。

ビットの様子をprintfするには

#include <iostream>
#include <bitset>
using namespace std;
char c=101;
std::bitset<8> bits(c);//8ビットのビット列を作り、値としてcを入れる。
cout<<"2進数表記"<<bits<<endl;
printf("2進数表記%s\n",bits.to_string().c_str());//これでもok

basic_string<bool> っていう手もあるよね。

complement

サポートサイト Wikidot.com complement