gpt4 book ai didi

c# - 如何在 C# 中将按位非运算符与移位运算符一起使用?

转载 作者:行者123 更新时间:2023-11-30 19:08:44 25 4
gpt4 key购买 nike

我不明白这个表达式是如何工作的。

~(1 << 1) = -3

我所理解的是 1 << 1 在二进制中的值为 10,在基数为 10 中的值为 2。它是如何通过 NOT 运算符得到 -3 的?移位运算符如何与 NOT 运算符一起使用?

最佳答案

位逆运算符与此处的移位完全分开。

您从输入 10(二进制)开始 - 它具有完整的 32 位表示

00000000_00000000_00000000_00000010

因此,按位取反是:

11111111_11111111_11111111_11111101

...这是 -3 的二进制表示(32 位 two's complement )。

关于c# - 如何在 C# 中将按位非运算符与移位运算符一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44501204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com