当前位置:网站首页>按位逻辑运算符
按位逻辑运算符
2022-07-06 08:22:00 【踏破铁鞋无觅处,bug一写一上午】
一、按位取反:~
在计算机中,数据都是按照二进制进行存储的,即便有了原码、反码、补码。而二进制数在内存中是以补码的形式存储的。
按位取反是将补码的每一位都取反,即0变1,1变0;
#include <stdio.h>
int main()
{
char a = 5;
printf("%d", ~a);
return 0;
}
结果为-6;
正整数:5
正数的原码、反码、补码相同:00000101
按位取反:11111010 //此时取反的结果为原码,还需要将其转化为补码
反码:10000101
补码:10000110
结果:-6
负整数:-5
原码:10000101
反码:11111010
补码:11111011
按位取反:00000100 //此时取反的结果为原码,因为原码为正数,原反补相同
结果:4
正数按位取反等于其本身+1的负数
负数按位取反等于其本身+1的正数
0按位取反为-1
二、按位与:&
[规则]
0&0=0
0&1=0
1&0=0
1&1=1
#include <stdio.h>
int main()
{
char a = 5,b=9;
char c = a&b;
printf("%d", c);
return 0;
}
结果为1
5的补码:00000101
9的补码:00001001
按位与后结果:00000001 //此时的结果为原码,因为原码为正数,原反补相同
结果:1
三、按位或:|
[规则]
0|0=0
0|1=1
1|0=1
1|1=1
#include <stdio.h>
int main()
{
char a = 5,b=9;
char c = a|b;
printf("%d", c);
return 0;
}
结果为13
5的补码:00000101
9的补码:00001001
按位或后结果:00001101 //此时的结果为原码,因为原码为正数,原反补相同
结果:13
四、按位异或:^
[规则]
0^0=0
0^1=1
1^0=1
1^1=0
#include <stdio.h>
int main()
{
char a = 5,b=9;
char c = a^b;
printf("%d", c);
return 0;
}
结果为12
5的补码:00000101
9的补码:00001001
按位与或后结果:00001100 //此时的结果为原码,因为原码为正数,原反补相同
结果:12
边栏推荐
- Grayscale upgrade tidb operator
- 使用 TiDB Lightning 恢复 S3 兼容存储上的备份数据
- NFT smart contract release, blind box, public offering technology practice -- contract
- [research materials] 2021 China online high growth white paper - Download attached
- 图像融合--挑战、机遇与对策
- Asia Pacific Financial Media | female pattern ladyvision: forced the hotel to upgrade security. The drunk woman died in the guest room, and the hotel was sentenced not to pay compensation | APEC secur
- CAD ARX gets the current viewport settings
- 2022 Inner Mongolia latest construction tower crane (construction special operation) simulation examination question bank and answers
- 1204 character deletion operation (2)
- 使用 BR 备份 TiDB 集群数据到兼容 S3 的存储
猜你喜欢
Pyqt5 development tips - obtain Manhattan distance between coordinates
【刷题】牛客网面试必刷TOP101
2022.02.13 - NC003. Design LRU cache structure
[research materials] 2022 enterprise wechat Ecosystem Research Report - Download attached
IP lab, the first weekly recheck
Zhong Xuegao, who cannot be melted, cannot escape the life cycle of online celebrity products
[MySQL] lock
IOT -- interpreting the four tier architecture of the Internet of things
synchronized 解决共享带来的问题
Wincc7.5 download and installation tutorial (win10 system)
随机推荐
【MySQL】锁
leetcode刷题 (5.28) 哈希表
Migrate data from a tidb cluster to another tidb cluster
从表中名称映射关系修改视频名称
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
你想知道的ArrayList知识都在这
hcip--mpls
Verrouillage [MySQL]
2022.02.13 - NC003. Design LRU cache structure
logback1.3. X configuration details and Practice
2022.02.13 - NC004. Print number of loops
Tidb backup and recovery introduction
Personalized online cloud database hybrid optimization system | SIGMOD 2022 selected papers interpretation
Online yaml to CSV tool
Restore backup data on S3 compatible storage with br
从 TiDB 集群迁移数据至另一 TiDB 集群
Modify the video name from the name mapping relationship in the table
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
MySQL learning records 12jdbc operation transactions
wincc7.5下载安装教程(Win10系统)