1. 把一個(gè)數(shù)上調(diào)成另一個(gè)數(shù)的倍數(shù)
int align = 8;
unsigned int round_up(unsigned int num) {
return (((num) + align - 1) & ~(align-1))
}
2. 取某些位
- 取最低位, 可由數(shù)字得到相應(yīng)的二進(jìn)制字符串
string numToBinStr(int num) {
string str;
while (num) {
char c = '0';
if (num & 1)
c = '1';
else
c = '0';
num = num >> 1;
str.insert(str.begin(), c);
}
return str;
}
3. 判斷str與目標(biāo)01bit位是否符合
a ^ a = 0;
a ^ 0 = a;