逻辑运算杂谈

发表于: 杂谈 |

逻辑运算置位速记口诀:

与0得0,与1不变;(0&0=0,1&0=0,0&1=0,1&1=1)
注:按位与用于置0查1

或1得1,或0不变;(0|1=1,1|1=1;0|0=0,1|0=1)
注:按位或用于置1查0

异1得反,异0不变。(0^1=1,1^1=0;0^0=0,1^0=1)
注:按位异或用于置反

两异不变,非得全反。(0^0^0=0,0^1^1=0,1^0^0=1,1^1^1=1;~0=1,~1=0)

短路求值:

a AND b -> a成立则执行b,相当于if(a) b;(若a则b)
a OR b -> a不成立则执行b,相当于if(!a) b;(若a则不b)