• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:2進数「001100」を3/4倍するには?)

2進数の3/4倍とは?1/2と1/4の2進数表現についても解説

このQ&Aのポイント
  • 2進数「001100」を3/4倍する方法について解説します。1/2と1/4を2進数に変換する方法についても詳しく説明します。
  • 2進数「001100」を3/4倍する方法や、1/2と1/4を2進数に変換する方法について説明します。詳細な計算手順と答えをご紹介します。
  • 2進数「001100」を3/4倍する方法や、1/2と1/4を2進数に変換する方法についてわかりやすく解説します。計算の手順と答えをご紹介します。

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

  • ベストアンサー
  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.1

>「001100」に上で求められた「001001」を掛けて終わりだと思います。 違います。これなら単純に9をかけているだけです。 >1/2が「000110」 元の数を2倍するには「左へ1ビットシフト」同様に4倍するには「左へ2ビットシフト」 逆に1/2倍するには「右へ1ビットシフト」同様に1/4倍するには「右へ2ビットシフト」 ですから元の数をそれぞれシフトしたものと足しています。 まあでもこの辺りの計算なら「10進数に戻してから3/4を求め、その結果を2進数にする」のが間違いがない方法だと思います。 元の数は「10進数で12」なので「3/4倍すると9」なので「001001」が答えです。

hitosashi
質問者

お礼

回答ありがとうございます。 なるほど、よく分かりました。 別解まで教えて頂いたおかげで、 より分かりやすかったです。

その他の回答 (2)

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.3

> ここで私が分からないのは、なぜ1/2が「000110」、1/4が「000011」となるのか、です。 > 1/2、1/4をそれぞれ2進数にすると「0.1」、「0.01」になると思うのですが・・・。 いえ。 元の数「001100」の1/2が「000110」、元の数「001100」の1/4が「000011」って話だと思います。 それらを足し算すると、元の数の3/4nなるって話。 シフト計算と足し算以外に、2進数での掛け算をする必要が無いって話では。 > あと、「001100」を3/4倍した答えが載っていなかったので、 10進数で計算するなら、2進数の「001100」は10進数で12。 12の3/4倍は9。 10進数の9を2進数で表すと「001001」です。

hitosashi
質問者

お礼

回答ありがとうございます。 表の理解まで間違えてたみたいです(^^; 分かりやすい説明で助かりました。

noname#222886
noname#222886
回答No.2

001100 => 12(10進数)・・・元の数値 000110 => 6(10進数、12x1/2)・・・1/2の数値 といたかんじですかね

hitosashi
質問者

お礼

回答ありがとうございます。 表の理解まで間違えてました(^^;

関連するQ&A

専門家に質問してみよう