基本情報技術者試験 基礎理論(数学・基礎)の頻出ポイント完全解説
基礎理論は基本情報技術者試験の土台となる分野で、コンピュータが数値をどう扱うかを学びます。 特に基数変換(2進数・16進数)と2の補数は計算問題として頻出で、 解き方のパターンを覚えれば確実に得点できます。このページで要点を整理しましょう。
1. 基数変換(2進数・10進数・16進数)
2進数 → 10進数
2進数は右から順に「1の位、2の位、4の位、8の位…」と桁の重みが2倍ずつ増えます。 例えば「1011」なら、1×8 + 0×4 + 1×2 + 1×1 = 11 となります。 各桁を「その重みを足すかどうかのスイッチ」と考えると分かりやすいです。
10進数 → 2進数
10進数を2で割り続け、余りを下から並べると2進数になります。 小数の場合は「2をかけて整数部を取り出す」を繰り返します。
16進数
16進数は0〜9とA〜F(A=10, B=11, C=12, D=13, E=14, F=15)で表します。 2進数4桁が16進数1桁に対応するため、相互変換が簡単です。 例: 16進数「2A」は 2×16 + 10 = 42。
2. 2の補数と負の数
コンピュータは引き算回路を持たず、「足し算だけで引き算」を行います。そのために負の数を表すのが2の補数です。 作り方は次の2ステップです。
- 全ビットを反転する(0と1を入れ替える)
- 1を加える
これにより、A − B を A + (−B) として計算できます。 「2の補数=全ビット反転して1を足す」は確実に覚えましょう。
3. 論理演算とド・モルガンの法則
基本の論理演算は AND(論理積)、OR(論理和)、NOT(否定)、XOR(排他的論理和)です。
| 演算 | 意味 | 例 |
|---|---|---|
| AND | 両方が1なら1 | 1 AND 1 = 1 |
| OR | どちらかが1なら1 | 1 OR 0 = 1 |
| NOT | 反転 | NOT 1 = 0 |
| XOR | 異なれば1 | 1 XOR 1 = 0 |
ド・モルガンの法則は「NOTを中に入れるとANDとORが入れ替わる」と覚えます。
NOT(A AND B) = (NOT A) OR (NOT B)
NOT(A OR B) = (NOT A) AND (NOT B)
4. 浮動小数点と誤差
小数を扱う浮動小数点数は「符号・指数・仮数」の3パートで構成されます(IEEE 754単精度は1+8+23=32ビット)。 限られたビット数で表すため、計算には誤差が生じます。
- 桁落ち:ほぼ等しい数同士の引き算で有効桁が大きく失われる
- 情報落ち:絶対値が大きく異なる数の加減算で小さい数が無視される
- 丸め誤差:表現できる桁数を超えた部分を四捨五入等で処理することで生じる
5. 例題で確認
よくある質問(FAQ)
Q. 基数変換が苦手です。どう練習すればいい?
A. 2の累乗(1, 2, 4, 8, 16, 32, 64, 128…)を暗記し、変換問題を数多く解くのが近道です。本サイトの「基礎城」で反復演習できます。
Q. 2の補数の意味が分かりません。
A. 「マイナスの数を足し算で表すための仕組み」と理解しましょう。手順(反転→+1)を覚えれば計算問題は解けます。
Q. 誤差の種類が紛らわしいです。
A. 「桁落ち=近い数の引き算」「情報落ち=大小差が大きい数の加減算」と、原因とセットで覚えると区別できます。