10進数の計算を2進数の計算に変換して実行する問題

■問題

( 62 ) 10 − ( 98 ) 10

上の減算を2の補数を用いて行い,答えを10進数で求めよ.ただし,2進数は8桁で表し,計算過程を明確に示すこと.

■答え

( -36 ) 10

■ヒント

2の補数を使うことにより,減算を加算で表せる.→ 補数による減算

■解き方

( 62 ) 10 = ( 00111110 ) 2 , ( 98 ) 10 = ( 01100010 ) 2 である.→10進数→2進数変換

( 01100010 ) 2 の各ビットの0 と1 を反転し,1 を加えると,2の補数 ( 10011110 ) 2 が得られる.これは8桁の2の補数表現では −98 を表す.したがって,減数の2の補数を加えることにより,減算を加算に変換できる.

( 00111110 ) 2 − ( 01100010 ) 2

= ( 00111110 ) 2 + ( 10011110 ) 2

= ( 11011100 ) 2

11011100 2 を10進数に変換する.

11011100 2 は8桁の2の補数表現であり,最上位ビットが1 であるので負の数を表す.この数の2の補数を求める. 11011100 2 の0と1 を反転させると 00100011 2 ,1 を加えると 00100100 2 となる.これを10進数に変換する.

00100100 2 = 2 2 + 2 5 = 36 10

よって, 11011100 2 = −36 10

= ( −36 ) 10 →2進数→10進数変換

10進数で検算する.

( 62 ) 10 − ( 98 ) 10 = ( −36 ) 10



ホーム>>カテゴリー別分類>>その他>>10進数の計算を2進数の計算に変換して実行する問題

最終更新日: 2026年10月26日