当前位置:网站首页>Introduction to bit operation
Introduction to bit operation
2022-07-07 19:40:00 【The lights are on`】
Bit operation learned from Yu Ju , To share a wave of
What is bit operation ?
An operation : Bit operation is the operation provided by the system to directly operate the digits of numbers . There are the following operations :
<< Shift left operator
>> Shift right operator
| or
& And
~ Take the opposite
^ Exclusive or
The system stores numbers in binary , That is, every number in memory is composed of 0、1 The string formed ; Introduce the decimal word ( I.e 、 Ten 、 One hundred, etc , Be careful , This is just a quote , The object described is still binary 0、1 character string ), Bit operation is to directly change the number in some base , Give a few examples to illustrate :
The strings in the following brackets are binary , No more marking
- (1010)>>1 This operation means 1010 Moves to the right one , It turned out to be (101); Because the fourth 0 Due to the right shift, it is discarded , If (1010)>>2, The result is (10), Because the last 10 Are all rounded off .
- (1010)<<1 This operation means 1010 The left one , The result is (10100); The extra digits make up 0, Top ten 1 Moved to the hundreds .
- & 、 | Operation and programming language || and && Same operation , If all are 1 be & As the result of the 1, One is 1 be | As the result of the 1, In other cases, the result is 0. Such as 1010 & 0010=0010,1010 | 0010=1010.
- ~ The operation is different from !, This operation is to make 0、1 swap , namely 0 become 1,1 become 0; Such as ~1010 The result is 0101 .
- ^ Exclusive or operation , Is to judge whether the two are different , The difference is 1, The same thing is 0. such as 1010 ^ 0011 = 1001.
- among , In XOR operation , Any number exclusive or 0 unchanged , Any number exclusive or 1 It's the opposite . Such as 1010 ^ 1=1011.
- What we should pay attention to here is ,&、|、^ The operation is the operation of a single letter in the corresponding position of two strings , for example :1010 | 1=1011, The latter has only one , As for the last bit of the former, or operation , The first three of the former are not affected .
Bit operation tips :
Introduce a bit operation tips :
a=a^b;
b=a^b;
a=a^b;ask : What are the functions of these three statements ?
Let's deduce it to know :

so , The function of a statement is to exchange a,b Value .
Basic operation of bit operation :
Basic bit operations are important , Here are some parts of :
- Get rid of the last one :x>>1
- Add one at the end 0:x<<1
- Add one at the end 1:x<<1 + 1(+ Also available | )
- Turn the last one into 1:x | 1
- Turn the last one into 0:(x>>1)<<1 perhaps x | 1 - 1
- Last negative :x^1
- Number right k A into 1:x | (1<<(k-1))
- Number right k A into 0:x & (~(1<<(k-1)))
Operation priority :
When writing code, you must pay attention to the possible impact of different operator priorities , So be sure to add parentheses .

边栏推荐
猜你喜欢

PV static creation and dynamic creation

Policy mode - unity

Kunpeng developer summit 2022 | Kirin Xin'an and Kunpeng jointly build a new ecosystem of computing industry
![[RT thread env tool installation]](/img/bc/9b39651d40a240f0893200793f67e9.png)
[RT thread env tool installation]

CMD command enters MySQL times service name or command error (fool teaching)

【RT-Thread env 工具安装】

Seize Jay Chou

2022.07.05

Command mode - unity

ES6 note 1
随机推荐
L1-027 rental (Lua)
Solve the error reporting problem of rosdep
凌云出海记 | 赛盒&华为云:共助跨境电商行业可持续发展
Chief technology officer of Pasqual: analog quantum computing takes the lead in bringing quantum advantages to industry
ES6 note 1
String - string (Lua)
Ucloud is a basic cloud computing service provider
一锅乱炖,npm、yarn cnpm常用命令合集
吞吐量Throughout
ASP.NET幼儿园连锁管理系统源码
Pasqal首席技术官:模拟量子计算率先为工业带来量子优势
[mime notes]
LeetCode 890(C#)
State mode - Unity (finite state machine)
网信办公布《数据出境安全评估办法》,9 月 1 日起施行
Classification and application of enterprise MES Manufacturing Execution System
Is PMP beneficial to work? How to choose a reliable platform to make it easier to prepare for the exam!!!
L1-023 output gplt (Lua)
Notes...
Former richest man, addicted to farming