在 C++ 中查找数字的最高有效位


这里我们将看看给定一个数字后,如何找到最高有效位的设置值。该值是 2 的幂。因此,如果数字是 10,则 MSB 值将是 8。

我们必须找到 MSB 的位置,然后找到 kth 位数字的设置位值。

示例

#include<iostream>
#include<cmath>
using namespace std;
int msbBitValue(int n) {
   int k = (int)(log2(n));
   return (int)(pow(2, k));
}
int main() {
   int n = 150;
   cout << "MSB bit value is: "<< msbBitValue(n);
}

输出

MSB bit value is: 128

更新日期:2019 年 11 月 1 日

2K+ 浏览量

启动你的 职业

完成课程后获得认证

开始学习
广告