自学内容:
1 、按位逻辑运算符有4个符号,分别是:
1 、一元运算符~ ,
2 、二院运算符& ,
3、 二元运算符l ,
4、 二元运算符^ ,
含义介绍:
1 、一元运算符~ ,
运算符 ~ 把1变为0,把0变为1。加上运算符 ~ 的二进制数值,的结果值都会相反,
如下列所示:
~(10011010) //表达式(书写式)
(01100101) //结果值
2 、二院运算符& ,
运算符 & 通过逐位比较两个运算对象,生成一个新的值,两个8位二进制的数值对比,把数值1都在一个位置上的保留下来,其他用0代替。
如下列所示:
(10010011)&(00111101) //表达式
(00010001) 结果值
3、 二元运算符l ,
运算符 l 通过逐位比较两个运算对象,生成一个新的值,两个8位二进制的数值对比,把数值0都在一个位置上的保留下来,其他用1代替。
如下例所示:
(10010011)l(00111101) //表达式
(10111111) //结果值
1 、按位逻辑运算符有4个符号,分别是:
1 、一元运算符~ ,
2 、二院运算符& ,
3、 二元运算符l ,
4、 二元运算符^ ,
含义介绍:
1 、一元运算符~ ,
运算符 ~ 把1变为0,把0变为1。加上运算符 ~ 的二进制数值,的结果值都会相反,
如下列所示:
~(10011010) //表达式(书写式)
(01100101) //结果值
2 、二院运算符& ,
运算符 & 通过逐位比较两个运算对象,生成一个新的值,两个8位二进制的数值对比,把数值1都在一个位置上的保留下来,其他用0代替。
如下列所示:
(10010011)&(00111101) //表达式
(00010001) 结果值
3、 二元运算符l ,
运算符 l 通过逐位比较两个运算对象,生成一个新的值,两个8位二进制的数值对比,把数值0都在一个位置上的保留下来,其他用1代替。
如下例所示:
(10010011)l(00111101) //表达式
(10111111) //结果值
4、 二元运算符^ ,
运算符^通过逐位比较两个运算对象,生成一个新的值,两个8位二进制的数值对比,在同为位,且同数的,都用0代替,其余用1代替。
如下例所示:
例如,假设 flags 是00001111,MASK是10110110.
表达式: flags ^MASK
即是:(00001111)^(10110110) //表达式
其结果为:(10111001) //结果值