補数表現
コンピューターの内部では1と0しか扱わない。-(マイナス)を記号を使わずに表現するために「補数」を使用する。
補数
補数には、ある自然数に足したとき桁が1つ上がる最小の数をいう「基数の補数」とある自然数に足したとき桁が1つ上がる数の一つ手前の数をいう「減基数の補数」がある。
10進数を例に挙げると10進数には「9の補数」と「10の補数」があり、「9の補数」が減基数の補数、「10の補数」が基数の補数となる。
また整数123の「9の補数」は整数123にxを足して999になる値「876」となり「10の補数」は整数123にxを足して1000になる値「877」となる。
n進数において「n-1の補数」と「nの補数」の2つの補数がある。
2進数の補数計算
2進数での補数計算にはもっと単純な法則性があり、「1の補数」は元のビット数を反転させることで求められる。「2の補数」はその値に1を加えることで求める。
例えば2進数「0101」の1の補数はビット数を反転させ「1010」となり、2の補数は1010に1を加えた値「1011」となる。