位操作

来自ALSROBOT WiKi
跳转至: 导航搜索
#define  lowByte(w)   ((w) & 0xff) 
  //取低字节 

#define  highByte(w)   ((w) >> 8) 
  //取高字节 

#define  bitRead(value, bit)   (((value) >> (bit)) & 0x01) 
  //读一个bit 

#define  bitWrite(value, bit, bitvalue)   (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) 
  //写一个bit 

#define  bitSet(value, bit)   ((value) |= (1UL << (bit))) 
  //置高一个比特位

#define  bitClear(value, bit)   ((value) &= ~(1UL << (bit))) 
  //清空一个比特位 

#define  bit(b)   (1 << (b)) 
  //生成相应bit