布尔运算 逻辑运算 移位运算
2016-02-26 15:34
369 查看
1:四种布尔运算&,|,^,~
&:相当于&&,表示”与”运算。一假则假。|:相当于||,表示”或”运算。一真则真。
^:表示”抑或”,相同状态则为假。
~:表示”非”,相当于!。
运算 | 结果 |
---|---|
a | [01101001] |
b | [01010101] |
~a | [10010110] |
~b | [10101010] |
a&b | [01000001] |
a|b | [01111101] |
a^b | [00111100] |
位来表示状态。而且有关这几种运算
c和
c++都是支持的。
2:布尔运算和逻辑运算之间的关系
布尔运算 | 逻辑运算 |
---|---|
~ | ! |
& | && |
| | || |
3:移位操作
左移:x << k 表示将x左移k位,对于原来的x,低位补k个0,相应的高位自动溢出。右移
逻辑右移:低位溢出,高位补0
算术右移:低位溢出,高位补最高有效位,即x(n-1)。
看个例子:
操作 | 值 |
---|---|
x | [11100011] |
x<<4 | [00110000] |
x>>4(逻辑) | [00001110] |
x>>4(算术) | [11111110] |
注意:
c语言中的右移一般都是算术右移,即补最高位。
java中>>是算术右移,>>>是逻辑右移。
相关文章推荐
- [置顶] html中隐藏域hidden的作用介绍及使用示例
- iOS应用里面包含虚拟商品,支付必须使用苹果内购方式
- ZOJ-3785-What day is that day?【11th浙江省赛】【打表找规律】【快速幂】
- 线程同步的方法
- Linux(SUSE 12)安装Tomcat
- Redis学习--Hash类型
- 详解css3中transition过渡属性
- java多线程并发去调用一个类的静态方法安全性探讨
- 值类型与用类型之间的装箱与拆箱操作
- tomcat部署方法总结
- iOS 8 Auto Layout界面自动布局系列5-自身内容尺寸约束、修改约束、布局动画
- Python面向对象编程
- JavaScript基础知识之Array类型(二)
- Eclipse 中java build path面板的功能梳理
- IOS 8 本地推送补充
- (八)利用processing实现类似吃豆人的运行效果
- 第一次使用blog,测试一下!
- 用matlab实现二值化图像的一个问题
- 基于nginx的TCP Proxy实现数据库读写分离
- [LeetCode] Unique Word Abbreviation 独特的单词缩写