大学カタログ

図 2 4 年間の流れ()4 年間の流れ 2

2 年: しくみを知る

プログラムを「書ける」段階から、コンピュータが「なぜ動くのか」を説明できる段階へ進む 1 年です。アルゴリズム、回路、確率・統計に加えて、実験と演習が増えます。

実験室の机で、電子部品を差したボードとランプを前に回路を組む学生たち

ひとことで言うと

自転車に乗れる人が、分解してしくみを知る

自転車に乗れても、ギアやブレーキがどう力を伝えるかを説明できる人は多くありません。2 年では、1 年で「使えた」プログラムやコンピュータを分解して、中で何が起きているのかを確かめます。

01

アルゴリズムとデータ構造: 速く解く手順と、しまい方

アルゴリズムとデータ構造は、多くの大学で 2 年の中心になる科目です。データ構造は、データを「どんな形でしまうか」の工夫です。しまい方しだいで、同じ探しものでも速さが大きく変わります。

たとえば 100 万件の名簿から 1 人を探すとき、先頭から順に見ると、最悪で 100 万回の比較が必要です。名前順に並べておけば、真ん中と比べて範囲を半分にしていく二分探索で、20 回以内に見つかります。

ブラウザの「戻る」ボタンは、最後に入れたものから取り出すスタックで作れます。印刷の順番待ちは、先に入れたものから取り出すキューです。授業では、こうした形を自分でプログラムに書き、速さを測って比べます。

同じ問題でも、データのしまい方を変えるだけで何万倍も速くなることがあります。

図解身近な「データのしまい方」

データ構造
  • スタックブラウザの「戻る」
  • キュー印刷やレジの順番待ち
  • 木パソコンのフォルダの階層
  • ハッシュ表見出し語からすぐに引く辞書
  • グラフ路線図や SNS のつながり

02

論理回路: 0 と 1 で計算する

コンピュータの中では、すべての計算が電気の「ある・ない」、つまり 1 と 0 の組み合わせで行われています。1 と 0 を組み合わせる部品が論理ゲートで、基本は AND・OR・NOT の 3 つです。

AND は「両方 1 のときだけ 1」、OR は「どちらかが 1 なら 1」、NOT は「反対にする」部品です。これらを組み合わせると、2 進数の足し算をする回路が作れます。1 + 1 は 2 進数で 10 になり、桁上がりも回路で表せます。

授業では、回路を紙の上で設計し、入力と出力の組み合わせを全部並べた真理値表で確かめます。京都大学の情報学科の計算機科学コースのように、2 年の実験で論理素子を使って回路の基礎を学ぶ大学もあります。

スマートフォンの計算も、元をたどれば AND・OR・NOT の組み合わせです。

動かしてみるAND・OR・NOT を試す

入力の 0 と 1 を切り替えて、AND・OR・NOT のそれぞれで出力がどう変わるかを確かめてください。

AND出力 0

両方が 1 のときだけ 1

AB出力
000
010
100
111

03

コンピュータアーキテクチャ: CPU が命令を実行するしくみ

コンピュータアーキテクチャは、CPU やメモリをどう組み合わせて、命令を速く実行するかを学ぶ科目です。CPU は「命令を取り出す → 解読する → 実行する」をくり返して動いています。

私たちが書いたプログラムは、最後は CPU が直接読める機械語の命令に変換されます。授業では、足し算やデータの読み書きといった命令が、回路の上でどう実行されるかを順にたどります。

世界初のマイクロプロセッサ Intel 4004 は、日本の電卓メーカー、ビジコンの依頼から生まれました。ビジコンの技術者だった嶋正利さんが CPU の論理設計を担当し、1971 年 3 月に完成しています。電卓のために作られた部品が、いまのパソコンやスマートフォンの CPU の祖先になりました。

図解プログラムから回路までの層

  1. アプリゲームや地図など、人が使うソフト
  2. プログラムPython や C 言語で書いた命令
  3. OSアプリに CPU とメモリを割り当てる
  4. 機械語CPU が直接読める 0 と 1 の命令
  5. CPU の回路命令を取り出し、解読し、実行する
  6. 論理ゲートAND・OR・NOT の組み合わせ
緑色の基板に、Intel 4004 などの黒いチップと電子部品が並ぶビジコンの電卓の基板
国立科学博物館(東京・上野)の展示で撮影された、ビジコンの電卓の基板。世界初のマイクロプロセッサ 4004 が使われています。写真: Daderot(CC0・Wikimedia Commons)

