おちゃめさんがおっしゃるところの111111111111111111111111111111010が、なぜマイナス6になるのか、お分かりですか?
2進数の下位ビットから数えてn番目のビットは、2のn-1乗の数を表すことはご存じと思います。
では、最上位ビット(最下位ビットから数えて32番目のビット)は、2の31乗を表すかと言うと、そうではなく、2の31乗をマイナスした値になります。マイナスなのは最上位ビットだけで、あとは普通にプラスです。
面倒かも知れませんが、これらを全て足してやれば、マイナス6になるのがお分かりいただけるかと。
結論を言えば、NOT N==-1-N です。
3そうだね プレイ済み