bit - 当位移操作中有 NOT (~) 时会发生什么

标签 bit bit-shift bitstring

只是想找一些关于这个家庭作业问题的澄清

位移操作为((1010 & ~(1 << 3))

所以左移 3 就是 0000,但是加上 not,它会变成 1111 吗?

最佳答案

1 << 3不是0000 ,是1000 。互补产生 0111 ,然后与 1010 进行 AND :

  1010
& 0111
------
  0010

关于bit - 当位移操作中有 NOT (~) 时会发生什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66810351/

相关文章:

java - 从 16 位寄存器的 MSB 获取值

Java "Bit Shifting"教程?

python - 我可以在不填充的情况下将带有位串值的字典存储在内存中吗?

assembly - sra(算术右移)与 srl(逻辑右移)

java - 在 Java 中,我可以使用迭代 8 次的 for 循环将位转换为最初为 0 的整数,以获得某个 8 位数字吗?

algorithm - 以最快的方式生成所有 n 位二进制数

python - 将二进制 (0|1) numpy 转换为整数或二进制字符串?

c++ - 如何制作仅屏蔽 32 位的某些部分(索引)的位掩码?

java - 使用 4 mb 查找不在 40 亿列表中的整数。但 4 MB 还不够

c - 按最高有效位对齐位模式