C语言中常见的置位操作
C语言中常见的置位操作
如何对某一位置0或者置1?
方法一:
写成宏,方便移植
[CODE]#define setbit(x,y) x|=(1<> (pos)&1)) //用宏得到某数的某位
#define BitGet(Number,pos) ((Number) |= 1<<(pos)) //把某位置1
#define BitGet(Number,pos) ((Number) &= ~(1<<(pos)) //把某位置0
#define BitGet(Number,pos) ((Number) ^= 1<<(pos)) //把Number的POS位取反
典型操作有:
WTCON |= (1 << 5) //WTCON的第五位清1
WTCON &= ~(1 << 5) //WTCON的第五位清0
上述方法在嵌入式系统的编程中是非常常见的,我们需要牢固掌握。