# 二进制中的运算符 在二进制中,有一些位运算符和逻辑运算符,用于对二进制数进行一些操作,那么本篇文章我们就来学习一下这些运算符。 注意:本篇文章中使用的符号仅在计算机领域和部分编程语言(如C、C++、Java、Python)中有效,**是非标准的数学符号**,请在实际使用时注意语境,仔细甄别! ## &(按位与/逻辑与) 当左右两边的条件都为真时,结果才为真,否则为假。(注:真也表示1,假也表示0。后续也是,不再重复说明。) 举个例子,现有两个二进制数a和b,a=10110100,b=10101010,现在想要计算a&b。 首先,列个竖式: ``` 10110100 & 10101010 ———————————— ``` 然后,根据规则进行计算,如0&0=0;0&1=0;1&1=1,以此类推: ``` 10110100 & 10101010 ———————————— 10100000 ``` 得出的这个10100000就是a&b(10110100&10101010)的结果。 ## |(按位或/逻辑或) 当左右两边的条件至少有一个为真时,结果就为真。 举个例子,现有两个二进制数a和b,a=10110100,b=10101010,现在想要计算a|b。 首先,列个竖式: ``` 10110100 | 10101010 ———————————— ``` 然后,根据规则进行计算,如0|0=0;0|1=1;1|1=1,以此类推: ``` 10110100 | 10101010 ———————————— 10111110 ``` 得出的这个10111110就是a|b(10110100|10101010)的结果。 ## ^(按位异或) 当左右两边的条件不相同(一个为真一个为假)时,结果为真,否则为假。 举个例子,现有两个二进制数a和b,a=10110100,b=10101010,现在想要计算a ^ b。 首先,列个竖式: ``` 10110100 ^ 10101010 ———————————— ``` 然后,根据规则进行计算,如0 ^ 0=0;0 ^ 1=1;1 ^ 1=0,以此类推: ``` 10110100 ^ 10101010 ———————————— 00011110 ``` 得出的这个11110(抛弃前0)就是a ^ b(10110100 ^ 10101010)的结果。 ## ~(按位非/取反) 这是一个单目运算符,将操作数的每一位进行反转(真变假,假变真)。 举个例子,现有一个二进制数a,a=10110100,现在想要计算~ a。 首先,列个竖式: ``` ~ 10110100 ———————————— ``` 然后,根据规则进行计算,如~ 0=1;~ 1=1,以此类推: ``` ~ 10110100 ———————————— 01001011 ``` 得出的这个1001011(抛弃前0)就是~ a(~ 10110100)的结果。 --- > © 2026 小满工作室. All rights reserved.