なぜコンピュータの中身を学ぶのか:見えない仕組みを「見える」化する旅
スマホもクラウドも生成 AI も、すべての土台に「2 進数で動く回路」がある。中高生の情報 I/II 試験対策にも、社会人の教養にも、AI 時代を生きる基礎としても役立つ CS 基礎ハンドブックの導入。構成案 の構成案。
2 進数の世界:なぜコンピュータは 0 と 1 だけで動くのか
10 進数の 9 が 2 進数では 1001。なぜそんな書き方をするのか、トランジスタの ON/OFF と電圧の話、Python での変換実験、ビット演算まで。情報 I の出題範囲を実演で。
文字コード:なぜ「文字化け」が起きるのか
「あ」がコンピュータでは E3 81 82 (UTF-8) や 82 A0 (Shift_JIS)。同じ文字でも符号化方法が違うと別物。文字コードの歴史と、現代では UTF-8 が標準になった理由、Python での実験まで。
CPU の仕組み:演算装置・レジスタ・命令サイクル
CPU はクロックに合わせて「フェッチ→デコード→実行」を毎秒数十億回繰り返している。レジスタ・ALU・キャッシュの役割、x86 と ARM の違い、Python では見えない低レベルの世界へ。
メモリと記憶階層:レジスタ・キャッシュ・RAM・SSD
CPU の隣にあるレジスタ (1ns) から、ハードディスク (10ms) まで、コンピュータの記憶装置は 1000 万倍の速度差がある。なぜ階層構造になっているか、各層の役割と容量・速度のトレードオフ。
OS の役割:プロセス・メモリ管理・ファイルシステム
Windows / macOS / Linux の OS は、複数のアプリが同時に動くように資源を分け合う仕組みを提供している。プロセス・スレッド・仮想メモリ・ファイルシステム・カーネルとユーザー空間の話。
ネットワークの基本:IP・TCP・HTTP・DNS の連携
ブラウザに「google.com」と入力してから画面が出るまで、コンピュータの中で何が起きているか。DNS で IP アドレス取得、TCP で接続、HTTP でデータ取得、HTTPS で暗号化、までを 1 本でつなぐ。
データ構造の基礎:配列・リスト・ハッシュ・ツリー
適切なデータ構造を選ぶだけで、プログラムは 1000 倍速くなることがある。配列・連結リスト・ハッシュテーブル・ツリーの 4 つを、Python での実装と計算量で見比べる。
アルゴリズムの基礎:探索・ソートと計算量
線形探索 vs 二分探索、バブルソート vs クイックソート vs マージソート。同じ「探す」「並べる」でも、賢い手順を選べば数千倍速くなる。計算量と実装パターンを Python で見る。
暗号と認証:共通鍵・公開鍵・ハッシュの使い分け
HTTPS の中身、なぜ通信は盗聴されないか、パスワードはどう保管すべきか。古代ローマのシーザー暗号から現代の RSA / 楕円曲線暗号まで、Python で動かしながら理解する。
データベースの基礎:SQL と関係モデルの考え方
Excel との違い、関係モデルの 3 大要素 (テーブル・主キー・外部キー)、SQL の基本 4 句 (SELECT/INSERT/UPDATE/DELETE)、トランザクションと ACID。Python と SQLite で実演。
AI 時代の CS 基礎:なぜ今も学ぶ価値があるか
ChatGPT がコードを書いてくれる時代に、CS の基礎を学ぶ意味は?答えは「AI と協業するため」「AI の限界を見抜くため」「キャリアの選択肢を広げるため」。本シリーズの集大成。
まずは、現状を聞かせてください。
要件が固まっていなくて大丈夫です。現状診断と方針提案までを無料でお手伝いします。