当前位置:网站首页>按位逻辑运算符
按位逻辑运算符
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
边栏推荐
- 使用 Dumpling 备份 TiDB 集群数据到兼容 S3 的存储
- Use dumping to back up tidb cluster data to S3 compatible storage
- China's high purity aluminum target market status and investment forecast report (2022 Edition)
- sys. argv
- C language - bit segment
- LDAP應用篇(4)Jenkins接入
- [research materials] 2021 Research Report on China's smart medical industry - Download attached
- All the ArrayList knowledge you want to know is here
- Migrate data from a tidb cluster to another tidb cluster
- synchronized 解决共享带来的问题
猜你喜欢
Personalized online cloud database hybrid optimization system | SIGMOD 2022 selected papers interpretation
[cloud native] teach you how to build ferry open source work order system
Online yaml to CSV tool
From monomer structure to microservice architecture, introduction to microservices
Leetcode question brushing (5.28) hash table
The resources of underground pipe holes are tight, and the air blowing micro cable is not fragrant?
ESP series pin description diagram summary
[secretly kill little partner pytorch20 days -day01- example of structured data modeling process]
Use Alibaba icon in uniapp
[MySQL] lock
随机推荐
Golang force buckle leetcode 1020 Number of enclaves
MySQL learning record 07 index (simple understanding)
Upgrade tidb operator
1. Color inversion, logarithmic transformation, gamma transformation source code - miniopencv from zero
[luatos-air551g] 6.2 repair: restart caused by line drawing
Synchronized solves problems caused by sharing
CISP-PTE实操练习讲解
2022 Inner Mongolia latest water conservancy and hydropower construction safety officer simulation examination questions and answers
pcd转ply后在meshlab无法打开,提示 Error details: Unespected eof
NFT smart contract release, blind box, public offering technology practice -- jigsaw puzzle
[research materials] 2021 China online high growth white paper - Download attached
你想知道的ArrayList知识都在这
Introduction to backup and recovery Cr
Zhong Xuegao, who cannot be melted, cannot escape the life cycle of online celebrity products
ROS编译 调用第三方动态库(xxx.so)
Wincc7.5 download and installation tutorial (win10 system)
Use Alibaba icon in uniapp
ESP系列引脚说明图汇总
wincc7.5下载安装教程(Win10系统)
[cloud native topic -45]:kubesphere cloud Governance - Introduction and overall architecture of enterprise container platform based on kubernetes