テクノロジ系
基礎理論 重点教科書
基礎理論は計算問題が中心で、解き方のパターンを知っているかどうかで差がつきます。2進数と論理演算は手を動かして慣れるのが最短です。データ構造とアルゴリズムは「アルゴリズムとプログラミング」の教科書で扱います。
1. 数と表現・集合・論理演算
コンピュータの中では、文字も画像も音楽も、すべて「0と1」という2種類の数字だけで表されています。なぜそんな不便そうな仕組みを使っているのか、そしてその0と1をどう組み合わせて計算しているのかを見ていきましょう。
なぜ0と1しか使わないのか——2進数の表現
コンピュータの内部は、電気を「流す」か「流さない」かのスイッチの集まりでできています。電球のスイッチがON(点灯)かOFF(消灯)の2つの状態しか持たないのと同じように、コンピュータの回路も「電気が流れている状態」と「流れていない状態」の2つしか区別できません。この2つの状態に「1」と「0」を対応させたものが2進数です。
私たちが普段使っている10進数は、0から9までの10種類の数字を使い、10になると桁が繰り上がります。これに対して2進数は、0と1の2種類しか使わず、2になった瞬間に桁が繰り上がります。たとえば10進数の「2」は2進数では「10」、10進数の「3」は2進数では「11」と表されます。
10進数と2進数を相互に変換する方法(基数変換)も、慣れれば難しくありません。10進数を2進数に変換するときは、その数を2で割り続けて余りを下から順に並べます。逆に2進数を10進数に変換するときは、それぞれの桁に「2の何乗」という重みをかけて足し合わせます。
たとえば10進数の「13」を2進数に変換してみましょう。13を2で割ると6余り1、6を2で割ると3余り0、3を2で割ると1余り1、1を2で割ると0余り1となり、余りを下から順に並べると「1101」になります。逆に2進数の「1101」を10進数に戻すには、右の桁から順に2の0乗(1)・2の1乗(2)・2の2乗(4)・2の3乗(8)という重みをかけます。1×8+1×4+0×2+1×1=13となり、たしかに元の数に戻ることが確認できます。試験でこの手の変換問題を解くときは、こうした桁ごとの「重み」を書き出しながら計算すると、ミスが減ります。
2進数同士の加算や減算も、10進数と同じ考え方で、桁が2になったら繰り上がるというルールに沿って計算します。ただし、コンピュータには「表現できる数値の範囲」に限りがあります。使える桁数(ビット数)が決まっているため、その範囲を超える大きな数は正しく表現できません。これは、レジのお釣り表示が桁数の上限を超えるとエラーになるようなものだと考えるとイメージしやすいでしょう。
「集合」というグループ分けの考え方
集合とは、ある条件に当てはまるものの集まりのことです。たとえば「クラスの中で犬を飼っている人」という集合や、「1から10までの偶数」という集合が考えられます。集合を使うと、複数の条件を組み合わせた「命題」(正しいか間違っているかがはっきり決まる文)を整理しやすくなります。
集合の関係を目で見てわかりやすくする図がベン図です。円を重ねて描き、重なった部分が「両方の条件に当てはまるもの」を表します。たとえば「犬を飼っている人」の円と「猫を飼っている人」の円を重ねると、重なった部分は「犬も猫も両方飼っている人」を示します。
また、ある条件が成り立つかどうかを、すべてのパターンについて整理した表を真理値表と呼びます。「晴れかつ休日なら出かける」というような条件を、すべての組み合わせ(晴れ・休日/晴れ・平日/雨・休日/雨・平日)について「出かけるか出かけないか」を一覧にしたものをイメージするとよいでしょう。
論理演算——条件の組み合わせ方
集合や命題を組み合わせる際のルールが論理演算です。代表的なものにAND(かつ)、OR(または)、NOT(否定)、XOR(排他的論理和)があります。
ANDは「両方とも当てはまる場合だけ真(正しい)」となる演算です。ORは「どちらか一方でも当てはまれば真」となる演算です。NOTは「当てはまらない」という条件を反転させる演算です。XORはやや特殊で、「どちらか一方だけが当てはまる場合に真、両方当てはまる、または両方当てはまらない場合は偽」となる演算です。
これらは実は、私たちが日常的に使う「検索の絞り込み」でおなじみの考え方です。通販サイトで「赤色」と「Sサイズ」の両方にチェックを入れて絞り込む操作はANDにあたり、「赤色または青色」のどちらかで探す操作はORにあたります。特定の条件を除外して探す「セール品を除く」という絞り込みはNOTの考え方です。普段何気なく使っている検索フィルターの裏側には、こうした論理演算の考え方が使われているのです。
XORは少しとっつきにくいので、具体的な場面で確認してみましょう。2つのスイッチがあり、どちらか一方だけがONのときに電気がつく配線を想像してください(階段の上と下、両方にスイッチがある照明のイメージです)。両方OFFなら当然消えたまま、片方だけONにすれば点灯し、両方ONにすると再び消えてしまう——これがXORの動きです。「両方当てはまる」場合は含めず「どちらか片方だけ」を取り出したいときに使われる演算だと覚えておくと、ANDやORとの違いが整理しやすくなります。

