第1回 課題解答

課題1

「214.08」を(1)式のように分解した形で書いて下さい。
解答
\(\begin{eqnarray} &&214.08\\ =&&200 + 10 + 4 + 0.0 + 0.08\\ =&&2\times100 + 1\times 10 + 4\times 1 + 0\times 0.1 + 8\times 0.01\\ =&&2\times10^2 + 1\times 10^1 + 4\times 10^0 + 0\times 10^{-1} + 8\times 10^{-2} \end{eqnarray} \)

より、
\(2\times10^2 + 1\times 10^1 + 4\times 10^0 + 0\times 10^{-1} + 8\times 10^{-2}\)
となる。
\(2\times10^2 + 1\times 10^1 + 4\times 10^0 + 8\times 10^{-2}\)
としても正解。

課題2

\((110.01)_2\)を10進数に変換して下さい。
変換の過程も書いて下さい。
解答
\(\begin{eqnarray} &&(110.01)_2\\ =&&(100)_2 + (10)_2 + (0)_2 + (0.0)_2 + (0.01)_2\\ =&&1\times2^2 + 1\times2^1 + 0\times 2^0 + 0\times 2^{-1} + 1\times 2^{-2}\\ =&&(4)_{10} + (2)_{10} + (0.25)_{10}\\ =&&(6.25)_{10} \end{eqnarray} \)

より、\((6.25)_{10}\) となる。6.25 としても正解。

課題3

\((23.7)_8\)を10進数に変換して下さい。
変換の過程も書いて下さい。
解答
\(\begin{eqnarray} &&(23.7)_8\\ =&&(20)_8 + (3)_8 + (0.7)_8\\ =&&2\times8^1 + 3\times8^0 + 7\times 8^{-1}\\ =&&(16)_{10} + (3)_{10} + (0.875)_{10}\\ =&&(19.875)_{10} \end{eqnarray} \)

より、\((19.875)_{10}\) となる。19.875 としても正解。

課題4

\((\rm{3A.F})_{16}\) を10進数に変換して下さい。
変換の過程も書いて下さい。
解答
\(\begin{eqnarray} &&(\rm{3A.F})_{16}\\ =&&(30)_{16} + (A)_{16} + (\rm{0.F})_{16}\\ =&&3\times16^1 + 10\times16^0 + 15\times 16^{-1}\\ =&&(48)_{10} + (10)_{10} + (0.9375)_{10}\\ =&&(58.9375)_{10} \end{eqnarray} \)

より、\((58.9375)_{10}\) となる。58.9375 としても正解。

課題5

\((183.6875)_{10}\) を2進数に変換してください。
計算過程も書いて下さい。
解答
整数部分は以下のようにして \((10110111)_2\)
 余り 
2 ) 1 8 3
2 ) 9 1 1
2 ) 4 5 1
2 ) 2 2 1
2 ) 1 1 0
2 ) 5 1
2 ) 2 1
2 ) 1 0
0 1

小数部分は以下のようにして \((0.1011)_2\)
整数部分
0.6875\(\times\)2 = 1.375   1
0.375\(\times\)2 = 0.75   0
0.75\(\times\)2 = 1.5   1
0.5\(\times\)2 = 1.0   1

なので、整数部分と小数部分を合わせて
\((183.6875)_{10} = (10110111.1011)_2\)
となる。

課題6

\((183.6875)_{10}\) を8進数に変換してください。
計算過程も書いて下さい。
解答
整数部分は以下のようにして \((267)_8\)
 余り 
8 ) 1 8 3
8 ) 2 2 7
8 ) 2 6
0 2

小数部分は以下のようにして \((0.54)_8\)
整数部分
0.6875\(\times\)8 = 5.5   5
0.5\(\times\)8 = 4.0   4

なので、整数部分と小数部分を合わせて
\((183.6875)_{10} = (267.54)_8\)
となる。

課題7

\((183.6875)_{10}\) を16進数に変換してください。
計算過程も書いて下さい。
解答
整数部分は以下のようにして \(\rm{(B7)_{16}}\)
 余り 
16 ) 1 8 3
16 ) 1 1 7 → \(\rm{(7)_{16}}\)
0 11 → \(\rm{(B)_{16}}\)

小数部分は以下のようにして \(\rm{(0.B)_{16}}\)
整数部分
0.6875\(\times\)16 = 11.0   11 → \(\rm{(B)_{16}}\)

なので、整数部分と小数部分を合わせて
\((183.6875)_{10} = (\rm{B7.B})_{16}\)
となる。

補足

\(2^4=16\) なので、16進数の1桁は2進数の4桁に対応し、\(2^3=8\) なので8進数の1桁は2進数の3桁に対応する (テキスト5ページの表1.1)。
そのため、16進数↔2進数の変換や8進数↔2進数の変換は、10進数への変換のような分解をしなくても、桁ごとに置き換えるだけで済む。
2進数3桁と8進数1桁の対応は
2進数 8進数
\((000)_2\) \((0)_8\)
\((001)_2\) \((1)_8\)
\((010)_2\) \((2)_8\)
\((011)_2\) \((3)_8\)
\((100)_2\) \((4)_8\)
\((101)_2\) \((5)_8\)
\((110)_2\) \((6)_8\)
\((111)_2\) \((7)_8\)
のようになるので、課題5の結果の

\((183.6875)_{10} = (10110111.1011)_2\)
の整数部分を「010」「110」「111」、小数部分を「101」「100」のように小数点を基準に3桁ずつ区切って表の8進数に置き換えれば、

\((10110111.1011)_2 = (267.54)_8\)
となり、課題6の結果と同じものが得られる。

同様に2進数4桁と16進数1桁の対応は
2進数 16進数
\((0000)_2\) \((0)_{16}\)
\((0001)_2\) \((1)_{16}\)
\((0010)_2\) \((2)_{16}\)
\((0011)_2\) \((3)_{16}\)
\((0100)_2\) \((4)_{16}\)
\((0101)_2\) \((5)_{16}\)
\((0110)_2\) \((6)_{16}\)
\((0111)_2\) \((7)_{16}\)
\((1000)_2\) \((8)_{16}\)
\((1001)_2\) \((9)_{16}\)
\((1010)_2\) \((\rm{A})_{16}\)
\((1011)_2\) \((\rm{B})_{16}\)
\((1100)_2\) \((\rm{C})_{16}\)
\((1101)_2\) \((\rm{D})_{16}\)
\((1110)_2\) \((\rm{E})_{16}\)
\((1111)_2\) \((\rm{F})_{16}\)
のようになるので、課題5の結果の

\((183.6875)_{10} = (10110111.1011)_2\)
の整数部分を「1011」「0111」、小数部分を「1011」のように小数点を基準に4桁ずつ区切って表の16進数に置き換えれば、

\((11001101.1101)_2 = (\rm{B7.B})_{16}\)
となり、課題7の結果と同じものが得られる。