为什么在PHP中按位~0 = -1?

时间:2016-01-02 03:00:10

标签: php

我认为0是0000 0000 0000的比特,而按位不是0将是1111 1111 1111,这将是一个非常大的数字而不是-1。即使第一个数字是符号数字,它应该是一个非常负数而不是-1。有人可以帮我解释一下吗?

1 个答案:

答案 0 :(得分:0)

因为11111 .... 111是-1。 10000 .... 00是最小的负数。这是负数的二进制表示。它倒了#34;

在此链接上查看更多信息: http://www.swarthmore.edu/NatSci/echeeve1/Ref/BinaryMath/NumSys.html#signint