跳至页脚内容
Iron Academy Logo
学习 C#
学习 C#

其他类别

了解 C# 中的二进制 AND 运算符

Tim Corey
9 分 50 秒

二进制与运算符 (&) 是在C#中处理二进制操作时的一个基本概念。 它用于比较两个二进制数,并根据特定的逻辑规则返回结果。 为了更好地理解,我们将跟随 Tim Corey 在他的视频"C#中的二进制 "中的讲解:二进制 AND 操作符,10 分钟以内"视频中的讲解。

二进制 AND 运算符简介

第六课是 Tim Corey 继续讲述如何理解 C# 中的二进制,重点是二进制 AND 运算符。 他强调,本课将在 10 分钟或更短的时间内介绍 AND 运算符,并提供清晰的解释和示例。

Tim 使用两个整数变量 Val1Val2 来设置示例,这些变量的值与以前的课程相同。 他使用一个简单的控制台应用程序来显示结果,并演示 AND 运算符的功能。

逻辑 AND 和二进制 AND 的区别

Tim 指出一个重要的区别:虽然 &&(双和号)用于条件语句中的逻辑操作,但二进制与运算符 (&) 的工作方式不同。 二进制 AND 运算符用于执行比特运算,即比较两个数字的每个对应位。

二进制 AND 运算符的工作原理

Tim 解释了二进制 AND 运算符的操作方法:

  • 它比较了两个数字的每一位。
  • 如果两个位都为 1,则结果为 1。
  • 如果任一位为 0,结果为 0。

为了说明这一点,Tim 将 Val1 & Val2 的结果赋给一个新变量 Val3,并将其打印到控制台。

二进制 AND 操作示例

Tim 提供了一个将 AND 运算符应用于两个二进制数的清晰示例:

int Val1 = 10;   // Binary: 1010
int Val2 = 12;   // Binary: 1100
int Result = Val1 & Val2; // Binary Result: 1000

Console.WriteLine(Result); // Outputs: 8
int Val1 = 10;   // Binary: 1010
int Val2 = 12;   // Binary: 1100
int Result = Val1 & Val2; // Binary Result: 1000

Console.WriteLine(Result); // Outputs: 8

他解释说,结果是通过单独比较每个比特得到的:

  • 最小有效位为 0 & 0 → 0
  • 第二位为 1 和 0 → 0
  • 第三位为 0 和 1 → 0
  • 最有效位为 1 & 1 → 1

因此,最终的二进制结果是 1000,在十进制中是 8

AND 和 OR 的主要区别

Tim 提醒我们注意上一课中的 OR("......")。|`) 运算符,并将其与 AND 进行对比。 OR 的结果是任意一位为 1,而 AND 的结果是两位都为 1。在处理二进制操作时,这一根本区别至关重要。

AND 运算符的实际应用

Tim 重点介绍了 AND 运算符在现实世界中的应用场景。 其中一个例子就是使用二进制标志。 假设二进制数中的每一位都代表一个特定的权限(如进入办公室、会议室或存储区)。 通过使用 AND 运算符,我们可以确定两个用户的权限是否重叠。

例如:

  • 用户A:1101(可访问办公室、会议室和储藏室)
  • 用户B:1011(可访问办公室、楼梯间和储藏室)
  • A & B = 1001(共同访问:办公室和储藏室)

Tim 解释说,这种方法有助于安全系统、基于角色的访问控制和类似应用。

摘要和最终想法

Tim 最后重申了 AND 运算符的重要性。 他强调,虽然看起来很简单,但了解它在二进制层面的功能对于位操作、权限管理和数据处理至关重要。

这段视频对二进制 AND 运算符进行了简明扼要的解释,并通过 Tim 的示例使其易于掌握。如果您想进一步了解这个问题,Tim 的视频提供了一个很好的逐步分解概念的方法。

Hero Worlddot related to 了解 C# 中的二进制 AND 运算符
Hero Affiliate related to 了解 C# 中的二进制 AND 运算符

分享您的所爱,赚取更多收入

您为使用 .NET、C#、Java、Python 或 Node.js 的开发人员创建内容吗?将您的专业知识转化为额外收入!

钢铁支援团队

我们每周 5 天,每天 24 小时在线。
聊天
电子邮件
打电话给我