【问题标题】:What is meant by "both bits" when using bitwise operators使用按位运算符时的“两位”是什么意思
【发布时间】:2018-06-11 03:48:02
【问题描述】:

W3Schools page 将按位与描述为:

如果两个位都为 1,则将每个位设置为 1。

并举个例子:

5 & 1 返回 1,与 0101 & 0001 返回 1 相同。

据我所知,0101 是 4 位,0001 是另外 4 位。那么,“如果两个位都是 1”是什么意思?他们在说什么?

【问题讨论】:

  • 每个字节对应位置的位对。
  • 每个位置的那些。例如。第一个数字的第一位与第二个数字的第一位相比 - 都是 0。只有每个数字的最后一位都是 1,所以它解析为 0001
  • 非常感谢!您也可以考虑将其写为答案,以便我接受。
  • “按位”-“每个位位置”

标签: javascript bitwise-operators


【解决方案1】:

按位运算就是按位运算,每个位进入 CPU 并与另一个位组合。

所以0001 AND 0101,四个输出位中的每一个都是根据那个公式计算的。如果左操作数中位置 1 上的位与右操作数中位置 1 上的位都为 1,则输出将设置位置 1 上的位。

更强大的 CPU 可以并行计算许多这些操作,64 位 CPU 可以并行执行 64 位等。在您的示例中,并行计算 4 位。

(然后这些操作在 CPU 中结合到 ALU 中的其他算术运算,在 CPU 的不同部分锁存 TCM 中的数据位等。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    • 2015-09-18
    • 2017-03-29
    • 2011-03-16
    • 2011-07-09
    相关资源
    最近更新 更多