この章で学ぶこと
基礎理論は 3〜5 問程度出題。計算問題が中心で、2 進数変換と論理演算が頻出です。
学習ゴール
この章を読み終えた時点で、以下ができるようになっていることを目指します。
- 2 進数・10 進数・16 進数の相互変換を使いこなせる
- 論理演算(AND・OR・NOT・XOR)と真理値表を判別できる
- 集合・命題・述語論理の基本を使いこなせる
- 確率・統計(平均・分散・標準偏差)の基本計算ができる
- 情報量(ビット・バイト)と符号化(ASCII・Unicode)の関係を判別できる
1. 離散数学
1.1 基数変換
2 進数・10 進数・16 進数の対応
| 10 進 | 2 進 | 16 進 |
|---|
| 0 | 0000 | 0 |
| 1 | 0001 | 1 |
| 9 | 1001 | 9 |
| 10 | 1010 | A |
| 15 | 1111 | F |
| 16 | 10000 | 10 |
10 進 → 2 進への変換
10 進数を 2 で割り続け、余りを下から並べる。
例: 13 を 2 進に変換
- 13 ÷ 2 = 6 余り 1
- 6 ÷ 2 = 3 余り 0
- 3 ÷ 2 = 1 余り 1
- 1 ÷ 2 = 0 余り 1
→ 1101(2)
2 進 → 16 進への変換
4 桁ごとに区切って 16 進 1 桁に対応させる。
例: 11010101(2) → 1101 0101 → D5(16)
覚え方: 「2 進 4 桁 = 16 進 1 桁」(2⁴=16)。**「16 進 → 2 進」も逆に各桁を 4 桁に展開**するだけ(A=1010, F=1111 等)。試験では基数変換が毎年出るので、最低 0〜15(10 進) ↔ 0000〜1111(2 進) ↔ 0〜F(16 進)の対応はソラで言えるように。
1.2 論理演算
基本の 4 演算子(真を 1、偽を 0):
| 演算 | 記号 | 意味 | 1 と 1 | 1 と 0 | 0 と 0 |
|---|
| AND(論理積) | ∧ | 両方真なら真 | 1 | 0 | 0 |
| OR(論理和) | ∨ | いずれか真なら真 | 1 | 1 | 0 |
| NOT(否定) | ¬ | 逆にする | 0→1, 1→0 | — | — |
| XOR(排他的論理和) | ⊕ | 片方だけ真なら真 | 0 | 1 | 0 |
真理値表(XOR)
AND(論理積)
A ∧ B / 両方真なら真
```text
○○○
○●●○○
○●●●●○
○●●●●○
○○○○
A ∩ B(重なる部分)が答え
```
OR(論理和)
A ∨ B / 片方でも真なら真
```text
●●●
●●●●●
●●●●●●
●●●●●●
●●●●
A ∪ B(どちらかに含まれる)が答え
```
XOR(排他的論理和)
A ⊕ B / 片方だけ真なら真
```text
●●●
●●○○●
●●○○●●
●●○○●●
●●●●
A ⊕ B(重ならない部分のみ)が答え
```
頻出引っかけ: **XOR は「同じなら 0、違えば 1」**と覚える。OR との違いは「両方真の場合 OR=1 / XOR=0」。論理演算の真理値表を覚えるより、ベン図で「どこが塗られるか」をイメージできると応用が効く。
1.3 集合とベン図
- 和集合(A ∪ B) — A か B いずれか
- 積集合(A ∩ B) — A と B 両方
- 差集合(A − B) — A にあり B にない
- 補集合 — 全体 − 対象
2. 応用数学
2.1 確率
- 独立事象 — 互いに影響しない → 確率はかけ算
- 排反事象 — 同時に起きない → 確率はたし算
- 条件付き確率 — 事象 A が起きた条件下での B の確率
例: サイコロを 2 回振って合計が 7 になる確率
- (1,6)(2,5)(3,4)(4,3)(5,2)(6,1) の 6 通り
- 全体 36 通り → 6/36 = 1/6
2.2 統計の基本
- 平均 — 合計 ÷ 個数
- 中央値(メジアン) — 並び替えて真ん中の値
- 最頻値(モード) — 最も頻繁に出る値
- 分散・標準偏差 — ばらつきの指標
- 相関係数 — 2 変数の関係の強さ(−1 〜 +1)
2.3 数値計算
- 誤差 — 計算結果と真の値の差
- 丸め誤差 — 有限桁で表現するときの誤差
- 桁落ち — 近い数の引き算で有効桁数が失われる
- 情報落ち — 大きさの異なる数の加算で小さい方が失われる
3. 情報に関する理論
3.1 情報量
- 1 ビット — 2 通り(0 か 1)を表現
- n ビット — 2^n 通りを表現
| ビット数 | 表現可能数 |
|---|
| 1 ビット | 2 通り |
| 4 ビット | 16 通り |
| 8 ビット(1 バイト) | 256 通り |
| 16 ビット | 65,536 通り |
3.2 文字コード
| コード | 概要 |
|---|
| ASCII | 英数字の基本文字コード(7 ビット) |
| Shift_JIS | 日本語向け(2 バイト) |
| EUC-JP | UNIX 系日本語コード |
| Unicode(UTF-8) | 世界中の文字を統一的に扱う。Web の標準 |
3.3 単位接頭辞
| 接頭辞 | 倍率(10 進) | 倍率(2 進) |
|---|
| キロ(K) | 10^3 | 2^10 = 1,024 |
| メガ(M) | 10^6 | 2^20 |
| ギガ(G) | 10^9 | 2^30 |
| テラ(T) | 10^12 | 2^40 |
| ペタ(P) | 10^15 | 2^50 |
| ミリ(m) | 10^−3 | — |
| マイクロ(μ) | 10^−6 | — |
| ナノ(n) | 10^−9 | — |
| ピコ(p) | 10^−12 | — |
3.4 データの符号化
- パリティチェック — 誤り検出
- ハミング符号 — 誤り訂正
- CRC(巡回冗長検査) — 通信の誤り検出
- ハフマン符号 — 出現頻度で可変長符号化(データ圧縮)
4. オートマトンと形式言語
- オートマトン — 状態と遷移で計算モデル化
- チューリング機械 — 計算理論の基本モデル
- 形式言語 — 文法規則で定義された言語
- BNF(Backus-Naur Form) — 言語の文法を記述する記法
- 正規表現 — 文字列パターンを表す記法
5. 計測・制御に関する理論
5.1 フィードバック制御
- オープンループ制御 — 結果を見ずに操作
- フィードバック制御(クローズドループ) — 結果を測って修正
- フィードフォワード制御 — 外乱を先回りして補正
5.2 センサとアクチュエータ
- センサ — 物理量を電気信号に変換(温度センサ、加速度センサ、光センサ)
- アクチュエータ — 電気信号を動作に変換(モータ、ソレノイド)
- A/D 変換 — アナログ信号をデジタルに変換
- D/A 変換 — デジタル信号をアナログに変換
5.3 AI 関連の基礎理論
機械学習はデータから規則を学習する手法で、**正解データの有無と学習方法**で 3 つに大別されます。
教師あり学習(Supervised)
- 入力 + 正解ラベル(画像 → ネコ、メール → スパム)
- 分類 / 回帰モデルが学習
- 未知データを予測
用途: スパム判定、需要予測、画像認識
教師なし学習(Unsupervised)
- 入力のみ(ラベルなし)顧客の購入履歴、SNS 投稿テキスト
- クラスタリングでパターン・グループを発見
用途: 顧客セグメント分け、異常検知
強化学習(Reinforcement)
- 行動 → 報酬(試行錯誤の繰り返し、環境からフィードバック)
- 報酬最大化方針を学ぶ
用途: 囲碁・将棋 AI、自動運転・ロボット制御
- 機械学習 — データから規則を学習
- 教師あり学習 — 正解ラベル付きデータで学習(分類・回帰)
- 教師なし学習 — ラベルなしでパターン発見(クラスタリング)
- 強化学習 — 報酬で行動を最適化
- ニューラルネットワーク — 脳神経の模倣
- ディープラーニング — ニューラルネットの多層化
覚え方: 「データに正解がある?」 がまず判定軸。あれば**教師あり**、なければ**教師なし or 強化学習。強化学習は「行動 → 報酬**」のループがあるかで判別する。
📋 章末まとめ
最重要ポイント 10 連発
- 基数変換 — 2 で割り続け余りを下から並べる
- 論理演算 4 種 — AND・OR・NOT・XOR の真理値表
- ビットと表現可能数 — 8 ビット = 256 通り
- 接頭辞の倍率 — キロ・メガ・ギガ・テラ
- 誤差の種類 — 丸め・桁落ち・情報落ち
- Unicode(UTF-8) — Web の標準文字コード
- ハフマン符号 — 頻度で可変長化(圧縮)
- フィードバック制御 — 結果を測って修正
- 機械学習の 3 分類 — 教師あり・なし・強化
- 平均・中央値・最頻値 — 代表値の 3 つ
出題傾向のコツ
- **2 進数の計算問題**はほぼ毎年出題
- 論理演算は真理値表で整理
- 確率・統計は基本公式だけ押さえる