首页 > 其他 > 详细

为操作符

时间:2018-06-29 19:03:20      阅读:192      评论:0      收藏:0      [点我收藏+]

位操作有:按位与、按位或、按位异或、按位取反、左移、带符号右移和无符号右移。

1、按位与(&或者and):

  2&3 = 0000 0010 & 0000 0011 = 0000 0010 = 2

2、按位或(|或者or):

  2|3 = 0000 0010 | 0000 0011 = 0000 0011 = 3

3、按位异或(^或者xor):

  2^3 = 0000 0010 ^ 0000 0011 = 0000 0001 = 1

4、按位取反(~或者not):

  ~4 : 二进制原码为:0000 0100 

      原码取反为: 1111 1011

  这时要把1111 1011 转化为补码形式:

  1111 1011 ---->  1000 0100 ---->    1000 0101

  所以得出的结果为-5;

5、左移(<<或者shl):

  4 << 1 = 0000 0100 << 1 = 0000 1000 = 8

  相当于乘以2

6、右移(>>或者shr):

  4 >> 1 = 0000 0100 >> 1 = 0000 0010 = 2、

  相当于除以2

注:

  1、右移分带符号和不带符号

  2、通常认为位操作比运算要快,左移比*2快,右移比/2快。

为操作符

原文:https://www.cnblogs.com/coolYuan/p/9244816.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!