位操作

1. 把一個數上調成另一個數的倍數
int align = 8;
unsigned int round_up(unsigned int num) {
  return (((num) + align - 1) & ~(align-1))
}
2. 取某些位
  • 取最低位, 可由數字得到相應的二進制字符串
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與目標01bit位是否符合
a ^ a = 0;
a ^ 0 = a;
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容