gpt4 book ai didi

java - 手工计算~100

转载 作者:行者123 更新时间:2023-11-29 09:57:50 24 4
gpt4 key购买 nike

如果我在 Java 中打印出 ~100,我得到 -101。我正在尝试手动解决这个问题。

NOT (~) 运算符反转所有位。

100 在二进制中是 00000000000000000000000001100100

反转它的位给出:

11111111111111111111111110011011

现在呢?我如何获得 -101

最佳答案

Java 使用二进制补码(参见 §4.2 基本类型和值)求反,您取补码并加一。

-x = ~x + 1
~x = -x - 1
~100 = -100 - 1

另一种思考方式是注意:

11111111111111111111111111111111 = -1

然后做:

  11111111111111111111111111111111 (-1)
- 11111111111111111111111110011011 (~x)
= 1100100 (100)

-1 - ~x = 100
-1 - 100 = ~x
~x = -101

关于java - 手工计算~100,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3975700/

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