一个简单的有关问题:像这样的16进制数怎么运算得到
一个简单的问题:像这样的16进制数如何运算得到?
下列两个整数(用16进制表示) 如何通过某种运算一次性得到右边的数:
0X2212BE72 ====>0X212BE72
0X1312BE8D ====>0X312BE8D
------解决思路----------------------
我理解是要把最高4位清0,保留其他28位。
------解决思路----------------------
关于位运算:
http://blog.****.net/liuzuyi200/article/details/11874345
http://blog.****.net/hguisu/article/details/7892596
------解决思路----------------------
0X2212BE72 ====>0X212BE72 0X2212BE72 & 0x0FFFFFFF
0X1312BE8D ====>0X312BE8D 0X1312BE8D & 0x0FFFFFFF
下列两个整数(用16进制表示) 如何通过某种运算一次性得到右边的数:
0X2212BE72 ====>0X212BE72
0X1312BE8D ====>0X312BE8D
------解决思路----------------------
我理解是要把最高4位清0,保留其他28位。
#include <stdio.h>
int main()
{
int n = 0X2212BE72;
printf("0X%X\n", n & 0xFFFFFFF);
n = 0X1312BE8D;
n &= 0xFFFFFFF;
printf("0X%X\n", n);
return 0;
}
------解决思路----------------------
关于位运算:
http://blog.****.net/liuzuyi200/article/details/11874345
http://blog.****.net/hguisu/article/details/7892596
------解决思路----------------------
0X2212BE72 ====>0X212BE72 0X2212BE72 & 0x0FFFFFFF
0X1312BE8D ====>0X312BE8D 0X1312BE8D & 0x0FFFFFFF