2の補数
x の n 桁の二進数表示の下位 m − 1 桁目まで位の値が 0 だった場合、2の補数 x + 1 を求める際、ビット反転した値が桁上りによって再び反転するため、下位 M = min(m, n)桁まで元の数とその2の補数の値が一致する。また残りの上位 n − M 桁は、ビット反転 x の上位 n − M 桁に一致する。例えば、補数と元の数の位の値が一致する部分に下線を引けば、x = 0100 のビット反転は x = 1011 であり、2の補数は x + 1 = 1100 となる。同様に、1000 および 0000 のビット反転はそれぞれ 0111, 1111 であり、2の補数はそれぞれ 1000, 0000 となる(表も参照)。
1の補数は二進表示された数の各位の値(ビット)を 0 から 1、また 1 から 0 に置き換える操作(ビット反転)によって得られるため(例:0101 → 1010)、2の補数はしばしば元の数をビット反転して1を足したものとして定義される。
ある数の2の補数を反数と見なせば、二進法において決まった桁数を持った数をそれぞれ非負の数と負の数に対応づけられる(#負の数の表現)。 特に n 桁の二進数について 0 から 2 − 1(例:n = 8 なら 0 から 127)の範囲で符号なし表現と一致させたものは2の補数表現(、英: two's complement representation)または2の補数表記(、英: two's complement notation)と呼ばれる(#2の補数表現)。
2の補数表現はコンピュータの分野において、固定長の符号付きの整数型や固定小数点数の表現に利用されている。
また2の補数表現は加算器で減算をするために使われる。