Sign in
or
Register
Courses
Textbook
Compiler
Contests
Topics
Computer Science. Textbook
算術
二进制移位 (C++)
位操作
计算机内存中的所有数字都以二进制形式存储,即作为 0 和 1 的序列。为了在计算机内存中存储数字,使用了有限数量的位。由于这个数字,计算机的范围有限,计算结果可能不准确。 一个整数可以存储在8位、16位、32位或64位的内存中。每增加一位,可能值的范围就会扩大 2。
使用相同的算法在处理器中执行正数和负数的运算。
借助按位逻辑运算,您可以控制处理器和外部设备寄存器的各个位。
<头>
C++操作
目的地
东西> <正文>
一个 & b
按位
And
用于
a
和
b
一个 | b
a
和
b
的按位
OR
a ^ b
X
OR
用于
a
和
b
~a
a
的位反转
<代码>
一个<< b
将
a
左移到
b
一个>> b
a
按位右移到
b
表>
操作
AND
使用
操作“
AND
”
,您可以重置(设置为零)掩码为 0 的位!
掩码
–一个常量,它定义了对多位数字的位进行逻辑运算的范围。
D
- 数据,
M
- 掩码
操作
OR
操作“
OR
”
可用于将1写入掩码为1的位!
运算
异或
使用
操作“
XOR
”
,您可以反转掩码为 1 的位!
左移
逻辑(按位)
左移 1
位将正整数加倍。
右移
布尔值(按位)。
右移 1
将一个正整数除以 2。
由于右移会在空位置设置符号位,因此可以通过右移变量的整个长度来确定
x
的符号。