你说的没错。这是二进制补码整数表示形式的产物。
在16位中,1表示为
0000 0000 0000 0001。取反
1111 1111 1111 1110,得到,即-2。同样,15是
00000000 0000 1111。取反
1111 1111 1111 0000,得到,即-16。
一般来说,
~n = -n - 1

你说的没错。这是二进制补码整数表示形式的产物。
在16位中,1表示为
0000 0000 0000 0001。取反
1111 1111 1111 1110,得到,即-2。同样,15是
00000000 0000 1111。取反
1111 1111 1111 0000,得到,即-16。
一般来说,
~n = -n - 1