• ベストアンサー

2進数の計算

127 + (-3) の計算ですが 普通に10進数で計算してから124を2進数に直しても良いのですが、 敢えて2進数での計算方法を教えていただけませんでしょうか。 127は1111111ですが -3は8ビットで表さなければならないのでしょうか? その場合、足したり引いたりしても良いのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • info22
  • ベストアンサー率55% (2225/4034)
回答No.2

> -3は8ビットで表さなければならないのでしょうか? それでOKです。 足すのはそのまま足します。 引き算は2の補数に変換して足します。 8ビットの2の補数法を使います。 この方法では-128~+128の範囲の2進数を扱えます。 +127=01111111 +3=00000011 -3=11111101 (2の補数で、+3に加えると00000000となります。 +127+(-3)= 01111111 11111101(+ ----------- 01111100 = 124 となります。

mamoru1220
質問者

お礼

ありがとうございました。

その他の回答 (1)

  • sanori
  • ベストアンサー率48% (5664/11798)
回答No.1

こんばんは。 小学生のときに習った、引き算の筆算と同じことですよ。  1111111 -     11 -------------------  1111100 繰り下がりがなくて簡単すぎるので、もう2問。 5 - 2 = 3  101 - 10 --------------   11 9 - 2 = 7  1001 -  10 ------------------   111 >>>-3は8ビットで表さなければならないのでしょうか? それはそれで、一つの考え方ですけどね。

mamoru1220
質問者

お礼

ありがとうございました。

関連するQ&A