位运算

2021-02-22 11:14:17 浏览数 (1)

位运算

符号

描述

运算规则

&

两个位都为1时,结果才为1。0&0=0 0&1=0 1&0=0 1&1=1

|

两个位都为0时,结果才为0。0|0=0 0|1=1 1|0=1 1|1=1

^

异或

两个位相同为0,相异为1。0^0=0 0^1=1 1^0=1 1^1=0

~

取反

0变1,1变0。~1=0 ~0=1

<<

左移

所有位左移若干位,高位丢弃,低位补0。(用法:a=a<<3)

>>

右移

所有位右移若干位,对无符号数,高位补0;有符号数,各编译器处理方法不一样,有的补符号位(算术右移),有的补0(逻辑右移)

p.s.1.右移的数学意义:右移一位相当于除2,右移n位相当于除以2的n次方

​ 2.机器里存的是补码,是直接用补码进行计算的

​ 3.正数的原码、补码、反码都一样;负数的补码是反码加1

0 人点赞