首页 > 编程语言 > 详细

C++位运算(二进制)

时间:2018-08-09 16:12:03      阅读:146      评论:0      收藏:0      [点我收藏+]

C++位运算

     ——二进制下进行计算(按运算优先级介绍)

引言:我们都知道,计算机的所有操作实际上都是在二进制下进行的,因此,在二进制条件下进行的位运算的速度实际是很快的,在编程中运用适当位运算可以降低程序的时间复杂度。

~取反 : ~x,表示将x的各位取反,即 ~1=0,~1=0。

>> 右移  :x>>p,表示将x右移p位,即可以理解为将二进制下的数x右边p位舍去。例:(2)10>>1=(10)2>> 1  ==》 (1)2=(1)10;(15)10>>2=(1111)2>>2 ==》(11)2=(3)10

<<左移  :x<<p,表示将x左移p位,即可以理解为将二进制下的数x右边补p个0。例:(1)10<<1=(1)2<<1 ==》 (10)2=(2)10 ; (3)10<<3=(11)2<<3 ==》 (11000)2=(24)10

& 按位与 :x&p,表示x与p在二进制下进行与运算,法则为:1&1=1, 1&0=0, 0&0=0,x的每一位与p的每一位按这个规则进行运算得出结果。

 例: 2&3  ==>    10          ,即结果为2

                      &   11      

                           10

^ 按位异或 :x^p,表示x与p在二进制下进行异或运算,法则为:1^1=0,1^0=1,0^0=0,x的每一位与p的每一位按这个规则运算得出结果。

例:2&4 ==》   010            ,即结果为6

                   ^    100     

                         110

|按位或 : x|p,表示x与p在二进制下进行或运算,法则为: 1|1=1,1|0=1,0|0=0,x的每一位与p的每一位按这个规则运算出结果。

例: 2|4==》  010           ,即结果为6

                      |  100   

                            110

        

                   

 

C++位运算(二进制)

原文:https://www.cnblogs.com/lris-searching/p/9448145.html

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