2. 確率と統計・数値計算
データを集めて分析し、そこから意味のある情報を取り出す——これが確率と統計の役割です。データ分析やAIが重視される現代では、この分野の基本的な考え方を知っておくことがますます重要になっています。
確率の考え方——順列と組合せ
確率とは、あることが起こりやすさを数値で表したものです。確率を正確に計算するためには、まず「何通りの並べ方・選び方があるか」を数える必要があり、これが順列と組合せの考え方です。
順列は「順番を区別して並べる」場合の数え方です。たとえば3人の中から2人を選んで1位・2位を決める場合、誰が1位で誰が2位かという順番が関係してきます。一方、組合せは「順番を区別せずに選ぶ」場合の数え方です。3人の中から2人を単に選ぶだけで、順位をつけない場合がこれにあたります。じゃんけんで「誰と誰が対戦するか」を決める場面は組合せの考え方、リレーの走順を決める場面は順列の考え方、とイメージすると区別しやすいでしょう。
統計の基本——データの特徴をつかむ
大量のデータをそのまま眺めても全体像はつかめません。そこで、データをいくつかの区間に分けて、それぞれの区間にいくつのデータが含まれるかをまとめた度数分布表や、それをグラフにしたヒストグラムが使われます。
データ全体の特徴を1つの数字で表す「代表値」にはいくつか種類があります。平均値はすべてのデータを合計して個数で割った値、中央値(メジアン)はデータを大きさの順に並べたときにちょうど真ん中にくる値、最頻値(モード)は最も多く出現する値です。この3つは似ているようで、使い分けが重要です。たとえばあるクラスのテストで、ほとんどの生徒が60点前後なのに1人だけ100点満点の天才がいた場合、平均値はその1人に引っ張られて実態より高く出てしまいますが、中央値はそうした極端な値の影響を受けにくいという特徴があります。
データのばらつき具合を表すのが分散や標準偏差です。データが平均値からどれくらい離れているかを示す指標で、値が大きいほどデータがばらついていることを意味します。テストの点数を平均50・標準偏差10という基準に変換し直したものが偏差値で、自分の点数が集団の中でどのくらいの位置にあるかを比較しやすくするための工夫です。
2つのデータの関係の強さを表す相関係数という指標もあります。たとえば「勉強時間」と「テストの点数」のように、一方が増えるともう一方も増える傾向があるとき、相関があると言います。この関係を説明する側のデータを説明変数、説明される側のデータを目的変数と呼びます。データから将来の値を予測する手法を回帰分析、複数のデータ同士の関係の強さを調べる手法を相関分析と呼び、集めたデータから母集団全体の特徴を推し量ることを推定、ある仮説が正しいかどうかを統計的に検証する手続きを仮説検定と呼びます。
数値計算・数値解析と誤差
データを分析する際には、データの集計(和や平均を求める)、データの並べ替え、ランキングの作成といった基本的な処理がよく行われます。より高度な分析では、複数の変数を扱う線形代数、方向と大きさを持つ量であるベクトル、数を格子状に並べた行列といった数学の道具が使われます。また、変化の割合を調べる微分と、積み重なった量を求める積分(1変数関数の微分と積分)も、データ分析の理論的な土台になっています。
データを扱う際には、そのデータがどのような性質を持つかを表す尺度の区別も重要です。名前や種類を分類するだけの名義尺度(血液型など)、順序に意味はあるが間隔には意味がない順序尺度(順位など)、目盛りの間隔に意味がある間隔尺度(気温など)、さらに0が「何もない」ことを意味する比例尺度(重さなど)という4種類があります。
データを比較する際には、条件をそろえた比較(同じ条件のもとで比べる)や、処理の前後での比較(施策を実施する前と後を比べる)が基本です。また、測定には必ず本当の値とのズレである誤差が生じることも忘れてはいけません。
グラフ理論・待ち行列・最適化問題
ものごとのつながりを図で表す考え方がグラフ理論です。ここでの「グラフ」は棒グラフや折れ線グラフのことではなく、点と線でつながりを表した図を指します。点のことを頂点(ノード)、点と点を結ぶ線のことを辺(エッジ)と呼びます。矢印のように向きがある有向グラフ(一方通行の道路のようなもの)と、向きのない無向グラフ(双方向に行き来できる道路のようなもの)があります。路線図や、SNSでの友達同士のつながりを図にしたものは、身近なグラフ理論の応用例です。
行列やレジで順番待ちの列ができる現象を数理的に扱う考え方が待ち行列です。スーパーのレジに並ぶ列の長さや待ち時間を予測する際に使われる考え方で、細かい理論的な計算式までは問われませんが、「待ち行列という考え方があること」を押さえておきましょう。
限られた条件の中で、最も良い結果を得る方法を探すのが最適化問題です。たとえば「決まった予算の中で最大の効果を得る広告の出し方」を考えるような場面が、最適化問題の身近な例です。限られた時間・お金・人手といった「制約」の中で、目的(売上を最大にする、コストを最小にするなど)を達成する組み合わせを探す、という考え方はビジネスの現場でも幅広く応用されています。

