与 | & | and | 全1则1 |
或 | \ | or | 有1则1 |
非 | ~ | not | 是0则1 |
异或 | ^ | xor | 不同则1 |
因为
∣
|
∣ 在表格中打不出,用 \ 代替
将一个长度为m的bool数组用一个m位的二进制整数表示并存储,位数从0开始
操作 | 运算 |
---|---|
把整数n在二进制表示下的第k位取反 | n xor (1<<k) |
把整数n在二进制表示下的第k位赋值1 | n or (1<<k) |
把整数n在二进制表示下的第k位赋值0 | n & (~(1<<k)) |
取出整数n在二进制表示下的第k位 | (n>>k)&1 |
取出整数n在二进制表示下的后k位 | n & ((1<<k)-1) |