補数の説明
簡単のため 8 ビットとする。
負数 x (x<0)は (2の8乗)+x=(2の8乗)-(xの絶対値)
で表す。
例 -12 : 00001100 の補数 = 11110100
「2の補数」表現と呼ぶ。( (2の8乗)-1+x を「1の補数」表現と呼ぶ)

「1の補数表現」+1 = 「2の補数表現」になっている。
(2の8乗)-1 は 11111111 なので、11111111-(xの絶対値) は xの絶対値の
各ビットの0を1に、1と0にしたもの(反転したもの)になっている。
これに1を加えれば「2の補数」表現になる。

「2の補数」表現は、10進数2桁では、-1 を 99 で、-2 を 98 で表すことに
相当する。これで -50から49 までを表現できる。
( 利点: 12 から 8 を引く演算と、2 から 8を引く演算を比べるとわかる )
戻る