C++ 位操作

2025 年 4 月 29 日 | 4 分钟阅读

计算机无法理解我们用于交流的高级语言。因此,有一种标准方法可以使计算机理解任何指令。在基本层面,每条指令都被发送到一些称为位的数字信息中。位的序列表示它是一条特定的指令。

Bit manipulation C++

位被定义为以数字表示法存储数据的基本单位。

它表示以下两个值 -

1 - 表示信号存在或为真

0 - 表示信号不存在或为假

位表示任何指令的逻辑状态。位的序列以 2 为基数。因此,如果我们说有一个二进制数字序列,它从左到右读取,并且 2 的幂递增。

Bit manipulation C++

在理解了位的基础知识之后,让我们了解它在 C++ 中的操作。

位操作

位操作被定义为对 n 位数字的位级别执行一些基本操作。这是一种快速且原始的方法,因为它直接在机器端工作。

接下来,让我们了解 C++ 中位操作的基础知识。

  • 逻辑与

逻辑与接受两个操作数,如果它们都为真,则返回真。符号是 &&。

让我们看看 AND 运算符的真值表。

Bit manipulation C++

在最后一行中,A 和 B 均为高电平,导致高电平输出。

C++ 程序

输出

Bit manipulation C++
  • 逻辑或

如果两个操作数中的任何一个输入为高电平,则逻辑或给出高电平输出。符号是 ||

让我们看看 OR 运算符的真值表。

Bit manipulation C++

在这里我们可以看到第一行。输入 A 和 B 都为低电平,结果为 0(低电平输出)。

C++ 程序

输出

Bit manipulation C++
  • 逻辑非

逻辑非只接受一个操作数并将其反转。如果操作数为低电平,则使其为高电平,反之亦然。符号是 !。

让我们看看 NOT 运算符的真值表。

Bit manipulation C++

C++ 程序

输出

Bit manipulation C++
  • 左移运算符

左移运算符接受一个操作数,左操作数的值向左移动由右操作数指定的位数。

它用 << 表示。

C++ 程序

输出

Bit manipulation C++
  • 右移运算符

右移运算符接受一个操作数,右操作数的值向右移动由右操作数指定的位数。

它用 >> 表示。

C++ 程序

输出

Bit manipulation C++
下一个主题什么是引用变量