• 締切
  • すぐに回答を!

情報処理についての質問です。

  • 質問No.9523330
  • 閲覧数119
  • ありがとう数2
  • 回答数2

お礼率 6% (2/30)

次の10進数の計算を2進数に直して計算せよ。

(問)25-88を符号付き2進数を用いて計算しなさい。

符号付き2進数は0の時が+、1の時が-とわかっているのですが、それを実際に使っての計算方法がわかりません。

よろしくお願いします。

回答 (全2件)

  • 回答No.2

ベストアンサー率 15% (6/38)

tmys10さんの回答で完璧だと思いますが、わかりやすいように少し補足をします。

> 88 = 64+16+8 = 01011000(2)
> 2の補数は0と1をひっくり返して1を加えるので、
> -88 = 10100111(2) + 1(2) = 10101000(2)
> なので、

この時点までで出ている2進数値「10101000(2)」は既にそれ自体でマイナス値なわけですので

>25 - 88 = 00011001(2) + 10101000(2) = 11000001(2)

最期の計算は引き算でなく単純に足し算すれば
それで計算結果はそのまま 2の補数まで考慮された計算結果になるわけです
  • 回答No.1

ベストアンサー率 36% (283/773)

2の補数でいいんでしたっけ? 8ビットで計算すると:
25 = 16+8+1 = 00011001(2)
88 = 64+16+8 = 01011000(2)
2の補数は0と1をひっくり返して1を加えるので、
-88 = 10100111(2) + 1(2) = 10101000(2)
なので、
25 - 88 = 00011001(2) + 10101000(2) = 11000001(2)

# 2の累乗をいくつまで覚えているかで歳がわかる :-)
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ページ先頭へ