こんにちは。福田泰裕です。
この記事では、高等学校で履修する『情報Ⅰ』第2章「コミュニケーションと情報デザイン」より、「(7) 2進数と10進数の基数変換(小数)」について解説していきます。
最後まで読んでいただけると、嬉しいです!
目次
この記事の内容は、私がYouTubeに公開している『情報Ⅰ授業動画②-(7)』を文字起こししたものです。
ぜひ、チャンネル登録よろしくお願いします!
2進数の小数を扱う前に、まずは10進数の小数の意味を、改めて考えてみましょう。
10進数は1桁上がるごとに、桁の重みが10倍になります。
つまり逆に考えると、1桁下がるごとに、桁の重みが10分の1になります。
例えば、12.345という数を考えると、小数第1位が3、小数第2位が4、小数第3位が5、となります。
ここで、1桁下がると桁の重みが10分の1になるので、
小数第1位は、10分の1の位、
小数第2位は、100分の1の位、
小数第3位は、1000分の1の位、と考えることができます。
後は、縦にかけて、横に足すと、12.345、という数ができあがります。
2進数の小数も、同じように考えることができます。
2進数は、1桁上がるごとに、桁の重みが2倍になる数え方です。
つまり、逆に考えると、1桁下がるごとに桁の重みは2分の1になります。
2進数の「10.111(2)」という数を考えると、
小数第1位、つまり2分の1の位が1、
小数第2位、つまり4分の1の位が1、
小数第3位、つまり8分の1の位が1、となります。
これを、縦にかけて、横に通分して足すと、
$$2 + \frac{7}{8}$$
となり、これを計算すると、「2.875」と、10進数に基数変換することができました。
2進数の小数は、このようにして10進数の小数に基数変換することができるのです。
それでは、2進数から10進数への基数変換の練習問題です。
練習1。
「1.011(2)」を、10進数で表せ。
まずは動画を止めて、自分で考えてみてください。
それでは、解説を始めます。
まず、「1.011(2)」を、1の位、2分の1の位、4分の1の位、8分の1の位の箱に入れます。
そして、縦にかけて、横に通分して足すと、
$$ 1 + \frac{3}{8}$$
これを計算すると「1.375」となって、10進数に基数変換できます。
練習2。
「11.101(2)」を、10進数で表せ。
ここで動画を止めて、自分で考えてみてください。
それでは、解説を始めます。
まず、「11.101(2)」を、箱に入れます。
そして、縦にかけて、横に通分して足すと、
$$ 3 + \frac{5}{8}$$
これを計算すると、3.625、となって、10進数に基数変換できました。
このように、整数も小数も、同じように計算すれば2進数から10進数へ基数変換することができます。
次は、10進数の小数を2進数へ基数変換する手順です。
その前に、10進数の小数について考えてみましょう。
10進数の小数、1.234は、小数部分を10倍していくと、一の位に順に、1、2、3、4と表れます。
これを式にすると、1.234の小数部分、0.234を10倍すると、2.34。
小数部分の0.34を10倍すると、3.4。
小数部分の0.4を10倍すると、4。
そして、上から一の位を見てみると、1、2、3、4、という数が順に表れています。
この考えを、2進数への基数変換に利用しましょう。
10進数で表された小数の2進数への基数変換は、小数部分を2倍していき、その一の位を書き並べていきます。
ここでは「0.625(2)」という小数を、2進数に基数変換していきましょう。
まず、小数部分の0.625を2倍して、1.25。
小数部分の0.25を2倍して、0.5。
小数部分の0.5を2倍して、1。
小数部分がなくなったので、掛け算は終了です。
一の位を上からみると、「0.101(2)」と2進数に基数変換できました。
このように、小数部分を2倍していき、一の位を上から書き並べれば、2進数に基数変換できます。
それでは、10進数の小数を2進数へ基数変換する練習問題です。
練習1。
「0.375」を、2進数で表せ。
まずは動画を止めて、自分で考えてみてください。
それでは、解説を始めます。
まず、0.375の小数部分を2倍して、0.75。
小数部分の0.75を2倍して、1.5。
小数部分の0.5を2倍して、1。
小数部分がなくなったので、掛け算は終了です。
一の位を上から書き並べると、「0.011(2)」となり、2進数に基数変換できました。
練習2。
6.25を、2進数で表せ。
ここで動画を止めて、まずは自分で考えてみてください。
それでは、解説を始めます。
今回のような場合は、整数部分と小数部分に分けて考えます。
それぞれ計算方法が違うので、注意しましょう。
まず整数部分の6を、2進数に基数変換していきます。
整数の基数変換は、2で割った余りを書き並べていきます。
6割る2は、3余り0。
3割る2は、1余り1。
商が1になったので割り算を終了し、下からたどると、整数部分は、「110(2)」となります。
次は、小数部分、0.25を基数変換していきます。
0.25の小数部分を2倍して、0.5。
小数部分の0.5を2倍して、1。
小数部分がなくなったので、掛け算は終了です。
一の位を上から書き並べると、「0.01(2)」、となりました。
この2つを合体させると、「11.01(2)」と2進数に基数変換することができました。
このように、整数部分と小数部分に分けて考える必要があるので、注意して計算しましょう。
【『情報Ⅰ』解説動画】1-(1) 情報社会と情報
【『情報Ⅰ』解説動画】1-(2) 情報モラルと個人に及ぼす影響
【『情報Ⅰ』解説動画】1-(3) 知的財産権① 産業財産権
【『情報Ⅰ』解説動画】1-(4) 知的財産権② 著作権
【『情報Ⅰ』解説動画】1-(5) 知的財産権③ 著作権の例外規定・CCライセンス
【『情報Ⅰ』解説動画】1-(6)個人情報の保護と管理
【『情報Ⅰ』解説動画】1-(7)新しい情報システム
【『情報Ⅰ』解説動画】1-(8)問題解決の手順
【『情報Ⅰ』解説動画】2-(1)メディアの発達
【『情報Ⅰ』解説動画】2-(2)コミュニケーションの形態
【『情報Ⅰ』解説動画】2-(3)情報デザイン
【『情報Ⅰ』解説動画】2-(4)アナログとデジタル
【『情報Ⅰ』解説動画】2-(5)2進数と10進数の基数変換(整数)
【『情報Ⅰ』解説動画】2-(6)2進数と16進数の基数変換
【『情報Ⅰ』解説動画】2-(7)2進数と10進数の基数変換(小数)
いかがだったでしょうか。
YouTubeの授業動画・確認問題・授業プリントは、高校生が家庭学習で利用したり、教員が学校の授業で利用したり、宿題にして反転学習に利用したり……と、自由に使ってもらって構いません!
(ブログや動画にコメントをくれると嬉しいです😀)
動画は少しずつ増やしていく予定なので、チャンネル登録もよろしくお願いします👇
https://www.youtube.com/channel/UCsoJpeo3XzHqcPfbFKRf_Tg
最後まで読んでいただき、ありがとうございました。
質問やご意見、ご感想などがあればコメント欄にお願いします👇