2進数の補数とは?補数を使って何が出来るかをまとめます。
何が出来る?
「補数」を使えば、2進数でマイナスを表現出来る。例えば、2進数同士の引き算の計算をするときに使える。
補数とは
Wikipedia
ある基数法において、ある自然数aに足した時、桁が1つ上がる数のうち最も小さい数
例えば、10進数で考えてみる
ある数に何を足したら10になるか考える。
例えば、4の補数は6(4に6を足すと10になるので)。
次に補数を使って引き算をしてみる。
引き算をするには、「補数を足し、上位の1桁を無視」することで計算できる。
例:
7−4
① 4の補数は6
② 7に補数を足す
= 7+6
= 13
③ 10の位を無視する
= 3
2進数でやってみる
流れは一緒なので、2進数で引き算をしてみる。
やり方は、同じく「補数を足し、上位の1桁を無視」。
例:
1111 - 1101 (10進数では15 - 13)
① まず、1101の補数を求める。
1101の補数 = 0011
2進数の補数の求め方:
ビットを反転させて1を足す。
1101
↓ 反転
0010
↓ 1を足す
0011
なので、1101の補数は0011
補数であるか確認してみる。
1101 + 0011 = 10000 (桁が1つ上がったので補数)
② 補数を足し
1111 + 0011 = 10010
③ 上位の1桁を無視
0010
結果:0010(10進数で2)