2の補数

2の補数とは、\(n\)桁の2進数において、基準となる数を\(2^n\)(10進数)とした補数のことです。

つまり、\(n\)桁の2進数を\(x\)とした場合、\(x\)の2の補数は、\(2^n-x\)です。

なお、\(x\)の0と1を反転した値に1を足しても\(x\)の2の補数を求められます。

2の補数の具体例

例えば、7桁の2進数0110110の2の補数は、10000000-0110110で、1001010となります。

もしくは、0110110の0と1を反転させると、1001001であり、これに1を足すと1001010となり、同じ結果が得られます。

2の補数による負数の表現

例えば、4桁の2進数0011の2の補数は、1101です。

このとき、\(0011+1101=10000\)となりますが、4桁の2進数で考えるため、5桁目の1は無視して、答えは、0000となります。

二つの数を足して0になるということは、1101は、-0011と言えます。

よって、2の補数は、元の数の負数と言えます。