B01 2進数 努力目標 理解する 技術士試験の問題からは必要最小限の引用にとどめる。(問題)が記されている部分はその引用である。 問題および解答は日本技術士会のホームページより必要に応じて入手してください。 技術士第一次試験の問題 問題番号が赤字のものは、ボーナス問題 H27年 1−2−3 H25年 1−2−1 H25年 1−2−5 H23年 1−2−1 H22年 1−2−1 H21年 1−2−3 H21年 1−2−4 H20年 1−2−2 H19年 1−2−1 H19年 1−2−5 同じ問題は、 H27年 1−2−3 H19年 1−2−5 H25年 1−2−1 H21年 1−2−4 H19年 1−2−1 H25年 1−2−5 H21年 1−2−3 H20年 1−2−2 2進数は位が一つ上がるごとに数値の大きさが倍になる。逆に位が一つ下がるごとに数値の大きさは1/2となる。2進数は0と1で表記され、10進数との関係は次表のようになる。
たとえば、2進数で1010は10進数では8+2=10、2進数で0.101は10進数では0.5+0.125=0.625となる。N進数では、2進数の2の部分をNとすればよい。 計算による10進数とN進数の変換は次のようにする。たとえば、8進数の111があれば、これを10進数とするには、 1118=1×82+1×81+1×80=64+8+1=73 逆に、10進数の73を8進数とするためには下図左側の計算をして、余りを下から読めば、8進数では111(82+81+80=64+8+1=73))となる。 10進数の0.7を8進数に変換するには下図右側の計算をして、得られた整数部分の数字を上から読んでいくと、0.5468となる。 2進数と10進数の関係を表に示した。 今求めた8進数の0.546は10進数では、 5×0.125+4×0.015625+6×0.0019531=0.699219≒0.7 となる。
H25年 1−2−5 正答: A (解答) 上に示した方法で、10進数の0.85を2進数に直すと、その下4桁までは0.1101となる。 (ア)を0.5倍するということは、2で割るということなので、(ア)が1桁さがり、0.01101となる。 (イ)を10進数に変換するということは、元の10進数で0.85/2であるので、0.425となりそうであるが、そうはならない。 確認 2進数の0.01は10進数の0.25、同じく0.001は0.125、これを合計すると2進数の0.0110は10進数の0.375。ところが2進数の0.1101は0.5+0.25+0.0625≒0.81となり、元の10進数数字0.85よりも小さくなっている。2進数計算は0.1101・・・・とまだまだ続くところを、下4桁までの計算で止めたので、切り捨てによる誤差を含んだことになる。 H27年 T−2−3 正答: B (解答) 10進数の1/10を表す2進数を上の方法に従ってもとめると、0.00011・・・となる。 H23年 T−2−1 正答: C (解答) 解答が4つの部分に分かれていることからもわかるように、1バイトは8ビットである。従って、 11000000/10101000/00011111/10101100 この2進数を10進数に変換すると、 192/168/31/172 H22年 1−2−1 正答: @ (解答) n進数で成立している計算式「132−54=34」が何進数の計算であるかの確認をする。たとえば、これが10進数の計算とすると、「78=34」となり、10進数表記ではないことがわかる。n進数のnを種々変化させて等式が成り立つかの確認をすることになる。 答えは6進数で、右辺左辺共に10進数の数字に換算して比較すると、左辺は1×62+3×6+2−5×6−4=22、右辺は3×6+4=22、と等しくなる。 H21年 T−2−4 正答: C (解答) 基本から考える。 1ビット (0、1)の2通り 2ビット (00、01、10、11)の4通り 3ビット (000、001、010、100、101、110、111)の8通り 2nビット通りである。 25=32でアルファベットが表現でき、28=256で0から255まで256個の整数が表現でき、 211=2048で1945文字の漢字が表現できる。 H19年 Tー2−5 正答: B (解答) 10進数の1/7は0.1428571。これを上の方法で2進数に変換すると、0.001001・・・・となる。 H25年 T−2−1 正答: C (解答) 28/24=24=16 H19年 T−2−1 正答: D (解答) 210/25=32 問題一覧表へ戻る |