C 位运算详解

& :按位与

| :按位或

^ : 按位异或

~ : 取反

一:&(按位“与”)的运算规则

0&0=0 , 0&1=0 , 1&0=0 , 1&1=1

(当2着都为真时,结果才为真) 注非0为真

二:|(按位“或”)的运算规则

0|0 = 0 , 0|1=1 , 1|0=1 , 1|1=1

(只要1个为真,其结果为真)

三:^(按位“异或”)的运算规则

0^0=0 , 0^1=1 , 1^0=1 ,1^1 =0

(当2者取值相异(一真一假)时,其结果为真)

四:~(按位“取反”)的运算规则

~0=1 , ~1=0

(区相反的值)

时间: 2024-10-26 09:19:28

C 位运算详解的相关文章

c语言位运算详解

位运算是指按二进制进行的运算.在系统软件中,常常需要处理二进制位的问题.C语言提供了6个位操作运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型. C语言提供的位运算符列表: 运算符含义描述 & 按位与      如果两个相应的二进制位都为1,则该位的结果值为1,否则为0 | 按位或      两个相应的二进制位中只要有一个为1,该位的结果值为1 ^ 按位异或    若参加运算的两个二进制位值相同则为0,否则为1 ~ 取反        ~

C语言位运算详解(转载)

转载自:http://www.cnblogs.com/911/archive/2008/05/20/1203477.html 位运算是指按二进制进行的运算.在系统软件中,常常需要处理二进制位的问题.C语言提供了6个位操作 运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型.C语言提供的位运算符列表:运算符 含义 描述& 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0| 按位或 两个相应的二进制位中只要有一个为1,该位的结

Java的位运算符详解实例

Java的位运算符详解实例——与(&).非(~).或(|).异或(^).右移(>>).左移(<<).无符号右移(>>>) 位运算符主要针对二进制, 它包括了:“与”.“非”.“或”.“异或”."右移"."左移"."无符号右移". 从表面上看似乎有点像逻辑运算符, 但逻辑运算符是针对两个关系运算符来进行逻辑运算, 而位运算符主要针对两个二进制数的位进行逻辑运算. 下面详细介绍每个位运算符. 1.与运

[转]Java的位运算符详解实例——与(&amp;)、非(~)、或(|)、异或(^)

位运算符主要针对二进制,它包括了:“与”.“非”.“或”.“异或”.从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算.下面详细介绍每个位运算符. 1.与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段.public class data13{public static void main(String[] args){int a=129;int b=128

C语言 - 结构体(struct)的位字段(:) 详解

结构体(struct)的位字段(:) 详解 本文地址: http://blog.csdn.net/caroline_wendy/article/details/26722511 结构体(struct)可以使用位字段(:), 节省空间, 如以下代码, 结构体a中的, 第一个变量x占用1个字符, y占用2个字符, z占用33个字符(越界); 但是sizeof()会自动补齐, 如x+y一共占用4个字节, z占用8个字节, 所以结构体占用12个字节; 当使用加法运算时, 会初始化为0; 代码: /* *

-=,+=混合运算详解

+=与-=运算符混合计算解析: int x = 3; x += x -= x -= x += x -= x; 详解:算数运算按运算符优先级运算,从右至左计算. 1. x=x-x; 实际为 3 - 3 计算结果为0: 2. x=x+x; 实际为 3 - 0,0是第1步结果,计算结果为3: 3. x=x-x; 实际为 3 - 3,3是第2步结果,计算结果为0: 4. x=x-x; 实际为 3 - 0,0是第3步结果,计算结果为3: 5. x=x+x; 实际为 3 + 3,3是第4步结果,计算结果为6

位运算符详解

运算符   含义   &   按位与   |   按位或   ∧   按位异或   ∽   取反   <<   左移   >>   右移 说明: 1.位运算符中除∽以外,均为二目(元)运算符,即要求两侧各有一个运算了量. 2.运算量只能是整形或字符型的数据,不能为实型数据. “按位与”运算符(&) 规定如下: 0&0=0   0&1=0   1&0=0   1&1=1 例:3&5=?                      

PHP位运算符详解

位运算符 位运算符是指对二进制位从低位到高位对齐后进行运算. 符号 作用 举例 个人理解 & 按位与 $m & $n 全1为1,否则为0 | 按位或 $m | $n 全0为0,有1为1 ^ 按位异或 $m | $n 不同为1,相同为0 ~ 按位取反 ~$m << 向左移位 $m << $n >> 向右移位 $m >> $n &运算符 <?php $m = 1; $n = 2; $mn = $m & $n; echo $m

Scala前缀,中缀及后缀运算详解

语法: PostfixExpr ::= InfixExpr [id [nl]] InfixExpr ::= PrefixExpr | InfixExpr id [nl] Inf2424ixExpr PrefixExpr ::= [?-? | ?+? | ?!? | ?~?] SimpleExpr 表达式由算符和操作数构成. 6.12.1. 前缀运算 前缀运算op e由前缀算符op(必须是?+?, ?-?, ?!?或?~?之一).表达式op e等价于后缀方法应用e.unary_op. 前缀算符不同