ในที่นี้เราจะดูว่ามีการให้ตัวเลขหรือไม่ จากนั้นจะค้นหาค่าของค่า Most Significant Bit ที่ตั้งค่าไว้ได้อย่างไร ค่าคือกำลัง 2 ดังนั้นหากตัวเลขคือ 10 ค่า MSB จะเป็น 8
เราต้องหาตำแหน่งของ MSB แล้วหาค่าของตัวเลขที่มี set-bit ที่ตำแหน่ง k
ตัวอย่าง
#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