两个16进制数相或取非作为循环条件
1、b的数值不变,a的bit4改变,其余位不变
int main(void)
{
long int a =11111110;
long int b =00010010;
int c= !(a&b);
printf("%d",c);
}
//该程序可以通过打印c得到“两个16进制数相或取非”的结果。
2、两个16进制数相或取非作为循环条件
long int a =11101110;
long int b =00010010;
while( !(a&b))
···
//只有当a=1111110的时候,条件才会不成立退出循环,可用于检测单片机某个位的状态变化
···