位运算的解析与运用

本文涉及的产品
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
简介: 位运算的解析与运用

一、 按位与运算符(&)(都相同才为1)

     参加运算的两个数,按二进制位进行“与”运算。

         运算规则:只有两个数的二进制相同位上同时为1,结果才为1,否则为0。(负数按补码形式参加按位与运算)

                  即 0 & 0= 0 ,0 & 1= 0,1 & 0= 0, 1 & 1= 1。

                例:
                               3 &5  即

                                    00000011       3的二进制
                              & 
                                    00000101       5的二进制

                                =   00000001            最后结果是把这个二进制再转为十进制再输出             所以 3 & 5的值为1。
AI 代码解读

二、按位或运算符( | )(有1则1)

   参加运算的两个数,按二进制位进行“或”运算。

       运算规则:参加运算的两个数只要两个数中相同位上的一个为1,结果就为1。

                即  0 | 0= 0 ,    1 | 0= 1  ,   0 | 1= 1  ,     1 | 1= 1 。

                    例:
                                2 | 4 即 

                                00000010
                           | 
                                00000100 

                           =    00000110                      所以2 | 4的值为 6 。
AI 代码解读

三、异或运算符(^)(不同就为1)

   参加运算的两个数,按二进制位进行“异或”运算。

               运算规则:参加运算的两个数,如果两个相应位为“异”(值不同),则该位结果为1,否则为0。

                                 
                    注意: 一个数被另一个数异或两次,这个数本身不变(可用来进行数据交换)                  如:  10^20^20 = 10


                                                                                                        
                即 0 ^ 0=0  , 0 ^ 1= 1  , 1 ^ 0= 1  , 1 ^ 1= 0 。

                         例: 2 ^ 4 即 

                                     00000010 
                             ^ 
                                     00000100 

                                =    00000110           所以 2 ^ 4 的值为6 。
AI 代码解读

四、按位同或(⊙)

     运算规则:参加运算的两个数,换算为二进制(0、1)后,进行异或运算。
     
             只有当 相应位上的数字  相同时取1, 不相同为0。

                              例:
                                       011 ⊙ 110

                                       011
                              ⊙
                                       110
                                   ————
                                       010      
AI 代码解读

五、按位取反(~)

        运算规则:参加运算的两个数,换算为二进制(0、1)后, 0变1, 1变0。

                 ~(010) = 101

AI 代码解读

作者:KJ.JK

本文仅用于交流学习,未经作者允许,禁止转载,更勿做其他用途,违者必究。
文章对你有所帮助的话,欢迎给个赞或者 star,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习

目录
相关文章
位运算详解
本文介绍了位运算符及其基本操作,并通过几个例题详细解析了位运算的应用。内容包括左移`<<`、右移`>>`、按位取反`~`、与运算`&`、或运算`|`和异或运算`^`等运算符的使用方法。基本操作部分展示了如何检查和修改二进制位,以及异或运算的性质。例题部分则通过判定字符是否唯一、丢失的数字、两整数之和和消失的两个数字等问题,具体说明了位运算的实际应用技巧。
76 7
位运算详解
“高端”的位运算
大家好,我是王有志。原计划迭代作为预备知识的收尾,不过在解2的幂和4的幂时,想到关于数字2的问题可以通过位运算去解决,因此补充了关于位运算的内容。
98 1
位运算专题(个人理解)
位运算专题(个人理解)
80 0
位运算的小技巧
快速学习位运算的小技巧