未経験歓迎。PRUMは、未経験からの挑戦に本気で向き合い、成長を支える環境を整えています。未経験から本気で成長したい方は、ぜひPRUMへ。

コンピュータの頭の中はどうなっている?2進数・論理演算・統計の基礎を徹底解説

  • URLをコピーしました!

「ITエンジニアになりたいけれど、数学や理屈っぽいの話は苦手……」

「コンピュータが0と1で動いているっていうけど、どうやって写真や動画を表示しているの?」

プログラミングを学び始めると、必ずと言っていいほどこうした「数理的な壁」にぶつかります。しかし、安心してください。コンピュータの仕組みは、実は驚くほどシンプルで、かつ合理的なルールの上に成り立っています。

本稿では、ITの土台となる「4つの柱」を、専門用語を一切使わずにイメージできる例え話を交えてじっくり解説します。この記事を読み終える頃には、あなたの目にはコンピュータが「魔法の箱」ではなく、「超高速で計算する生真面目な努力家」に見えているはずです。

目次

第1章:数字の魔法「2進数」——なぜ0と1だけで全てを表現できるのか?

コンピュータの内部を流れているのは、電気です。電気には「電気が流れている(ON)」か「流れていない(OFF)」かの2つの状態しかありません。この物理的な制約が、すべての始まりです。

1-1. 10進数と2進数の違い

私たちは普段、0から9までの数字を使い、10になると桁が上がる「10進数」を使っています。これは人間が指を10本持っているからだと言われています。

一方、コンピュータは「指が2本(ONかOFFか)」しかありません。そのため、0と1だけで数を数える「2進数」を採用しています。

  • 10進数: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 → (次は桁上がり) 10
  • 2進数: 0, 1 → (次は桁上がり) 10, 11 → (次は桁上がり) 100

2進数では、私たちが「2」と数えるタイミングで、もう「10(いちゼロ)」と桁が上がってしまうのです。

1-2. 人間のための通訳「16進数」

2進数はコンピュータには都合がいいのですが、人間が見ると「11010110…」と長く続きすぎて、何が何だか分かりません。そこで、2進数をギュッと短くまとめた「16進数」がよく使われます。

