C言語なら俺に聞け(入門篇) Part 16
■ このスレッドは過去ログ倉庫に格納されています
0003デフォルトの名無しさん
2007/07/10(火) 03:00:02まあ要するに x と足して 1 0000 0000 になる数だ。
これを負の数と定義すると、オーバーフローを無視してしまえば、
x + (-x) = 0000 0000 になるため都合がいい。
そのため、2の補数表現が好まれている。
1 0000 0000 - x がなぜ ~x + 1 という形で求められるかだが、
これは 1 0000 0000 = 1111 1111 + 1 であるから、
1111 1111 - x = ~x となり、
1 0000 0000 - x = ~x + 1 となるのだ。
1111 1111 - x = ~x が分からなければ、
何か具体的な例を使って実際にやってみるといい。
すぐ分かる。
■ このスレッドは過去ログ倉庫に格納されています