応用情報処理技術者試験の対策サイトです。 応用情報処理技術者試験の午前問題を中心とした基礎用語の解説を中心に掲載します。書き始めたばかりなので、内容はまだまだ不十分です。
カテゴリ:

1.基礎理論 > 1.1 2進数をはじめとした基数

基数とは
基数とは、桁が上がる基準となる数のことです。この言葉だけ聞くとよくわからないでしょうが、我々が日頃の買い物などで使っているのは10進数で、この基数は10です。また、2進数の基数は2で、16進数の基数は16です。

たとえば、2という数字を例に考えます。
10進数では「2」と表現され、桁が変化しません(つまり1桁)。ですが、2進数で2を表現すると10になり(桁が上がります)。
同様に、15は10進数では15となって2桁ですが、16進数ではFです。16に満たないので桁が上がらず1桁です。

まあ、基数という言葉の意味をあまり深く考えず、「何進数なのか?」と置き換えて考えればいいでしょう。

基数変換の方法(10進数に変換)
2進数を10進数にする場合や、16進数を2進数にする方法を解説します。
言葉で解説するよりも、実際の変換を見てもらった方が分かりやすいと思います。

基数変換
10進数で解説します。このように、各位の値(1の位が8、10の位が2)に、基数の累乗(1の位は10の0乗、10の位は10の1乗)をかけて、足したものが10進数の値になります。

基数変換(10進数を変換)
では、次に10進数を2進数や16進数に変える方法を説明します。
考え方は上の図と同じです。たとえば、上の変換の小数点を無くしたものですが、5という数字や298という数字は、以下の式で表されます。なので、2進数では5、16進数では12Aとなります。
kisuu
応用情報技術者試験を勉強する成子
 
でも、その計算をどうやるのですか?
多くの方がやっている方法ですが、以下のように、基数で値を割っていきます。これ以上割れなくなったらおしまいで、その余りを逆から見て行くと、進数変換ができます。下図のように、10進数の5は2進数で101、298は12Aになることが分かります。
2


基数変換(10進数を変換:小数)
10進数の0.375を2進数にするにはどうしたらいいのでしょうか。
2進数の小数を復習しましょう。
2
このように、2進数で表された小数は、2倍していくと1になります。また、上記の小数点第3位のところをみてもらうとわかるように、小数点第三位のところが1であれば、2を3倍すると1になります。

では、2倍していきましょう。
0.375 2倍 ⇒0.75  1にならないので、小数点第1位は0
     さらに2倍 ⇒1.5 1になったので、小数点第2位は1
     残りの0.5を2倍 ⇒1 1になったので、小数点第3位は1

2進数表記で0.011となります。

過去問(H20秋SW午前問1)を見てみましょう。
問1 基数変換に関する記述のうち,適切なものはどれか。
ア 2進数の有限小数は,10進数にしても必ず有限小数になる。
イ 8進数の有限小数は,2進数にすると有限小数にならないこともある。
ウ 8進数の有限小数は,10進数にすると有限小数にならないこともある。
エ 10進数の有限小数は,8進数にしても必ず有限小数になる。
正解はアです。

主な項目として、以下があります。
・2進数をはじめとした基数(、BCD、無限小数)
・数値(精度を含む)(負の数、、桁落ち)
・集合
・論理演算(、排他的論理和、カルノー図)
・待ち行列(M/M/1)
・形式言語(BNF、逆ポーランド、オートマトン)
・符合理論(量子化,標本化,A/D 変換などの符号化、ハフマン符号)
・通信に関する理論(CRC、ハミング符号、パリティチェック)
・計測・制御に関する理論(ジャイロセンサ)
【予備】・文字の表現(Unicode)

■H28春
問2 10進数123を,英字A〜Zを用いた26進数で表したものはどれか。ここでA=0,B=1,…,Z=25とする。
ア BCD
イ DCB
ウ ET
エ TE
【正解】ウ
基数である26で割り算をします。
すると4(=E)と19(=T)であることが分かります。
1

■H27春
問2 2桁の2進数x1x2が表す整数をxとする。2進数x2x1が表す整数を,xの式で表したものはどれか。ここで,int(r)は非負の実数rの小数点以下を切り捨てた整数を表す。
1-1H27-1
【正解】ウ

■H25春
問1 αを正の整数とし,b=α2とする。αを2進数で表現するとnビットであるとき,bを2進数で表現すると高々何ビットになるか。
ア n+1   イ 2n   ウ n2   エ 2n

【正解】イ

スポンサードリンク

このページのトップヘ