16進数は、0から9に加え、10〜15を「A, B, C, D, E, F」というアルファベルトで表現します。これを使うと、長い2進数もスッキリと短く書けるため、エンジニアが色の指定(#FFFFFFなど)やメモリのアドレスを確認する際によく登場します。

1-3. 基数変換:数字を書き換えるテクニック

10進数を2進数に直すには、その数字を「2で割り続ける」という作業をします。

例えば、10進数の「13」を2進数にすると……

  1. 13 ÷ 2 = 6 あまり 1
  2. 6 ÷ 2 = 3 あまり 0
  3. 3 ÷ 2 = 1 あまり 1
  4. 1 ÷ 2 = 0 あまり 1下からあまりを並べると「1101」。これが2進数の13です。このように、ルールさえ分かれば数字の世界を自由に行き来できるのです。

第2章:コンピュータの思考回路「論理演算」——「もしも」を判断する仕組み

コンピュータは計算するだけでなく、「判断」もします。「もしAかつBなら、この処理をする」といった条件分岐の基礎にあるのが、数学の「集合」と「論理演算」です。

2-1. 命題とベン図

「これはペンである」のように、正しい(真/1)か間違っている(偽/0)かがハッキリ決まる文を「命題」といいます。これらを円で囲んで視覚化したものが「ベン図」です。エンジニアは頭の中で常にこの図を描きながら、複雑な条件を整理しています。

http://googleusercontent.com/image_content/177(AI 生成)

2-2. 4つの基本ルール(論理回路)

コンピュータが意志決定をするための、4つの代表的なルールを覚えましょう。

  1. 論理積(AND): 「AもBも両方YES」のときだけYES。
    • 例:お腹が空いていて、かつ、お金があるなら、外食する。
  2. 論理和(OR): 「AかB、どちらか一方でもYES」ならYES。
    • 例:雨が降っているか、風が強いなら、外出しない。
  3. 否定(NOT): 「YESをNOに、NOをYESに」ひっくり返す。
    • 例:晴れ「ではない」なら、傘を持つ。
  4. 排他的論理和(XOR): 「AとBが違う結果」のときだけYES。
    • 例:スイッチが2つあり、どちらか片方だけ押されている時に電気がつく。

これらを組み合わせることで、「ユーザー登録済みで、ログインしていて、かつプレミアム会員なら、このボタンを表示する」といった高度な判断が可能になります。

第3章:デジタルデータの単位——目に見えない情報の「重さ」を測る

現実世界の音や光は「アナログ(連続的な変化)」です。これをコンピュータが扱えるように、細かく区切って数字にしたものが「デジタル」です。

3-1. ビット(bit)とバイト(byte)

情報の重さを測る単位を覚えましょう。

  • ビット(bit): 情報の最小単位。2進数の1桁分(0か1)。
  • バイト(byte): 8ビットをひとまとめにしたもの。なぜ8ビットかというと、かつて1文字(アルファベット)を表現するのに8桁あれば十分だったという歴史的な理由があります。

3-2. 単位の接頭語:キロ、メガ、ギガの正体

データが大きくなると、単位の前に「接頭語」がつきます。

  • メガ(M): 100万(10の6乗)
  • ギガ(G): 10億(10の9乗)
  • テラ(T): 1兆(10の12乗)逆に、コンピュータが計算するような一瞬の時間を表す単位もあります。
  • ミリ(m): 1000分の1
  • ナノ(n): 10億分の1

今のスマホのストレージが「128GB」とか、通信速度が「100Mbps」などと言われるのは、この「情報の重さ」や「通信の速さ」を測っているのです。

第4章:データの正体を見抜く「統計学」——膨大な数字から価値を抜き出す

コンピュータが蓄積したデータは、そのままではただの「数字の羅列」です。そこから「最近のトレンドは?」という答えを導き出すために、統計的な考え方が必要になります。

4-1. データの中心を知る(平均値・中央値・最頻値)

「このクラスのテスト結果はどうだった?」と聞かれた時、あなたならどう答えますか?

  • 平均値: 全員を合計して人数で割る。全体を見るのに便利ですが、「1人だけ100万点」という人がいると、数値が跳ね上がる弱点があります。
  • 中央値(メジアン): 全員を並べて、ちょうど真ん中の人の点数。極端な人がいても影響を受けにくい、安定した指標です。
  • 最頻値(モード): 最も人数が多かった点数。

4-2. ばらつきを知る(分散・標準偏差)

平均点だけでは分からないのが「ばらつき」です。

「全員が50点のクラス」と「0点と100点しかいないクラス」は、どちらも平均は50点ですが、様子は全く違いますよね。

この「データの散らばり具合」を数値化したものが「分散」「標準偏差」です。この数値が小さいほど「みんな似たような値」、大きいほど「バラバラな値」であることを意味します。

第5章:IT初心者がこの数理的原理を学ぶ「本当の理由」

ここまで読んで、「やっぱり難しいな」と感じたかもしれません。しかし、これらを学ぶ理由は「計算が得意になるため」ではありません。

  1. AIの仕組みがわかる: 今話題のAI(ディープラーニング)は、実は膨大な「論理演算」と「統計」の積み重ねで動いています。
  2. バグに強くなる: 「なぜかプログラムが動かない」という時、2進数の計算ミスや論理の矛盾(ANDとORの書き間違い)に気づけるようになります。
  3. 効率的な設計ができる: データの単位を理解していれば、スマホのメモリを無駄遣いしない「サクサク動くアプリ」を作ることができます。

結論:数理的原理は、あなたのエンジニア人生を支える「最強の武器」になる

コンピュータの世界は、魔法ではなく、数学と論理という非常にしっかりした土台の上に建っています。

2進数というシンプルな言葉を使い、論理演算というルールで考え、デジタル化という手段で現実を写し取り、統計という知恵で未来を予測する。この一連の流れを理解しているエンジニアは、たとえ新しい技術や流行のプログラミング言語が登場しても、決して道に迷うことはありません。

まずは「0と1の世界」を面白がること。そして、目の前のアプリやサービスがどんな論理で動いているのかを想像してみること。その好奇心こそが、あなたを一流のエンジニアへと導く、最も大切なエネルギーになります。

この記事が気に入ったら
いいねしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

未経験歓迎。PRUMは、これから挑戦する人の一歩を支え、技術も人間力も育てる会社です。未経験からエンジニアを目指したい方は、ぜひチェックしてください。

目次