04

確率・統計: ばらつきを数字で読む

確率・統計は、データのばらつきや偶然の大きさを数字で扱う科目です。身近な例が天気予報の降水確率です。気象庁の説明では、18 時から 24 時の降水確率が 20% のとき、1 mm 以上の雨が降る可能性は 100 回中 20 回です。

情報系で確率・統計が欠かせないのは、AI やデータ分析の多くが「もっともらしい答え」を確率で選ぶしくみだからです。迷惑メールの判定や音声の聞き取りも、確率の計算で動いています。

授業では、平均や分散、正規分布から始めて、2 つの結果の差が偶然かどうかを確かめる検定まで学びます。Web サービスが 2 つの画面の案を比べる A/B テストも、この考え方を使っています。

確率・統計は、3 年で学ぶ機械学習とデータ分析の土台になります。

図解A/B テストの流れ(例)

入力申し込みボタンの色を 2 案つくる
  1. 1利用者を半分ずつ A 案と B 案に分ける
  2. 2それぞれ押された割合を数える
  3. 3差が偶然で出る大きさかを検定する
結果偶然では説明しにくい差なら、良い案を採用する

05

実験・演習とレポート

2 年からは、長い時間をかけて手を動かす実験・演習の授業が増えます。京都大学の情報学科の計算機科学コースでは、2 年の前期に C 言語でアルゴリズムとデータ構造の基礎を学びます。後期には、論理素子と論理回路の基礎を実験で確かめます。

実験のあとは、結果をレポートにまとめて提出します。レポートは「目的・方法・結果・考察」の順に書くのが基本で、特に大事なのが考察です。予想と違う結果が出たら、なぜそうなったかを自分の言葉で説明します。

最初は書き直しを求められることもあります。教員や大学院生の TA に質問しながら進められるので、1 人で抱え込まないことが大切です。ここで身につけた書き方は、4 年の卒業論文にそのままつながります。

図解実験レポートの組み立て

  1. 1目的何を確かめる実験か
  2. 2方法使った道具と手順
  3. 3結果表やグラフで事実だけを示す
  4. 4考察なぜそうなったかを説明する
  5. 5参考文献使った本や資料を書く
白いブレッドボードに IC やコンデンサ、配線が差し込まれている様子
部品をはんだ付けせずに差し込んで回路を試せるブレッドボード。回路の実験でよく使われる道具です。写真: BjornR at Dutch Wikipedia(Public domain・Wikimedia Commons)

高校生のうちに試せること

  • ブラウザで論理回路を組む

    CircuitVerse は、ブラウザ上で AND・OR・NOT などのゲートを並べて、回路を動かせる無料のサービスです。2 進数の 1 桁の足し算をする回路(半加算器)に挑戦してみましょう。

    CircuitVerse
  • NAND からコンピュータを作る教材に挑む

    「nand2tetris」は、NAND という 1 種類のゲートから CPU を組み立て、その上で動くソフトまで作っていく公開の教材です。英語ですが、日本語訳の本も出ています。

    nand2tetris
  • サイコロで確率を確かめる

    サイコロを 60 回振って、それぞれの目が出た回数を記録しましょう。ぴったり 10 回ずつにはならないはずです。回数を増やすと割合がどう変わるかを表計算ソフトで調べると、統計の入口に立てます。

「2 年: しくみを知る」に関連するコミュニティ

研究室・部活・サークルなど、全国の 94 件から探せます。

研究室をすべて見る(70 件)

よくある質問

電子回路やハードウェアが苦手でも大丈夫ですか?

論理回路は、電気の知識よりも 0 と 1 の組み合わせを考える科目なので、パズルに近い感覚で学べます。部品を使う実験も手順書に沿って進めるので、はじめて部品にさわる人も少なくありません。

2 年の実験はどれくらい大変ですか?

実験の日に加えて、レポートを書く時間がかかります。大学や科目によって異なりますが、毎週のようにレポートの締め切りがある時期もあります。早めに書き始め、分からない点は次の実験の前に聞いておくと進めやすくなります。

確率・統計は、高校のどの内容とつながりますか?

数学 I の「データの分析」、数学 A の「場合の数と確率」、数学 B の「統計的な推測」がそのまま土台になります。