关于位操作
金笛子 2008-03-05 11:13:33 #define SetBit(VAR,Place) ( VAR |= (1<<Place) )
#define ClrBit(VAR,Place) ( VAR &= ((1<<Place)^255) )
#define ChgBit(VAR,Place) ( VAR ^= (1<<Place) )
#define AffBit(VAR,Place,Value) (( Value) ? ( VAR |= (1<<Place) ) : \
( VAR &= ( (1<<Place)^255) ) )
#define MskBit(Dest,Msk,Src) ( Dest = (Msk & Src) | ((~Msk) & Dest) )
#define ValBit(VAR,Place) ( VAR & (1<<Place) )
#define AREA 0x00
#define BitClr(BIT) ( *((volatile char *) (AREA+BIT/8)) &= (~(1<<(7-BIT%8))) )
#define BitSet(BIT) ( *((volatile char *) (AREA+BIT/8)) |= (1<<(7-BIT%8)) )
#define BitVal(BIT) ( *((volatile char *) (AREA+BIT/8)) & (1<<(7-BIT%8)) )
大家帮忙看看这些宏都是什么意思呀?谢谢