• ベストアンサー

進数の問題について

 またまたすみません。 次の各問題の解答とその過程を教えて頂けますでしょうか??  「7/32の結果を2進数で示せ」  (計算過程も教えて下さい。)  (1)0.001011  (2)0.001101  (3)0.00111  (4)0.0111  「2進数で正しく表現できない10進数はどれか」  (できれば理由も教えて下さい。)  (1)0.1  (2)0.125  (3)0.25  (4)0.5    「負数を2の補数形式で表現するとき,4ビットの符合つき2進整数の計算で,あふれ(オーバーフロー)が生じるのはつぎのどれか」  (あふれや4ビットの意味がよく分かりません。 理由も教えて下さい。)  (1)0101+1001  (2)0001+1011  (3)0010+1101  (4)1011+1011  ほとんど分かりません。よろしくお願い致します。

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

  • ベストアンサー
noname#24477
noname#24477
回答No.2

[1番] 10進数を2進数に直すのは整数は2で割っていきます。 例 5を2進数に直すと5÷2=2余り1          2÷2=1余り0          1÷2=0余り1 この「余り」を下から順に書くと5=101 5=1*2^2+0*2^1+1 という意味です。2で割って余りを 考える理由がわかると思います。 小数の場合は2を「掛けて」整数になった部分を順に書いていきます。 例 7/32*2=7/16 整数部分なし 7/16*2=7/8  整数部分なし 7/8*2=7/4=1+3/4 整数部分 1 3/4*2=3/2=1+1/2 整数部分 1 1/2*2=1     整数部分 1 答0.00111 別解 7を7=4+2+1 と2の何乗の数に分ける 7/32=(4+2+1)/16=1/8+1/16+1/32 2進数では 1/2=0.1,1/4=0.01,1/8=0.01・・・・・です。 2を掛けていく理由も分かってもらえると思います。 [2番]はもうできますか? 2をいくら掛けても小数がなくならないのが答です。 答(1) [3]4ビットは2進数の4桁と思ってください。 (1)1110 (2)1100 (3)1111 (4)10110 今は4ビットまでしか無いので(4)は1番左の数が読めません。繰り上がって桁数が増えてしまった=あふれ です。(4)は0110と読まれてしまいます。 蛇足 なお符号付4ビットですから1番左は符号0=プラス,1=マイナス を表す。 それも含めて普通に足し算します。

その他の回答 (1)

  • Largo_sp
  • ベストアンサー率19% (105/538)
回答No.1

いきなり問題を解いているのでしょうか... 参考書やweb検索するとビットについてはいろいろ出てきますが... まず最初の問題 ここは、数学のカテゴリなので数学の考えで一般的に n進数の小数点表記ですが、小数第m桁目は、 n^(-m)となっています(nの-m乗) とすると、今回の2進数の場合は... 7/32=1/32+1/16+1/8=1/2^5+1/2^4+1/2^3+0/2^2+0/2 となって、答えは、0.00111...(3)ですね... 2問目の問題は、整数のn進数化の逆をします。 n倍していって、m回目の整数部分が小数第m桁ですね.. ここでは、循環するものをみつけますが... 分数にして、分母にnの素因数が含まれないものを探すのが かんたんですね この場合 0.1=1/10=1/2*5...5がある。 0.125=1/8=1/2^3...2だけ 0.25=1/4=1/2^2...2だけ 0.5=1/2=1/2^1...2だけ で答えは... 3問目は...4ビットというのは、4つの信号線しかない 4つの0と1でしか表現しないという意味です。 4桁しか有効でないよ...というかんじですね... 当然、繰り上がりというものがあるので、5桁になる場合がありますが、 このことを桁あふれ...オーバーフローといいます。 このことが解かれば答えは一瞬ですね... これは計算してみてください

関連するQ&A

専門家に質問してみよう