3. 情報量・デジタル化・AI技術
コンピュータが扱う「情報」は、どのように数えられ、どのように0と1のデータに変換され、そして近年話題のAIはどんな仕組みで動いているのでしょうか。この章ではその基本を見ていきます。
情報量の単位——ビットとバイト
コンピュータが扱う情報の量を測る最小の単位がビットです。1ビットは0か1のどちらか一方を表せる情報量で、これが8個集まったものがバイトです。ノートの1マスに1文字書けるとすれば、8マス分のスペースでようやく1つのまとまった情報(バイト)が表せる、とイメージするとよいでしょう。
情報量が大きくなると、k(キロ)・M(メガ)・G(ギガ)・T(テラ)・P(ペタ)といった接頭語を使って表します。反対にとても小さい量を表すときにはm(ミリ)・μ(マイクロ)・n(ナノ)・p(ピコ)という接頭語が使われます。スマホの容量表示で「128GB」というのを見たことがある人も多いでしょう。
アナログをデジタルに変える——デジタル化の仕組み
私たちの身の回りにある音や光は、本来は途切れることのない連続的な変化、つまりアナログの情報です。これをコンピュータで扱えるようにするには、飛び飛びの数値の並びであるデジタルの情報に変換する必要があります。この変換をA/D変換と呼び、そこには3つの段階があります。
まず、連続した波を一定の間隔で区切って数値として取り出す標本化(サンプリング)を行います。次に、取り出した値を決まった段階(目盛り)のどれかに当てはめる量子化を行います。最後に、その値を0と1の並びに変換する符号化を行います。音楽CDの音がデジタルデータとして保存できるのは、この3段階の処理のおかげです。
文字をどう表すか——文字コード
コンピュータの内部では、文字も数値として表現されています。「あ」や「A」といった1文字1文字に、あらかじめ決められた番号が割り当てられているのです。この対応表を文字コードと呼び、日本語向けのJISコードやシフトJISコード、世界中の文字を統一的に扱えるUnicodeなどが代表的です。異なる文字コードを使うシステム同士でデータをやり取りすると、文字化けが起きることがあるのは、この対応表の違いが原因です。
論理的な記述——文章を記号で表す
自然な日本語や英語の文章を、あいまいさのない記号を用いて論理的に表現する方法もあります。「すべての~は~である」といった文を記号で厳密に表す考え方を述語論理と呼びます。また、正しいとされる前提から必ず正しい結論を導く推論の仕方を演繹推論、複数の具体的な事例から一般的な法則を導き出す推論の仕方を帰納推論と呼びます。たとえば「すべての人間は死ぬ。ソクラテスは人間である。よってソクラテスは死ぬ」という論理展開は演繹推論、「これまで見た白鳥はすべて白かった。だから白鳥は白い」という考え方は帰納推論の例です。
AI(人工知能)の技術
近年、私たちの生活に急速に浸透しているのがAI(Artificial Intelligence:人工知能)の技術です。文章を理解したり生成したりする自然言語処理、音声や画像を認識・合成する技術など、応用範囲は非常に広くなっています。
AIの実現方法は、大きく発展してきました。最初期は、人間があらかじめ「こういう条件のときはこう判断する」というルールを1つずつ書き込むルールベースの方式が中心でした。しかし、ルールを人間がすべて書くには限界があります。そこで登場したのが、データからパターンを自動的に学習する機械学習です。機械学習には、正解付きのデータから学ぶ教師あり学習、正解のないデータからパターンを見つけ出す教師なし学習、行動の結果得られる報酬をもとに学習する強化学習という3つの方式があります。
機械学習をさらに発展させたのが、人間の脳の仕組みを参考にしたニューラルネットワークです。判断の際に、あるデータのどの特徴に注目するかを表す特徴量を、以前は人間が設計する必要がありましたが、ニューラルネットワークを何層も重ねたディープラーニングでは、この特徴量そのものをコンピュータが自動的に学習できるようになりました。学習の過程では、予測結果と正解のズレを逆向きにたどって調整するバックプロパゲーションという仕組みや、信号をどう伝えるかを決める活性化関数が使われます。学習データに合わせすぎて、新しいデータへの対応力が落ちてしまう過学習という落とし穴にも注意が必要です。
近年のAI開発では、あらかじめ大量のデータで基礎的な力を身につけさせる事前学習を行い、その後に特定の目的に合わせて調整するファインチューニングや、ある分野で学んだ知識を別の分野に応用する転移学習がよく使われます。画像認識に強い畳み込みニューラルネットワーク(CNN)、時系列データ(時間とともに変化するデータ)の扱いに強いリカレントニューラルネットワーク(RNN)、本物そっくりの画像や文章を作り出す敵対的生成ネットワーク(GAN)なども代表的な技術です。
そして、いま多くの人が実際に使っている生成AIチャットの裏側にあるのが大規模言語モデル(LLM)です。膨大な文章データを事前学習した基盤モデルをもとに、私たちが入力する指示文の書き方を工夫して望む答えを引き出す技術をプロンプトエンジニアリングと呼びます。皆さんが普段AIチャットに質問を投げかけるとき、実はこうした技術の積み重ねの上でAIが答えを返してくれているのです。
このように、AI技術はルールベースから機械学習、そしてディープラーニングへと発展し、さらに事前学習・ファインチューニング・転移学習といった学習の工夫が重ねられることで、現在の生成AIのような幅広い応用が可能になりました。試験でこれらの用語が出題される際は、単に暗記するのではなく「どういう順番で技術が発展してきたのか」「それぞれの手法がどんな課題を解決したのか」という流れで理解すると、記憶に定着しやすくなります。

本番での解き方
- ✓2進数の計算は暗算せず、必ず桁の重みを書き出してから足す
- ✓論理演算は記号より真理値表。迷ったら0と1の全パターンを書く(2変数なら4行だけ)
- ✓平均値・中央値・最頻値は「外れ値に強いのは中央値」という性質の判定問題が頻出
- ✓AI技術は「ルールベース→機械学習→ディープラーニング」の発展順を軸に整理すると覚えやすい