矢沢 久雄 今回は,2進数で負の値を表す「補数表現」と,同じ値のまま2進数のビット数を増やす「符合拡張」を説明します。紙の上ならマイナス記号を使って「-1011」のような負の2進数を表すことができますが,コンピュータにはできません。デジタルICの構造上,0と1の数字を表せても,マイナス記号を表す手段がないからです。0と1だけで,どうやって負の値を表すかが前半のテーマです。後半では,8ビットから16ビット,16ビットから32ビット,というように,2進数のビット数を増やす方法がテーマです。単に上位けたを0で満たせばよいと思われるかもしれませんが,それだけではダメなのです。 足し算で引き算ができる 2進数の0と1だけを使って負の値を表すにはどうしたらよいか? いきなりですが,答えを言ってしまいましょう。負の値を正の値で表すのです。「そんなバカげたことができるのか?」と思われるかもしれませんが,で