関連するページを見るにはこのグラフ図を利用してください.

補数による減算

■負の数の表現

コンピュータでは,負の数を扱えない.そこで補数によって負の数を表現する.

ある正の2進数 n に対して

n = ( n の補数)

と定義する.

10進数で 7 から7に対応する2進数の値を4桁で下表に示す.

すなわち,4桁まで扱えるコンピュータを考える.

10進数で1から7までの正の値の2進数の4桁目は0になっている.

そのため,2の補数では4桁目が1となる.

つまり,負の数は最上位桁が1となっていることがわかる.

10進数 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7
2進数 1001 1010 1011 1100 1101 1110 1111 0000 0001 0010 0011 0100 0101 0110 0111

■補数による計算

2の補数を,負の数と表現することで加算を足し算で行える.

例えばある正の2進数 n があるとする.

n + n 2 補数 = ( 100 0 ) 2 補数の定義

n = ( 100 0 ) 2 n 2 補数 ・・・・・・(1)

補数の定義より, n を補数で表せる.

( 0101 ) 2 ( 0010 ) 2 = ( 0101 ) 2 { ( 10000 ) 2 ( 1110 ) 2 }

(∵(1))

= ( 0101 ) 2 + ( 1110 ) 2 ( 10000 ) 2

= ( 10011 ) 2 ( 10000 ) 2

= ( 0011 ) 2

なので,減算を2の補数で行える.

また, ( 10000 ) 2 は(桁数+1)を桁打ち消すものである.

あふれた桁を無視すれば同じ処理となる.

  • 普通の計算

  • 補数を使った計算

 

ホーム>>カテゴリー別分類>>その他>>補数による減算


最終更新日: 2025年4月25日

[ページトップ]

金沢工業大学

利用規約

google translate (English version)