読み方 : いちのほすう

1の補数 【one's complement】

概要

1の補数(one's complement)とは、ある自然数を2進数(2進法)で表現した時に、足し合わせても桁が増えない最大の数のこと。コンピュータではビット反転(NOT演算)によって求めることができる。

解説 2進数における「減基数の補数」と呼ばれる数で、ある数に足し合わせても桁数が増えない数のうち、最も大きい数を指す。足し合わせた結果は元の数と同じ桁数ですべての桁が「1」になる。例えば、8桁の2進数「10010110」に対する1の補数は「01101001」であり、両者を足し合わせるとちょうど「11111111」となる。

2進数には「0」と「1」しかないため、どの桁も足した結果が1になるということは、元の数が「1」の桁では補数の同じ桁は「0」に、元の数が「0」の桁では補数の同じ桁は「1」になる。ちょうど元の数の各桁の「0」と「1」を反転させたものが補数となるため、ビット単位の論理否定(NOT)によって求めることができる。

これに対し、元の数に足し合わせるとちょうど桁が一つ増える最小の数を「2の補数」(2進数における基数の補数)という。足し合わせると「1000…」と最上位桁が繰り上がって下位桁がすべて0になる数で、1の補数に1を加えることで求めることができる。

(2022.10.25更新)

他の用語辞典による「1の補数」の解説 (外部サイト)

資格試験などの「1の補数」の出題履歴

▼ 基本情報技術者試験
令1修7 問2】 負の整数を表現する代表的な方法として,次の3種類がある。 a 1の補数による表現 b 2の補数による表現 c 絶対値に符号を付けた表現(左端ビットが0の場合は正,1の場合は負)4ビットのパターン 1101 を a~c の方法で表現したものと解釈したとき,値が小さい順になるように三つの方法を並べたものはどれか。
平27修12 問3】 負の整数を表現する代表的な方法として,次の3種類がある。 a 1の補数による表現 b 2の補数による表現 c 絶対値に符号を付けた表現(左端ビットが0の場合は正,1の場合は負) 4ビットのパターン 1101 を a~c の方法で表現したものと解釈したとき,値が小さい順になるように三つの方法を並べたものはどれか。