位运算与逻辑运算简介,用位运算表示逻辑运算

一、什么是位运算

C语言中支持按位布尔运算。在布尔运算中只有0和1,0即为False,1即为True。我们在布尔运算中使用的那些按位运算符号正是C语言中使用的,分别是——
按位与——&
按位或——|
按位取反——~
按位异或——^

1.1按位与,即&

只有A与B都为1时,A&B才为1,否则为0。

A B A&B
1 1 1
1 0 0
0 1 0
0 0 0

1.2按位或,即|

只要A或B其中之一为1,A|B即为1。

A B A|B
1 1 1
1 0 1
0 1 1
0 0 0

1.3按位取反,即~

按位取反是单目运算符,只需要一个操作数,在位运算符中优先级最高。

A ~A
1 0
0 1

1.4按位异或,即^

当A与B相异(不同)时,A^B为1;否则为0。

A B A^B
1 1 0
1 0 1
0 1 1
0 0 0

二、什么是逻辑运算

C语言中提供了逻辑运算符“&&”,“||”,“!”,分别对应命题逻辑中的AND,OR,NOT。

2.1逻辑与,即&&

只要操作数中有0,结果即为0

A B A&&B
非0 非0 1
非0 0 0
0 非0 0
0 0 0

2.2逻辑或,即||

只要操作数中有非0的数,结果即为1

A B A||B
非0 非0 1
非0 0 1
0 非0 1
0 0 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值