目次 - Lesson2

Lesson2

コンピュータと情報処理

Lesson 2Chapter 1
学習の目標

このレッスンでは、コンピュータについて基礎から学びます。コンピュータの中身を理解することで、その仕組みや特徴を深く知ることを目指します。

コンピュータは、ハードウェアとソフトウェアで構成されます。それぞれの役割や構成について詳しく説明します。

さらに、プログラムとは何か、どのように動くのか、コンピュータ内部でのデータ処理の仕組みについても学びます。なぜコンピュータは2進数を使うのか、それがどのように文字や画像を表現するのかを理解することで、コンピュータの本質をつかむことができます。

このレッスンを通じて、コンピュータの仕組みに対する理解を深め、正しいイメージを持つことができるようになることを目指しましょう。

本レッスンの主な内容

  • コンピュータとは
  • CPU(中央処理装置)
  • 記憶装置
  • 入力装置と出力装置
  • その他のハードウェア
  • OS:ハードとソフトを繋ぐ基盤
  • アプリケーション
  • プログラムとは何か、どのように動くのか
  • コンピュータ内部でのデータ処理

本レッスンのゴール

コンピュータの中身について正しいイメージを持っていること

本レッスンの前提条件

  • ビジネスパーソンに必要なITスキルを把握していること(レッスン1)

Lesson 2Chapter 2
コンピュータとは

コンピュータ とは、あらゆる種類の情報を受け取り、その情報に対して計算や分析、変換といった「処理」を行ない、その結果を役立つ形で示してくれる特別な機械です。

ここでいう「情報」とは、私たちが日常生活で扱う文字や数字、音声、画像、動画など、かたちの有無を問わず、さまざまな形で存在するデータのことを指します。

コンピュータはこの情報を保存しておくだけではなく、計算によって答えを導き出したり、複数の情報を比較して整理したり、必要に応じて別の表現形式へ変換したりします。

たとえば、計算機としてのコンピュータは、複雑な数値計算を正確かつ高速に行ない、瞬時に結果を出すことができます。さらに数字を扱うだけでなく、文章を書いたり、インターネットを通して世界中の情報を検索したりと、極めて多彩な活動を行ないます。つまり、コンピュータは「情報をさまざまなかたちに処理する」ことにより、人々の仕事や生活を支える幅広い機能を実現しているのです。

Lesson 2Chapter 2.1
コンピュータの身近な例

コンピュータと聞くと、デスクトップパソコンやノートパソコンが思い浮かびます。しかし、それだけがコンピュータではありません。私たちが普段何気なく使っているスマートフォンは、小型でありながら高性能なコンピュータの一種です。また、家電製品や自動車、オフィス機器、工場の生産ラインに至るまで、目に見えるかたちではなくとも、内部には必ずといっていいほど小さなコンピュータチップが組み込まれています。

いくつか例をあげましょう。

  • パソコン:オフィスワークの中心的存在。表計算、資料作成、Web会議、メール、グループウェアなどを利用します。
  • ノートパソコン・タブレット:持ち運びしやすく、出張先やテレワークでも業務を継続できます。
  • スマートフォン:ビジネスチャット、メール確認、スケジュール管理、営業現場での在庫確認やプレゼンなどに活用できます。
  • 組み込み型コンピュータ(マイコン):店舗のPOSレジ、自動販売機、工場の生産ライン制御機器、建物の空調制御など、裏方で働き続け、業務の自動化や効率化を支えます。
  • クラウド上のコンピュータ(サーバー):業務システムやデータベース、顧客管理、販売分析、バックオフィス業務などがクラウド上で稼働し、常にネットワーク越しにサービスを提供します。
  • IoTデバイス:生産機器やセンサーがコンピュータ化され、リアルタイムな状況把握や自動制御、ビジネスへのデータフィードバックが可能になっています。

このようにコンピュータは私たちが直接「コンピュータを使っている」と意識しない場面でも、その背後で絶えず動いており、生活を支える土台となっています。

Lesson 2Chapter 2.2
「情報処理」という考え方

コンピュータの本質は「情報処理装置」であるという点にあります。

情報処理 とは、何らかのデータ(情報)を受け取り、そのデータを「変換・計算・整理・検索・分析」などの処理を行ない、結果を有益な形で返すことです。この「入力→処理→出力」という一連の流れが、コンピュータをただの箱ではなく、私たちが求める結果や機能を提供する存在にしています。

たとえば、オンラインショップで商品を検索するとき、私たちは検索キーワードを入力します。ショップのコンピュータは、そのキーワードをもとに商品データベースを調べ、条件に合う商品を抽出し、画面上にリストとして表示します。この一連の動作が「情報処理」であり、私たちは結果として、自分が欲しい商品を簡単に見つけることができます。

Lesson 2Chapter 2.3
「入力→処理→出力」の基本モデル

コンピュータが行なう情報処理は、「入力(Input)」と「処理(Process)」、「出力(Output)」の3つのステップから成り立っています。

入力 は、コンピュータが外部から何らかのデータを受け取る段階です。入力は人間がキーボードを通じて文字情報を与える、センサーが温度情報を検出する、インターネットからデータを受信するなど、さまざまなかたちで行なわれます。

処理 の段階では、コンピュータ内部の仕組みが与えられた情報を計算や分析、並べ替えなど、必要な操作を加えて整理します。処理はさらに「記憶・演算・制御」で構成されます。

出力 では、処理した結果を人間や他のシステムへ渡します。出力には画面に表示する、スピーカーから音を鳴らす、印刷機で紙に文字を記録する、インターネットを通して別のコンピュータに結果を送るなど多様な手段があります。

この「入力→処理→出力」の流れは、どのような複雑な操作を行なうコンピュータであっても変わらない基本的なモデルです。私たちが普段使うコンピュータやスマートフォン、数千台~数万台のコンピュータがネットワークで連動して複雑な計算を行なうクラウドサービスまで、この原理は共通しています。

Lesson 2Chapter 2.4
処理を構成する「記憶・演算・制御」

処理は「記憶・演算・制御」で構成されます。

  • 演算:計算処理を行なう
  • 制御:ある目的に適した動作を決まった手順で行なう
  • 記憶:結果や指示内容を保管する

それぞれの役割について、そろばんや電卓と比較しながら確認しましょう。

そろばんは「記憶」を担う

そろばんは、珠(たま)を上下させることで計算過程を目で追いつつ、人間が頭で演算を行ないます。

  • 入力:人間が指で珠を動かし、「数」をそろばん上に表すことでデータを入力しています。
  • 処理:実際に計算するのは人間の脳であり、そろばんはその計算途中の状態を「記憶」しておく板のような役割を果たします。人間が計算手順を頭で考え、珠を動かして中間結果を保持します。
  • 出力:計算結果は、そろばん上の珠の配置によって示され、最終的には人間がその数値を読み取ります。

そろばんは、計算状態を「記憶」する役割を持ちますが、「演算」や「制御」を行なうのは人間です。

電卓は「記憶+演算」を担う

電卓はそろばんより進化し、「記憶」だけでなく「演算」も自動で行ないます。たとえば 1 + 3 + 3 を計算するには「1+3+3=」の順番にキーを押すだけで、演算結果が表示されます。

  • 入力:キーボードで数字や演算記号を入力することで、電卓内部の回路に情報が与えられます。
  • 処理:電卓内部には計算用の回路があり、基本演算を自動的に行ないます。処理結果は内部のメモリ(記憶装置)に保持され、複数ステップの計算も可能です。
  • 出力:処理結果は、液晶ディスプレイに表示され、人間はそこから答えを読み取ります。

電卓は、「記憶と演算」は機械が自動で行ないますが、計算手順を決める「制御」は人が行ないます。たとえば「3を何回足すか」は、人間が都度ボタンを押して指示します。

コンピュータは「記憶+演算+制御」を担う

コンピュータは、与えられた プログラム(手順書)に基づいて、処理の手順を自動的に「制御」します。たとえば「1に3を5回足す」処理をさせたいとき、電卓は何度も「+ 3」と押す必要がありますが、コンピュータは「3を5回加算せよ」というプログラムを与えることで、自動的に計算が可能です。

プログラムの受け取り: 3を5回加算せよ
合計を0に設定
3を5回加算
結果を出力

プログラム(手順書)のイメージ

  • 入力:キーボードやセンサー、ネットワーク経由など、さまざまな方法でデータを受け取ります。
  • 処理:CPU(中央演算処理装置)という装置が、制御と演算を行ないます。
    • 制御:与えられたプログラムから指示を読み取り、何を行なうかを決定します。
    • 演算:指示に従って「データの取り出し→計算→結果の記憶」を行ないます。
  • 出力:画面への表示やスピーカーからの音声出力、プリンターへの印刷など、さまざまな形で結果を出力します。

コンピュータは「記憶+演算+制御」をすべて自動的に行なえるのです。

Lesson 2Chapter 2.5
コンピュータを構成するハードウェアとソフトウェア

コンピュータは、ハードウェアとソフトウェアで構成されています。ハードウェアは「モノとしての実態」、ソフトウェアは「ハードウェアを動かす手順書」の関係にあり、それぞれが相互作用し合うことで、「入力→処理(記憶・演算・制御)→出力」の基本モデルを実現しています。

ハードウェアとは

ハードウェア(hardware)は、コンピュータを形づくる「物理的な機器」や「装置」です。実際に手で触れることができる「モノ」の部分で、以下のような要素で構成されています。

  • CPU(中央処理装置):コンピュータの「頭脳」にあたる部分。演算装置と制御装置で構成される
    • 演算装置:計算処理を行なう
    • 制御装置:与えられた手順(プログラム)通りに全体を制御する
  • 記憶装置:プログラムやデータを記憶する
  • 入力装置:コンピュータの外部から情報を入力する
  • 出力装置:コンピュータ内部の情報を外部へ出力する
  • その他:
    • 回路基板や電源装置、冷却装置(ファン)、IoT機器など

「演算装置、制御装置、記憶装置、入力装置、出力装置」のことを、コンピュータの5大装置 と呼びます。

それぞれが「入力→処理(記憶・演算・制御)→出力」の基本モデルに対応していることを再確認しておきましょう。

ソフトウェアとは

ソフトウェア(software)とは、ハードウェアを「どう動かすか」を決める手順や命令が詰まった「プログラム(処理の手順書)」のことです。実際に目で見たり手で触れたりできる「物理的な形」はありませんが、コンピュータ内部に記録され、CPUがこれを読み取って命令を実行します。

ソフトウェアには以下の種類があります。

  • オペレーティングシステム(OS):WindowsやmacOS、Linux、Android、iOSなど。ハードウェアを使いやすくまとめ上げる「土台」となる
  • アプリケーション:ワープロソフト、表計算ソフト、画像編集ツール、ウェブブラウザ、ゲームソフトなど、実際に私たちが「何をしたいか」を実現するためのソフトウェア
  • その他のソフトウェア
    デバイスドライバ(特定のハードウェア装置を動かすための専用プログラム)や、UEFI(ハードウェアの初期化や起動用ストレージの読み込み)、ファームウェア(特定のハードウェア装置を動かすための組み込みソフトウェア)など

コンピュータとソフトウェアの関係

ハードウェアとソフトウェアが適切に組み合わされることで、コンピュータは膨大な情報を処理し、私たちが望む多彩な機能を実現します。ハードウェアの性能が上がれば、より複雑で高度な処理が可能になり、より洗練されたソフトウェアを動かすことができます。逆に、優れたソフトウェアによってハードウェアの潜在能力を十分に引き出すことも可能です。こうした相互作用によって、コンピュータは絶えず進化し、さまざまな分野で新たな価値を生み出しているのです。

ハードウェア(コンピュータ本体)とソフトウェア(アプリ・システム)の関係

それでは、ハードウェアのなかでも中心的な存在である「CPU」から、詳しく確認していきましょう。

Lesson 2Chapter 3
CPU(中央処理装置)

CPU(中央処理装置:Central Processing Unit) は、コンピュータの「頭脳」にあたる部品で、命令の処理や計算、制御を担う中心的な役割を持つ装置です。コンピュータの内部で、プログラムを実行し、データを処理する核となっています。

CPUの例 - Intel Core i7

CPUは、大きく分けて「制御装置」と「演算装置」の2つから構成されます。

  • 制御装置(Control Unit):プログラム(手順書)に沿って、次に実行する命令を決定する役割を持っています。
  • 演算装置(Arithmetic Logic Unit):実際に計算や論理演算を行なう役割を持っています。

この2つの装置が一体となって働くことで、コンピュータは与えられた命令を次々に実行して、さまざまな処理や計算を行なうことが可能になります。

Lesson 2Chapter 3.1
制御装置としてのCPU

制御装置 はCPUで、プログラムに書かれた命令を1つずつ読み取り、それらをどのような手順で実行するかを「制御」する部分です。簡単に言えば、CPU全体をまとめる「司令塔」のような役割を担っています。プログラムで指定された処理の流れに従って、どの命令を次に実行すべきかを決定し、演算装置やレジスタ(後述)、記憶装置などへ指示を出します。

プログラムカウンタ

制御装置には、「プログラムカウンタ」と呼ばれる特別なレジスタ(後述)があります。プログラムカウンタ は、現在CPUが実行中の命令がメモリ上のどこにあるかを示す アドレス(場所)を記憶しておくためのもので、制御装置の中核的な役割を果たします。

たとえば、1+2 を計算するプログラムでは、以下のように処理が進みます。

  1. プログラムカウンタが次の命令アドレスを示す
  2. CPUがそのアドレスから命令を取り出し、演算装置で処理する
  3. 処理後、プログラムカウンタを次の命令アドレスに進める

CPUはプログラムカウンタの値を参照し、そのアドレスに格納されている命令を取り出して実行します。そして命令を1つ実行するごとに、プログラムカウンタを次の命令のアドレスへ更新することで、処理を順番に進めていきます。

命令サイクル

命令サイクル は、CPUが命令を実行する際に繰り返す以下の流れです。

  1. 取出し(フェッチ:Fetch):プログラムカウンタが指し示すメモリ上のアドレスから命令を取り出します。
  2. 解読(デコード:Decode):取り出した命令を解読します。つまり、その命令が何をすべきか(加算、減算、比較、メモリへの読み書きなど)を理解します。
  3. 実行(エグゼキュート:Execute):解読した命令に従って実際に処理を行ないます(たとえば、2つの数値を足す、指定された場所からデータを読み込む、など)。
  4. 書き戻し(ライトバック:Write Back):実行結果を指定された場所(レジスタやメモリ)に書き戻します。

この一連の「取り出し → 解読 → 実行 → 書き戻し」というサイクルを繰り返しながら、CPUはプログラムに書かれた命令を順々に処理していきます。

Lesson 2Chapter 3.2
演算装置としてのCPU

演算装置 はCPUで、指定されたメモリアドレスからデータを読み込み、加減算などの計算を行ない、その結果を再びメモリへ書き戻すという「計算や処理」を行なう部分です。

制御装置が「次に実行する命令」を決定すると、実際の計算や処理は「演算装置」が行ないます。たとえば、1+2 の計算は以下の手順で進みます。

  1. メモリから 1 を取り出す
  2. 2 を足す
  3. 結果である 3 をメモリに戻す

このように制御装置と演算装置は連携し、制御装置が命令を指示し、演算装置が計算を実行することで、プログラムは円滑に処理されます。

Lesson 2Chapter 3.3
CPUの性能要素

CPUの性能は、どれだけ高速に命令を実行できるか、どれだけ多くの計算を一度に並行して実行できるか、といった観点で評価されます。一般的に、以下の要素がCPU性能を左右します。

  • クロック周波数:1秒間に何回命令を処理できるかを示す指標
  • コア数:1つのCPUパッケージ内にある命令処理ユニット(コア)の数
  • レジスタのサイズ:一度に扱えるデータの幅やアドレス範囲

クロック周波数

クロック周波数(Clock Frequency) はCPUが1秒間に行なえる動作回数を表し、単位は Hz(ヘルツ) です。1GHzは1秒間に10億回の動作を意味します。たとえば、2GHzのCPUなら1秒間に20億回(2,000,000,000回)の処理が可能です。ただし、クロック周波数が高いだけで性能が決まるわけではなく、CPU設計やコア数、効率性とのバランスが重要です。

コア数

コア(Core) は、CPU内部にある命令処理ユニットです。1つのCPUに複数コアがある「マルチコアCPU」が一般的で、コア数が増えるほど同時に実行できる処理が増えます。以下はコア数の例です。

  • デュアルコア:2コア
  • クアッドコア:4コア
  • オクタコア:8コア

コア数が多いと、動画編集しながらブラウジングなど、複数のタスクを同時に円滑に進められます。

レジスタのサイズ

レジスタ はCPU内で高速にデータを扱う作業用メモリです。レジスタのビット数は、同時に扱えるデータ量やアクセスできるメモリ空間を決定します。

  • 32ビットCPU:一度に32ビット(約4バイト)を扱い、理論上約4GBのメモリ空間までアクセス可能
  • 64ビットCPU:一度に64ビット(約8バイト)を扱い、理論上は16エクサバイト規模のメモリ空間までアクセス可能

現在は多くのCPUが64ビットに対応しており、大量のメモリや高速なデータ処理、最新ソフトウェアへの対応が可能です。

Lesson 2Chapter 3.4
実際のCPUスペック表記例

2025年モデルのLenovo ThinkPad X1を例に挙げると、プロセッサ欄に以下のような表記があります。

プロセッサ
インテル® Core™ Ultra 7 プロセッサー 258V (LPEコア 最大 3.70 GHz Pコア 最大 4.80 GHz / 32 GB MOP)

表記の意味は以下のとおりです。

  • 「インテル」:会社名
  • 「Core Ultra」:ブランド名
  • 「7」:ブランドレベル
  • 「258V」:プロセッサー・ナンバー
    • 「2」:シリーズ
    • 「58」:SKUナンバー(数字が大きいほど高性能)
    • 「V」サフィックス(どのような機能が搭載されているか)
  • 「LPEコア最大 3.70 GHz」:LPEという種類のコアのクロック周波数(4コア搭載)
  • 「Pコア最大 4.80 GHz」:Pという種類のコアのクロック周波数(4コア搭載)
  • 「32 GB MOP」:プロセッサ一体型のメモリ容量(32GB)

参考:

ただし高性能なCPUであっても、プログラムが複雑な処理を要求したり、膨大なデータへのアクセスが必要な場合は、それなりに時間がかかります。また、他のプログラムと資源を共有する状況では、処理がさらに遅くなることもあります。それでも、現在のCPUは一般的な作業を非常に短時間でこなせるほど高性能です。

Lesson 2Chapter 4
記憶装置

記憶装置 は、データやプログラムを保存するための装置です。

コンピュータが多様な処理を実行できる理由の1つは、大容量のデータやプログラムを格納し、必要に応じて活用できる「記憶装置」が存在するからです。記憶できる容量が小さければ、画像や動画のような大容量データを扱うことは困難になります。

記憶装置は、以下の2種類に大別できます。

  • 主記憶装置(メモリ):CPUが直接アクセスできる作業領域
  • 補助記憶装置(ストレージ):HDD、SSD、CD/DVD/BD、USBメモリなど、長期保存を目的とした装置

この分類は、CPUが直接アクセス可能か、または長期保存を目的としているかという観点で区分したものです。CPUが直接アクセス可能な「主記憶装置」に該当するのは「メモリ」のみです。ハードディスクや光学ディスク、USBフラッシュメモリなどはすべて「補助記憶装置」に分類されます。

Lesson 2Chapter 4.1
記憶階層(メモリ階層)の概念

コンピュータ内部では、複数の記憶装置が「記憶階層(メモリ階層)」という構造で整理されています。この階層は、アクセス速度と容量に応じたピラミッド構造を形成しており、最上位に高速・小容量のメモリ、下位に低速・大容量のストレージを配置します。この構造により、必要なデータを上位の高速メモリへ段階的に引き上げ、CPU(中央処理装置)の処理効率を高めることが可能です。

この観点では、キャッシュメモリが主記憶装置よりさらに上位に位置づけられ、次のような3階層構造となります。

  1. 最上位:キャッシュメモリ(超高速・超小容量)
  2. 中間:主記憶装置(メインメモリ)(RAM:高速・中容量)
  3. 下位:補助記憶装置(ストレージ)(HDD/SSDなど:低速・大容量)

CPUはまずキャッシュメモリにアクセスし、それでも足りないデータがある場合は主記憶装置へ、さらに必要があれば補助記憶装置へと、徐々に低位の階層からデータを引き出します。

キャッシュメモリとは

キャッシュメモリ は、CPUと主記憶装置(メインメモリ)の間に位置する超小容量・超高速のメモリです。CPUがよく使うデータを一時的に保存し、主記憶装置へのアクセスを減らして処理を高速化します。

  • 高速性:CPU内部または極めて近い場所にあるため非常に高速
  • 容量の小ささ:主記憶装置よりも容量は小さい
  • 揮発性:電源を切るとデータは消える(主記憶装置と同様)

キャッシュメモリには通常SRAM(Static RAM)が使用されます。SRAMは高速ですが高価で大容量化が難しいため、キャッシュメモリは少量しか搭載されません。

主記憶装置(メインメモリ)とは

主記憶装置(メインメモリ) は、CPUが直接読み書きを行なう「作業スペース」です。ここには今実行中のプログラムや処理中のデータが格納されます。

  • 高速アクセス:CPUが直接アクセスできるため高速
  • 容量の限界:コストが高く、大容量化が難しい
  • 揮発性:電源を切るとデータが消失する

主記憶装置には主にDRAM(Dynamic RAM)が使用されます。DRAMは容量を大きくできて安価ですが、定期的なリフレッシュが必要であり、SRAMほど高速ではありません。

補助記憶装置(ストレージ)とは

補助記憶装置は、プログラムやデータを長期的に保存する装置です。主記憶装置より大容量かつ非揮発性(電源OFFでもデータ保持)ですが、アクセス速度は遅くなります。

  • 非揮発性:電源を切ってもデータが消えない
  • 大容量:メモリより大きな容量を持つ
  • 低速:メモリやキャッシュよりもアクセスは遅い

主な補助記憶装置には次のものがあります。

  • HDD(ハードディスクドライブ):大容量・低価格、磁気ディスクへの記録
  • SSD(ソリッドステートドライブ):HDDより高速、耐衝撃性が高く、フラッシュメモリを使用
  • USBメモリ、SDカード:小型で持ち運びが容易
  • 光学メディア(CD/DVD/BD):バックアップなどに利用、読み書きは遅い

主記憶装置と補助記憶装置の違い

主記憶装置と補助記憶装置の違いを整理しましょう。

  主記憶装置(メモリ) 補助記憶装置(HDD, CD/DVD/BD, USBメモリなど)
データ読み書き速度 高速 低速
データ保存容量 小さい 大きい
データ保存期間 電源を切ると消える(揮発性) 電源OFFでも保持(非揮発性)
CPUとの関係 CPUが直接アクセス可能 一度メモリへコピーしてからCPUがアクセス

CPUは超高速で動作するため、極端に遅い装置から直接データを読み書きするとほとんど待ち時間になってしまいます。そのため、CPUはまず高速な主記憶装置(メモリ)とやり取りし、必要に応じて補助記憶装置からデータを取り出してメモリ上に展開します。

主記憶装置は高速ですが高価で容量が小さく、揮発性であるため電源を切るとデータが消えます。この欠点を補うため、安価で大容量かつ非揮発性の補助記憶装置が活躍します。コンピュータの電源を入れると、CPUとメモリが起動し、補助記憶装置から必要なプログラムやデータがメモリへ読み込まれます。処理が終われば、再び補助記憶装置に結果を保存します。

人間に例えると以下のようなイメージです。

  • CPU:作業する人
  • メモリ(主記憶装置):作業用の机
  • ハードディスク(補助記憶装置):本棚

作業をする人(CPU)は、本棚(補助記憶装置)から必要な本(プログラムやデータ)を取り出し、机(メモリ)に広げ、必要な処理を行ないます。処理が終わったら本を本棚に戻します。メモリはこのように「CPU専用の作業机」として機能します。

Lesson 2Chapter 4.2
メモリの種類

メモリにはさまざまな種類があり、それぞれ揮発性や速度、用途が異なります。

種類 揮発性 特徴 用途
RAM(SRAM) 揮発性 非常に高速、高価、容量小 キャッシュメモリ
RAM(DRAM) 揮発性 安価で大容量、リフレッシュが必要 主記憶装置
フラッシュメモリ 非揮発性 高速で耐久性が高く長期保存可能 SSD、USBメモリ、SDカード
ROM 非揮発性 読み出し専用 BIOSやファームウェア

SRAM(スタティックRAM)

キャッシュメモリとして用いられ、フリップフロップ回路でデータを保持するためリフレッシュ不要で高速です。

  • 揮発性
  • 非常に高速
  • 高価で大容量化が困難

DRAM(ダイナミックRAM)

主記憶装置によく使われるメモリです。コンデンサに電荷を蓄えてデータを保持し、漏電を防ぐために定期的なリフレッシュが必要です。

  • 揮発性
  • 安価で大容量
  • リフレッシュが必要なためSRAMより低速

フラッシュメモリ

非揮発性メモリの一種で、電源OFFでもデータを保持します。高速読み書き、耐久性があり、SSDやUSBメモリ、SDカードで広く使われます。

ROM(リードオンリーメモリ)

読み出し専用の非揮発性メモリ。BIOSやファームウェアなど、コンピュータの起動に必要なプログラムが格納されます。

Lesson 2Chapter 4.3
メモリの具体例:容量と転送速度

たとえば2024年モデルのApple MacBook Proの「16GB 4,200MHz LPDDR5Xメモリ」という仕様は、以下を意味します。

  • 16GB:メモリ容量。大きいほど同時に扱えるデータが増え、処理効率が向上。
  • 4,200MHz:メモリの動作クロック周波数(転送速度)。値が大きいほどデータのやりとりが高速になります。

「LPDDR5X」は低消費電力メモリ規格で、高速かつ省エネ性能に優れています。「統合メモリ」は、CPUやGPUなどすべてのコンポーネントが同じメモリを共有して使用する設計で、処理の効率性を高めています。

Lesson 2Chapter 4.4
メモリ上のデータとアドレス

メモリ内のデータやプログラムは、すべて「アドレス(住所)」によって管理されます。メモリ空間は細かい区画に分かれており、それぞれに番地が割り当てられています。CPUはこのアドレスを使って、どの場所に特定のデータや命令があるかを特定できます。

たとえば 1+2 の計算を行なう場合、実際にはメモリ上の特定のアドレスに命令やデータが配置され、CPUはそのアドレスを順番に読み込み、処理を実行して結果を別のアドレスに書き込みます。

Lesson 2Chapter 4.5
メモリには常にプログラムとデータがある

コンピュータが起動している間、メモリ上には常になんらかのプログラムやデータが存在しています。たとえば、コンピュータ起動中にブラウザを開くと以下の流れが発生します。

  1. ハードディスク(補助記憶装置)に保存されているブラウザのプログラムがコピーされる。
  2. そのコピーがメモリ(主記憶装置)に移動される。
  3. メモリ上に置かれたブラウザのプログラムが起動する。
  4. ブラウザがディスプレイ(出力装置)に表示される。
  5. キーボード(入力装置)からURLを入力すると、CPU(演算装置)がWebサイトにアクセスする。
  6. 得られたWebサイトのデータもメモリ上に展開される。
  7. ブラウザはメモリ上のデータを参照し、ディスプレイにページを表示する。
CPU(演算装置)キーボード(入力装置)ディスプレイ(出力装置)ブラウザメモリ(主記憶装置)ハードディスク(補助記憶装置)CPU(演算装置)キーボード(入力装置)ディスプレイ(出力装置)ブラウザメモリ(主記憶装置)ハードディスク(補助記憶装置)コンピュータ起動中、メモリには常にデータが存在1. ブラウザのプログラムをコピー2. プログラムを移動3. プログラムが起動しブラウザを表示4. URLを入力5. Webサイトにアクセス6. Webサイトのデータを展開7. ページを表示

これら一連の動作は、CPUの制御装置がタイミングよく制御します。

Lesson 2Chapter 5
入力装置と出力装置

入出力装置(Input/Output Devices)は、コンピュータと外部のユーザーやデバイスとの間で情報をやり取りするための装置です。入力装置はコンピュータに情報を送信する役割を、出力装置はコンピュータから情報を受信してユーザーに伝える役割を担います。

Lesson 2Chapter 5.1
入力装置(Input Devices)

入力装置 は、ユーザーがコンピュータにデータや命令を送るための装置です。主な入力装置には以下があります。

  • キーボード:文字やコマンドを入力する。
  • マウス:カーソル操作やクリック選択を行なう。
  • タッチパネル:直接触れて操作する。
  • スキャナー:紙の情報をデジタル化。
  • カメラ:画像や動画を入力。
  • マイク:音声を入力し、音声認識や録音に利用。

Lesson 2Chapter 5.2
出力装置(Output Devices)

出力装置 は、コンピュータが処理した結果をユーザーに伝えるための装置です。主な出力装置には以下があります。

  • ディスプレイ(モニター):視覚的な情報を表示する装置。
  • プリンター:デジタルデータを紙に印刷する装置。
  • スピーカー:コンピュータから出力される音声や音楽を再生する装置。
  • ヘッドホン:スピーカーと同様、音声を再生するが、個人用に使用。
  • プロジェクター:コンピュータの画面を拡大して壁やスクリーンに投影する装置。

RGB

ディスプレイは、RGB(Red:赤、Green:緑、Blue:青)の3色の組み合わせで色を表現します。各色は通常0~255の256段階で表現され、フルカラーの場合、16,777,216色(256×256×256)を表示できます。

解像度

解像度(かいぞうど)とは、ディスプレイやプリンターなどで画像やテキストを表現する際に、どれだけ細かい点(ピクセルやドット)で描写できるかを示す指標です。

ディスプレイの解像度は、画面上に表示されるピクセル数で表します。

  • 例:「1920 x 1080」:横方向に1920ピクセル、縦方向に1080ピクセル(フルHDと呼ばれるサイズです)。

プリンターの解像度は、用紙上に印刷されるドットの密度を示し、通常 DPI(Dots Per Inch) で表します。

  • 例:「600 dpi」:1インチあたり600個のドットが印刷できることを意味します。

Lesson 2Chapter 5.3
入出力装置(Input/Output Devices)

一部の装置は、入力と出力の両方の機能を持っています。

主な入出力装置:

  • タッチスクリーン:入力(タッチ操作)と出力(画面表示)の両方を行なう。スマートフォンやタブレットで一般的。
  • 外付けハードディスクやUSBメモリ:データの読み取り(入力)と書き込み(出力)の両方を行なう。
  • ネットワークデバイス(Wi-Fiルーターなど):データを受信(入力)し、別のデバイスに送信(出力)する。
  • VRデバイス:ユーザーの動きを入力として検出し、仮想世界の映像や音声を出力。

Lesson 2Chapter 5.4
入出力インタフェース

入出力インタフェース とは、コンピュータの内部(CPUやメモリなど)と外部の入出力装置(キーボード、モニター、プリンターなど)の間でデータをやり取りするための仕組みや規格を指します。

さまざまな入出力インタフェース

入出力インタフェースの役割

入出力インタフェースには、以下のような役割があります。

  1. データの送受信:コンピュータと外部装置間でデータをやり取りする。
  2. 互換性の提供:異なる種類やメーカーの機器が正常に動作できるようにする。
  3. 速度調整:コンピュータの内部動作(高速)と外部装置(低速)の間の速度を調整する。
  4. エラー検出・訂正:データ転送時のエラーを検出し、訂正する機能を提供。

入出力インタフェースの種類

主な入出力インタフェースには、以下のようなものがあります。

  • USB
  • HDMI
  • VGA
  • Ethernetポート
  • オーディオジャック
  • RFID

USB(Universal Serial Bus)

USBは、現代の標準的な入出力インタフェースです。

  • 汎用性:キーボード、マウス、プリンター、外付けドライブなど、多くのデバイスを接続可能。
  • 高速通信USB 2.0(480Mbps)、USB 3.0(5Gbps)、USB-C(さらに高速、充電も可能)。
  • バスパワー:USBケーブルを通じて、デバイスに電力を供給する仕組みです。たとえば、外付けHDDやスマートフォンの充電ではバスパワーが利用されます。これにより、別途電源アダプターが不要になることもあります。
  • プラグアンドプレイ:デバイスを接続すると、OSが自動的に認識して利用できるようにする機能。インストール作業を必要とせず、手軽に周辺機器を追加可能。

HDMI(High-Definition Multimedia Interface)

映像と音声をやりとりするインターフェイスです。

  • 映像と音声を高品質で転送。
  • テレビやモニターへの接続で一般的。

VGA(Video Graphics Array)

映像用のインターフェイスです。

  • 昔から使われているアナログ映像用インタフェース。
  • 現代ではHDMIに取って代わられている。

Ethernetポート

有線でネットワークに接続するためのインターフェイスです。

  • ネットワークケーブル(LANケーブル)を使ってインターネットやローカルネットワークに接続。

オーディオジャック

ヘッドホンやスピーカーを接続するための音声用ポートです。

RFID(Radio Frequency Identification)

電波を利用して無線でデータを読み書きするための技術です。

  • 直接触れる必要がなく、非接触で通信可能。
  • RFIDタグとリーダー間でデータをやり取りする。
  • 電子マネー、倉庫管理、改札機などで利用。

Lesson 2Chapter 5.5
デバイスドライバ(device driver)

デバイスドライバ は、入出力装置をコンピュータで利用するためのソフトウェアです。

キーボードやマウス、プリンター、IoTデバイスなど、さまざまなハードウェアは、それぞれ特有の動作方法があります。そのため、コンピュータ本体がそれらの装置を正しく認識し、使いこなすためにデバイスドライバが必要です。

デバイスドライバは、「通訳」のような役割をします。

  • 入力装置から受け取った信号をコンピュータが理解できる形式に変換する
  • 出力装置へ送るデータを、その装置が処理できる形に整えて送る

たとえば、新しいプリンターを導入するときに「ドライバのインストール」を必要とする場合がありますが、これがまさにデバイスドライバに当たります。

Windowsのデバイスマネージャー

Lesson 2Chapter 6
その他のハードウェア

その他のハードウェアには、以下のようなものがあります。

マザーボード

CPUやメモリ、補助記憶装置、入出力装置などを物理的につなぐ基板です。マザーボード上には回路が走り、各部品がデータをやり取りできるようにしています。

マザーボードの例 - ASUSのマザーボード

電源ユニット・ファン・ケース

電源ユニットは各装置に安定して電気を供給し、ファンは熱を逃がして装置が適温で動作できるようにし、ケースはこれらの部品を保護します。故障を防ぐためにも必要な要素です。

電源ユニットの例 - Antecの電源ユニット

ファンの例 - SCYTHEのファン

IoTデバイス

IoT(Internet of Things)デバイスは、あらゆるモノに小型コンピュータやセンサーが内蔵され、ネットワーク経由でデータのやり取りができる装置です。IoTデバイスは以下のような使われ方をします。

  • 倉庫管理で、商品棚に設置されたIoTセンサーが在庫数量や温度、湿度を計測し、リアルタイムでサーバーへ送信する
  • 工場ラインで、IoTセンサーが機械の動作データを取得し、異常検知や品質改善に役立てる
  • ショッピングセンターで、来店者数カウンター(IoT機器)が客の滞在時間や混雑度を分析し、マーケティング施策に生かす

IoTデバイスは、基本的に入力装置(センサー)と出力機能(無線通信など)が一体となったようなものと考えることができます。これらも当然ハードウェアであり、その小型化や多様化が進んでいます。

IoTデバイスの例

ハードウェアの説明は以上です。次はソフトウェアについて説明します。最初は、ハードウェアとアプリケーションソフトウェアをつなぐ土台となる基本的なソフトウェアである「OS」から確認していきましょう。

Lesson 2Chapter 7
OS:ハードとソフトを繋ぐ基盤

OS(オペレーティングシステム:Operating System)は、ハードウェアとアプリケーションソフトウェアをつなぐ土台となる基本的なソフトウェアで、コンピュータ全体を管理・統制します。

ハードウェア・OS・アプリケーションの構成イメージ

コンピュータを使ううえで、ユーザーが毎回ハードウェアの細かな動作を一から理解し、直接コントロールしなければならないとしたら、非常に複雑な作業となります。

OSが存在するおかげで、ユーザーはキーボード入力やマウス操作、ファイルを開く・保存するといった行為を、複雑な裏側の仕組みをほとんど意識することなく行なうことができます。

Lesson 2Chapter 7.1
OSの機能

OSには、以下のような機能があります。

  • ハードウェア資源の管理
  • ファイル管理
  • ユーザーインターフェース(UI)の提供
  • セキュリティとアクセス管理

ハードウェア資源の管理

OSは、CPU、メモリ、ストレージ、プリンター、ネットワークなどのハードウェアを効率良く管理します。

シングルタスクとマルチタスク

初期のコンピュータでは、OSは一度に1つのタスク(プログラム)しか実行できない「シングルタスク」方式が一般的でした。しかし、現代のOSは複数のタスクを同時並行(ユーザーから見ると同時進行しているように見える)で実行する「マルチタスク」に対応しています。これにより、ユーザーはブラウザでWebページを見ながら、音楽プレイヤーで音楽を再生するといった操作が同時に行なえるようになりました。

ファイル管理

データを「ファイル」という単位で保管し、それを階層的に整理します。この仕組みは「ファイルシステム」(後述)を通じて提供されます。

ユーザーインターフェース(UI)の提供

デスクトップやアイコン、ウィンドウ、メニューなど、ユーザーが直感的にコンピュータを操作できる環境を提供します。

セキュリティとアクセス管理

パスワード認証やアクセス権限設定で、ユーザーやデータを保護します。

Lesson 2Chapter 7.2
OSの種類

OSには用途やデバイスごとにさまざまものがあります。

  • パソコン用OS
    • Windows(Microsoft社)
    • macOS(Apple社)
    • Linux(オープンソース、さまざまなディストリビューションあり)
  • スマートフォン用OS
    • Android(スマートフォン向け、Googleが中心)
    • iOS(Apple製のiPhoneやiPad向け)

Lesson 2Chapter 7.3
ファイルシステムとは

ファイルシステム は、コンピュータのストレージにあるデータを整理して保存し、取り出すための仕組みです。ファイルシステムは「ファイル」と「フォルダ(ディレクトリ)」を使用してデータを管理します。

ファイル

ファイル は、データを保存する単位のことを指します。具体的には、テキスト、画像、動画、プログラムなど、さまざまな種類のデータがファイルとして記録されます。

フォルダ

フォルダ は、ファイルや他のフォルダを格納する入れ物です。

フォルダとディレクトリの違い

「フォルダ」と「ディレクトリ」は基本的には同じ概念を指します。

多くの場合、日常的な操作では「フォルダ」という言葉が使われ、システム内部や技術的な説明では「ディレクトリ」という言葉が使われます。

フォルダ構造と用語

ファイルシステムは多階層のフォルダ構造を持ち、ツリーのような形で整理されます。

ファイルシステムの階層イメージ

  • ルートフォルダ
    • フォルダ構造の一番上の階層を指します。
    • 例:Windowsでは C:\、LinuxやmacOSでは / がルートフォルダです。
  • カレントフォルダ
    • 現在作業中のフォルダを指します。コマンドラインなどでファイルを指定するとき、デフォルトでこのカレントフォルダが参照されます。

絶対パスと相対パス

ファイルやディレクトリを指定する方法には2種類あります。

  • 絶対パス:ルートディレクトリから目的のファイルやディレクトリまでの位置を、階層を辿って完全に指定した書き方です。
    • 例(Windows):C:\Users\Taro\Documents\report.txt
    • 例(Linux/macOS):/home/taro/documents/report.txt
  • 相対パス:カレントディレクトリを基準として目的物を指定する書き方です。
    • 例:もしカレントディレクトリが C:\Users\Taro の場合、Documents\report.txt と書けば C:\Users\Taro\Documents\report.txt を指せます。

Lesson 2Chapter 7.4
バックアップ

ファイルを安全に保管するため、バックアップは欠かせません。

バックアップ はデータを別の場所や手段で複製しておき、万一ハードディスクが故障したり、誤ってファイルを消したり、ウイルスに感染したりしたときにデータを復旧できるようにする対策です。

バックアップの種類

バックアップには以下の種類があります。

  • フルバックアップ
    • 対象とするすべてのファイルやフォルダをまるごとコピーします。復元は簡単ですが、毎回大きな容量と時間が必要です。
  • 差分バックアップ
    • 前回のフルバックアップ以降に「変更・追加されたファイル」すべてをバックアップします。
    • 復元には、フルバックアップと最新の差分バックアップがあればよく、フルバックアップのみの頻繁な作成より容量を節約できます。
  • 増分バックアップ
    • 前回のフルバックアップ、または直近の増分バックアップ以降に変更された分のみをバックアップします。
    • 差分バックアップよりさらに効率的で、頻繁なバックアップで容量節約に有利ですが、復元時にはフルバックアップ+すべての増分バックアップが必要となるため、手間が増えます。

バックアップ手段の例

バックアップには、以下のような手段があります。

  • 外付けハードディスクやUSBメモリへの定期的なコピー
  • クラウドサービス(Google Drive、Dropboxなど)への自動同期
  • OS標準のバックアップ機能や専用のバックアップソフトの利用

Lesson 2Chapter 8
アプリケーション

アプリケーション(Application) とは、コンピュータ上で動作する「特定の目的を持ったソフトウェア(プログラム)」のことを指します。アプリケーションはOSの上で仕事をしたり、遊んだり、情報を処理したりするといった、実用的な機能を提供する道具です。

たとえば、以下のようなものはすべてアプリケーションに当たります。

  • 文書作成ツール(ワープロソフト)
  • 表計算ソフト
  • 音楽プレーヤーソフト
  • ゲーム
  • ブラウザ
  • メールソフト

アプリケーションはOS上で動作し、OSが提供する機能(ファイル管理や画面表示、入出力制御など)を利用して、ユーザーが必要とする作業を実現します。

Lesson 2Chapter 8.1
オフィスツール

オフィスツール とは、オフィス(職場)や家庭でも日常的に使われる文書作成・編集・発行などの作業を支援するアプリケーション群のことです。仕事や学習、家庭での文書整理や表計算などにもよく使われます。

オフィスツールは個々のソフトがバラバラに存在する場合もありますが、多くは以下のようなソフトウェアパッケージとしてまとめて販売・配布されます。

文書作成ソフト

ワープロソフトと呼ばれる文書作成用のアプリケーションです。

  • 例:Microsoft Word、Google ドキュメント、LibreOffice Writerなど。

これらは文章を入力・編集し、文字フォント、色、段落、ページレイアウトなどを整え、最終的に印刷したりPDFで書き出したりできます。

表計算ソフト

データを表形式で扱い、数値計算やグラフ作成を得意とするアプリケーションです。

  • 例:Microsoft Excel、Google スプレッドシート、LibreOffice Calcなど。

数値の集計、統計、計算式の適用、データの可視化(グラフ)などが簡単にできます。

プレゼンテーションソフト

スライド資料を作成するためのツールで、会議や発表会で使う資料作りに役立ちます。

  • 例:Microsoft PowerPoint、Google スライド、LibreOffice Impressなど。

画像やテキスト、表、グラフ、アニメーション、動画などを組み合わせて、効果的なプレゼン資料を作成できます。

Lesson 2Chapter 8.2
オープンソースソフトウェア

オープンソースソフトウェア(OSS) とは、ソースコード(プログラムの設計図)が公開され、誰でも自由に利用・改良・再配布できるライセンスを持ったソフトウェアのことです。

OSSの例をいくつかあげます。

  • Linux(リナックス)
    • コンピュータの基本ソフトウェア(OS)。
    • 世界中のサーバーやスマートフォン(Androidの基盤)で使われている。
    • 無料で高性能なため、多くの企業や個人が利用している。
  • Firefox(ファイアフォックス)
    • ウェブブラウザ。
    • Google Chromeの代わりに使える無料のブラウザで、高速かつプライバシーを重視。
  • LibreOffice(リブレオフィス)
    • オフィスソフト(文書作成や表計算など)。
    • Microsoft Officeの代替として、無料で使える。
  • GIMP(ギンプ)
    • 画像編集ソフト。
    • Adobe Photoshopの代わりに使える無料ツール。
  • WordPress(ワードプレス)
    • ウェブサイト作成ツール。
    • ブログや企業のウェブサイトを簡単に作れるため、多くの人に利用されている。
  • Blender(ブレンダー)
    • 3Dモデルやアニメーションを作成するためのソフトウェア。
    • 映画やゲームの制作にも利用されるほど高機能。
  • VLCメディアプレイヤー
    • 動画や音楽を再生するためのソフトウェア。
    • ほとんどすべての形式のメディアファイルを再生できる。

OSSは無料で利用でき、ユーザーコミュニティや開発者によって改良が進められています。企業や組織、個人が自由に参加できるため、機能改善やバグ修正が活発に行なわれます。また、OSSはコスト削減やカスタマイズの自由度といった点から、教育機関や自治体、企業でも多く利用されています。

Lesson 2Chapter 8.3
情報デザイン

情報デザイン とは、ユーザーが情報を「わかりやすく」「使いやすく」理解・利用できるように計画・構築することを指します。たとえば、アプリケーションの画面設計や、Webサイトのレイアウト、メニュー構成など、情報を伝達するあらゆる場面で情報デザインの考え方が用いられます。読み手が理解しやすい文章構成、適切な図解や色使い、情報量の最適化などが重要なポイントです。

ここでは情報デザインで重要な、2つの観点について説明します。

  • ユニバーサルデザイン
  • インタフェース設計

ユニバーサルデザイン

ユニバーサルデザイン は、年齢・性別・障がいの有無などに関わらず、誰もが快適に利用できる設計を目指す考え方です。アプリケーションやWebサイトで、文字サイズを変更しやすくする、コントラストを高めて見やすくする、音声読み上げに対応するなどが例として挙げられます。これにより、より多くの人が情報や機能へ等しくアクセスできるようになります。

インタフェース設計

インタフェース設計 は、アプリケーションを使いやすくするために、人間が理解しやすい視覚や・操作上の工夫を盛り込むことです。一貫した、わかりやすい設計がユーザーの快適な体験を生みます。

  • ヒューマンインタフェース
    • ヒューマンインタフェースは、人間とコンピュータとの「接点」のことを指します。アプリケーションの画面、マウスやキーボード、タッチパネル、音声操作など、人間がコンピュータを使うための仕組み全般が含まれます。使い勝手やわかりやすさ、ストレスの少ない操作性が求められます。
  • GUI(Graphical User Interface)
    • GUIは、アイコンやウィンドウ、ボタン、メニューなど、視覚的要素でユーザーがアプリケーションを操作できる仕組みです。GUIのおかげで、コマンドを文字で入力しなくても、直感的な操作(アイコンをクリック、ファイルをドラッグ&ドロップなど)が可能になります。
  • 画面設計・帳票設計
    • アプリケーションが表示する画面(UI画面)の配置や構成、流れを考える「画面設計」や、印刷物やデータ出力形式として用いる「帳票設計」は、ユーザーにとって使いやすく・わかりやすい操作や情報提示を実現するために重要な作業です。帳票とは、請求書、領収書、発注書、報告書など、必要な情報を整えた文書を指します。アプリケーションは、こういった帳票をわかりやすいレイアウトで出力できるように工夫されます。
  • Webデザイン
    • Webデザインは、WebサイトやWebアプリケーションの見た目や操作性を設計することです。文字や画像、ボタンの配置、色遣い、ナビゲーションメニュー、レスポンシブデザイン(スマートフォンやパソコンなど異なる画面サイズでも快適な表示を行なう手法)などが重要な要素となります。
  • 人間中心設計
    • 人間中心設計は、システムやソフトウェアの開発プロセスにおいて「常に利用者の視点に立って」設計・改善していく考え方です。実際のユーザーに試用してもらい、そのフィードバックをもとに改善を行ない、より使いやすいアプリケーションやWebサービスを目指します。

ソフトウェアの説明は以上です。

ここまでの学習で、コンピュータが情報処理装置であり、ハードウェアとソフトウェアが連携し、OSがその基盤として機能していることを理解しました。また、OS上で動作するアプリケーションが、ユーザーが必要とする作業を実現していることも学びました。次は、コンピュータで実行される「プログラム」について、その本質と動作の仕組みを詳しく解説します。

Lesson 2Chapter 9
プログラムとは何か、どのように動くのか

プログラム は、コンピュータに対して「何を、どのように行なうか」を明示的に伝える設計図のような存在です。

コンピュータは、自分で考えて行動できるわけではなく、人間があらかじめ示した手順(命令)に忠実に従います。プログラムは、これら「コンピュータに実行させたい命令」を文字や記号でまとめたものであり、その中には「この数値を計算する」「この条件を満たしたら別の処理を行なう」「ファイルからデータを読み込む」といった具体的な手順が記述されています。

プログラムが存在することで、人間は自分の意図をコンピュータに正確かつ効率的に伝えることができます。こうして、プログラムは人間が考えた手順をコンピュータで再現する媒介になり、コンピュータはプログラムに従って複雑な処理を正確かつ高速に、実行できるようになります。

Lesson 2Chapter 9.1
高水準言語と低水準言語

プログラムは、人間が読みやすい形で記述することが望まれます。このため、プログラムは通常、高水準言語 と呼ばれる、人間にとって理解しやすい表現を用いるプログラミング言語で書かれます。高水準言語には、英単語やわかりやすい記号が組み込まれ、C言語、Java、Pythonなどがその代表例です。高水準言語は、人間に理解しやすい一方で、コンピュータにとっては直接実行しづらい形式です。

Pythonのプログラムの例:

a = 5
b = 3
result = a + b
print(f"足し算の結果: {result}")
拡大表示

プログラムを実行するために、コンピュータは最終的に「0」と「1」のビット列で構成された「マシンコード(機械語)」を理解し、実行します。マシンコード はCPUが直接読み取り、命令として実行できる形式であり、人間には非常に扱いにくい「低水準」の表現です。

手順→高水準言語→マシンコードへの変換イメージ

Lesson 2Chapter 9.2
マシンコードとCPUの命令サイクル

マシンコードが用意されると、チャプター3で学んだように、CPUは命令サイクルを繰り返してプログラムを高速に処理します。

Lesson 2Chapter 9.3
プログラムとOSの連携

プログラムはOSと連携して動作します。プログラムが実行されると、OSはプログラムに必要なメモリ領域を確保し、CPU時間を割り振ります。プログラムがファイル操作やネットワークアクセスを要求した場合は、対応するハードウェアを正しく扱う処理を提供します。

「プログラムとは何か、どのように動くのか」の説明は以上です。ハードウェアとソフトウェア、OS、プログラムの基本的な役割と関係性について理解が深まりました。

次は、コンピュータが内部で「データ」をどのように扱っているのかを説明します。抽象的な「0と1」の世界から、具体的なデータ(数値、文字、画像、音声など)へと変換される過程を示します。

Lesson 2Chapter 10
コンピュータ内部でのデータ処理

コンピュータ内部では、すべての情報が「0」と「1」という2つの状態の組み合わせで表現されます。これは、コンピュータが電気信号の「有無」や「オン・オフ」という単純な二値状態をもとに動作しているためです。「0」は電圧が低い状態、「1」は電圧が高い状態といった具合に、物理的なレベルでは非常にシンプルな仕組みが土台にあります。

たった2つの値しか使えないように見えますが、この0と1並びは、膨大な表現力を持っています。

それを理解するために、ここでは最初に数値を表現する「基数」について学んでから、情報を扱う単位である「ビットやバイト」、具体的なデータの表現方法へと話を進めていきましょう。

Lesson 2Chapter 10.1
基数とは

基数(きすう)とは、数を表すときに「1桁で使える数字の種類がいくつあるか」を示す考え方です。

たとえば「基数が10」の場合、0から9までの10種類の数字を1桁として使えます。このような数え方を「10進数」と呼びます。同じように、「基数が2」の場合は0と1の2種類しか使わないので「2進数」、「基数が16」の場合は0~9とA~Fの16種類を使うので「16進数」と呼びます。

10進数

10進数(じゅっしんすう)は、普段、私たちが使っている「0, 1, 2, 3, …, 9」までの数字を用いた数え方です。

10進数は、1桁で使える数字の種類が0から9までの10種類あります。

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

2進数

2進数(にしんすう)は「基数が2」の数え方です。0と1の2種類の数字しか使わないため、1桁で表せる数は0と1のみになります。

0, 1

コンピュータ内部ではすべてのデータが2進数で表されます。たとえば、2進数の 101 は10進数の 5 に相当します。

  • 2進数:101
  • 10進数:1×22+0×21+1×20=4+0+1=5

16進数

16進数(じゅうろくしんすう)は、「基数が16」の数え方です。16進数は、0~9までの10種類に加え、A~Fという英字を用いて16種類の数字を1桁で表します。

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

「A」は10進数の10、「B」は11、「C」は12、「D」は13、「E」は14、「F」は15に対応します。

16進数は、2進数との相性が非常に良いことから、コンピュータでのメモリアドレスや機械語の表現などでよく使われます。2進数は桁数が長くなりやすいという欠点がありますが、16進数では1桁で2進数4桁分を表現できるため、見通しが良くなります。

たとえば、16進数の 1A は、10進数の 26 に相当します。

  • 16進数:1A
  • 10進数:1×161+10×160=1×16+10×1=26

基数変換

基数変換 とは、数値をある基数(進数)から別の基数に変換することを指します。以下に2進数、10進数、16進数の対応例を示します。変換方法に慣れておきましょう。

2進数 10進数 16進数
1010 10 A
110101 53 35
1111111 127 7F
100000 32 20
11001001 201 C9
10101010 170 AA
11101111 239 EF
100111000 312 138
1010101111 687 2AF
1111111111 1023 3FF

補足:論理演算

論理演算 は、真偽値(0または1)を入力として、真偽値(0または1)を出力する演算方法です。コンピュータでのデータ処理は、すべて論理演算として行なわれます。

論理演算子には ANDORXORNOT の4種類があります。論理演算の結果は「真理値表」で表します。真理値表 は、すべての入力組み合わせに対する出力結果を示す表です。

論理演算の表現には「集合」と「ベン図」が良く使われます。集合 とは、物の集まりのことです。例えば、「A = {1, 2, 3}」は、1, 2, 3という要素を持つ集合Aを表します。ベン図 は、集合を図で表す方法です。

AND (論理積)

  • 意味: AとB両方が真のときだけ真となる演算。
  • 記号: , &, ·
  • ベン図: AとBの重なり合う部分のみが真(1)を表します。

出典:Wikipedia - ベン図より

  • 真理値表:
A	B	A AND B
0	0	0
0	1	0
1	0	0
1	1	1

OR (論理和)

  • 意味: AまたはBのどちらか一方、もしくは両方が真のとき真となる演算。
  • 記号: , +
  • ベン図: AとBを合わせた領域が真(1)を表します。

出典:Wikipedia - ベン図より

  • 真理値表:
A	B	A OR B
0	0	0
0	1	1
1	0	1
1	1	1

XOR (排他的論理和)

  • 意味: AとBのどちらか一方だけが真のとき真となる演算。両方が真、または両方が偽の場合は偽となります。
  • 記号:
  • ベン図: AとBの重ならない部分(Aだけ、またはBだけ)が真(1)を表します。

出典:Wikipedia - ベン図より

  • 真理値表:
A	B	A XOR B
0	0	0
0	1	1
1	0	1
1	1	0

NOT (論理否定)

  • 意味: 入力の真偽を反転させる演算。
  • 記号: ¬, !, '
  • ベン図: 集合Aの補集合(Aに含まれない部分)を表します。

出典:Wikipedia - ベン図より

  • 真理値表:
A	NOT A
0	1
1	0

さらに、NOTAND を組み合わせた NANDNOTOR を組み合わせた NOR も使用されます。

NAND (否定論理積)

  • 意味: AND演算の結果を否定する演算。
  • 記号: ¬(A∧B), A NAND B

真理値表:

A	B	A NAND B
0	0	1
0	1	1
1	0	1
1	1	0

NOR (否定論理和)

  • 意味: OR演算の結果を否定する演算。
  • 記号: ¬(A∨B), A NOR B

真理値表:

A	B	A NOR B
0	0	1
0	1	0
1	0	0
1	1	0

具体的な例:

A = 1 (真), B = 0 (偽) とすると、

  • A AND B = 1 AND 0 = 0
  • A OR B = 1 OR 0 = 1
  • A XOR B = 1 XOR 0 = 1
  • NOT A = NOT 1 = 0
  • A NAND B = 1 NAND 0 = 1
  • A NOR B = 1 NOR 0 = 0

これらの論理演算は、コンピュータの回路設計やプログラミングにおいて基礎となる重要な概念です。 理解を深めるには、さまざまな入力値を代入して真理値表を自分で作成してみることをお勧めします。

Lesson 2Chapter 10.2
ビット(bit)とバイト(byte)

ビット(bit)は、コンピュータが扱う情報量の最小単位です。1ビットは0または1の情報を表します。

0, 1

バイト(byte)は、複数のビットをまとめて扱う単位です。1バイトは通常「8ビット」をまとめた単位として扱われます。8ビットで表現できる情報は、2進数でいうと8桁分の0/1組み合わせを表せるため、 28=256 通りの状態を表現できます。

00000000 ~ 11111111(256通り)

データの大きさや容量を表す単位

コンピュータの世界では、データの大きさや容量を表す際に「バイト」を基本単位として、その大きさが大きくなるにつれてキロ(K)・メガ(M)・ギガ(G)・テラ(T)といった接頭辞(プレフィックス)を用いることがよくあります。これらは、バイトの「集合体」の大きさや容量をわかりやすく示すために使われます。

「キロ(K)」は本来「1000倍」を意味しますが、コンピュータの分野では一般的に「1キロバイト(KB)」を「1024バイト」と定義します。これは2進数が基本であるコンピュータにおいて、1024が「2の10乗」と扱いやすいためです。

以降、メガ(M)・ギガ(G)・テラ(T)と、同様の考え方で定義します。

単位 一般的な意味 コンピュータでの定義 バイト数の計算
キロバイト (KB) 1000倍 1024バイト 2の10乗(1024バイト)
メガバイト (MB) 100万倍 1024キロバイト 2の20乗(約1,048,576バイト)
ギガバイト (GB) 10億倍 1024メガバイト 2の30乗(約1,073,741,824バイト)
テラバイト (TB) 1兆倍 1024ギガバイト 2の40乗(約1,099,511,627,776バイト)

このように、2進数や16進数、ビットとバイトといった概念を理解することで、「コンピュータ内部ではすべてが0と1で表される」という抽象的な事実を、実用的でわかりやすい枠組みに当てはめることができます。具体的な例で確認しましょう。

メモリはスイッチの塊

データはメモリ上に0または1の値で保持されます。つまり、メモリは膨大なスイッチで構成されており、それらのスイッチのON/OFFによって、すべてのデータが表現されているのです。

最近のメモリの容量は、ギガバイト(GB)単位のものが普通です。たとえば、16GB = 160億バイト = 1,280億ビットとなるので、1,280億個のスイッチで構成されていることがわかります。それだけのスイッチが小型化されて、小さいチップの中に敷き詰められているのです。

Lesson 2Chapter 10.3
文字コードと文字情報の表現

文字コード とは、コンピュータで文字を扱うために、文字や記号に数字を割り当てた対応表のことです。人間は文字を見て理解できますが、コンピュータは数字しか理解できません。そこで、文字に数字を対応させることで、コンピュータでも文字を処理できるようになります。

たとえば「A」という文字には、対応する文字コードが割り当てられており、その数値が2進数で表されて格納されます。

歴史的にはASCIIコードという文字コード表が基本として使われ、A~Z、a~z、0~9などの英数字や一般的な記号が特定の数値に割り当てられました。ASCIIは1バイト(8ビット)の範囲で扱えるため、最大256種類の文字や記号を表せます。

ASCIIコード表の例

       0x0?   0x1?   0x2?   0x3?   0x4?   0x5?   0x6?   0x7?
0x?0   NUL    DLE    SP     0      @      P      `      p
0x?1   SOH    DC1    !      1      A      Q      a      q
0x?2   STX    DC2    "      2      B      R      b      r
0x?3   ETX    DC3    #      3      C      S      c      s
0x?4   EOT    DC4    $      4      D      T      d      t
0x?5   ENQ    NAK    %      5      E      U      e      u
0x?6   ACK    SYN    &      6      F      V      f      v
0x?7   BEL    ETB    '      7      G      W      g      w
0x?8   BS     CAN    (      8      H      X      h      x
0x?9   TAB    EM     )      9      I      Y      i      y
0x?A   LF     SUB    *      :      J      Z      j      z
0x?B   VT     ESC    +      ;      K      [      k      {
0x?C   FF     FS     ,      <      L      \      l      |
0x?D   CR     GS     -      =      M      ]      m      }
0x?E   SO     RS     .      >      N      ^      n      ~
0x?F   SI     US     /      ?      O      _      o      DEL

しかし、世界中の言語をカバーするためにはASCIIでは不十分であり、現在ではUnicodeというより包括的な文字コード体系が主流となっています。Unicodeでは数万以上の文字が定義されており、UTF-8やUTF-16といった方式で、あらゆる言語や記号を統一的な規格で扱うことが可能です。

なお、文字コードが異なる環境でデータのやり取りをすると、文字化けを発生することがあります。これは、同じ数字が異なる文字に対応しているために起こる現象です。

文字化けの例

※出典:LINEヤフー株式会社

Lesson 2Chapter 10.4
整数と浮動小数点数の内部表現

コンピュータは数値計算をする際も0と1で表現されたビット列を使います。

整数の内部表現

整数は比較的単純で、2進数で表した数値をそのままビット列として格納します。

  • 正の整数: 通常の2進数表現を使用します。例えば、10進数の「5」は2進数で「0101」となります。
  • 負の整数:「2の補数」と呼ばれる方法でビットパターンを工夫します。これは、正の数をビット反転(0を1に、1を0に変換)し、それに1を加えることで得られます。例えば、-5を4ビットで表現する場合、5(0101)のビット反転は1010、それに1を加えると1011となります。これが-5の2の補数表現です。

浮動小数点数の内部表現

一方、小数点を含む実数(浮動小数点数)は、より複雑な表現が必要です。浮動小数点数は、科学的記数法のような形式を2進数で実現し、符号ビット、指数部、仮数部といった構成要素に分けて表します。

  • 符号ビット: 数値の正負を表します(0は正、1は負)。
  • 指数部: 小数点の位置を表します。
  • 仮数部: 数値の有効数字を表します。

IEEE 754という標準規格が有名で、これによってコンピュータは非常に大きな数から非常に小さな数まで、ある程度の精度で扱うことができます。IEEE 754では、単精度(32ビット)と倍精度(64ビット)などが定義されており、それぞれビットの割り当てが異なります。以下は単精度(32bit)の構成例です。

符号ビット 指数部 仮数部
1bit 8bit 23bit

Lesson 2Chapter 10.5
画像や音声、その他メディアデータをビット列として扱うイメージ

文字や数値だけでなく、画像、音声、動画といったメディアデータもすべて0と1のビット列で表されます。

画像

画像はピクセルと呼ばれる微小な点の集まりで表され、それぞれのピクセルが「赤・緑・青(RGB)」などの色成分を数値で示します。これらの数値も0と1からなるビット列です。

音声

音声は空気の振動をマイクが電気信号に変換し、その信号を一定間隔でサンプリングして数値化(デジタル化)します。こうして得られた数値列がビット列として保存され、再生時にはスピーカーで再びアナログ信号(音波)に戻します。

動画

動画は画像が連続して並んだもので、それに音声が組み合わさったものとして表すことができます。

このように、一見すると全く異なる種類の情報であっても、コンピュータ内部ではすべてがビット列として統一的に処理されています。どんなデータも「数値化」できさえすれば、0と1の世界で取り扱えるのです。

Lesson 2Chapter 11
まとめ

このレッスンでは、コンピュータの基礎をハードウェアとソフトウェアの両面から説明しました。

CPU、メモリ、入出力装置といったハードウェアがどのように連携し、OSがそれらを制御してアプリケーションを実行するのか、その仕組みを学びました。

さらに、プログラムがコンピュータへの指示書であり、すべてのデータが0と1のビット列で表現されることも理解しました。

これらの知識は、今後のITスキル習得の基盤となります。以降のレッスンでさらに知識を深め、ビジネスの現場でITを効果的に活用していくための第一歩を踏み出しましょう。

このレッスンで学んだこと

このレッスンで学んだことを振り返り、理解度を確認しましょう

  • コンピュータは情報処理装置であり、「入力→処理→出力」の仕組みで動作する
  • 処理は「記憶・演算・制御」で構成され、CPUが中心的な役割を担う
  • CPUは制御装置と演算装置から成り、クロック周波数、コア数、レジスタサイズが性能を左右する
  • 記憶装置は主記憶装置(メモリ)と補助記憶装置(ストレージ)に分類され、階層構造を持つ
  • メモリはCPUの作業領域であり、データはアドレスによって管理される
  • 入力装置はキーボードやマウスなど、出力装置はディスプレイやプリンターなどがある
  • OSはハードウェアとソフトウェアをつなぐ基盤であり、ファイル管理やUI提供、セキュリティ機能を持つ
  • ファイルシステムはファイルをフォルダで階層的に管理する仕組み
  • アプリケーションは特定の目的を持つソフトウェアで、OS上で動作する
  • プログラムはコンピュータへの指示書であり、高水準言語からマシンコードに変換される
  • コンピュータ内部では、すべてのデータが0と1のビット列で表現される
  • 文字、数値、画像、音声など、あらゆるデータはビット列で表現・処理される

課題コンピュータと情報処理の理解度確認

下記の5つの質問に答えてください。「回答フォーマット」を参考にして、コメント欄に記入して提出してください。

  1. コンピュータの基本的な情報処理の流れを、「入力」「処理」「出力」の3つの言葉を入れて説明してください。
  2. 2進数で「10110」と表される数値を、10進数に変換するといくつになりますか?
  3. 主記憶装置(メモリ)と補助記憶装置(ストレージ)では、どちらのアクセス速度が速いですか?また、その理由を簡潔に説明してください。
  4. OS(オペレーティングシステム)とアプリケーションソフトウェアの役割の違いを、それぞれの具体例を挙げて説明してください。
  5. コンピュータ内部では、なぜすべてのデータが「0」と「1」の組み合わせで表現されるのか、その理由を簡潔に説明してください。

回答フォーマット

1. 
2. 
3. 
4. 
5. 

Lesson 2Chapter 12
付録:コンピュータの歴史

この付録では、電子計算機、つまり電気で動作するコンピュータの歴史を解説します。必須学習内容ではありませんが、コンピュータへの理解を深めるための読み物としてご活用ください。

※出典元の記載およびリンクのない写真は、著作権の切れたものを掲載しています。

Lesson 2Chapter 12.1
最初の電子計算機:ENIAC

世界ではじめて、実用的かつ汎用的な電子計算機として広く認められているのは、ペンシルバニア大学で開発された ENIAC (Electronic Numerical Integrator and Calculator) です。アメリカ陸軍の資金提供を受け、1946年に発表されました。

ENIACはU字型で、長さ約30メートル、高さ約2.4メートル、幅約0.9メートルという巨大なものでした。CPUの役割を果たしていたのは真空管で、なんと約18,000本も使用されていました。

ENIACは加算、減算に加え、乗算、除算も可能でしたが、その性能は現代の基準から見ると非常に限られていました。例えば、加算処理は1秒間に約1,900回しか実行できませんでした。さらに、プログラミングはケーブルの差し替えやスイッチの設定を手作業で行なう必要があり、データ入力にはパンチカードを使用していました。そのため、簡単な計算プログラムを作成するだけでも30分~1日かかったと言われています。

Lesson 2Chapter 12.2
ノイマン型コンピュータ

ENIACのプログラミングの煩雑さを改善するため、研究者たちはプログラムをデータとして記憶装置に格納し、順番に読み込んで実行する「プログラム内蔵方式」を考案しました。この方式に基づき、EDVAC(Electronic Discrete Variable Automatic Computer)の設計が開始されました。

EDVACに関する文書を数学者のジョン・フォン・ノイマン氏が執筆・発表したことから、このプログラム内蔵方式は ノイマン型アーキテクチャ と呼ばれるようになりました。現代のコンピュータのほとんどがこのノイマン型アーキテクチャを採用していることから、ノイマン氏は「コンピュータの父」と呼ばれています。

Lesson 2Chapter 12.3
初期の商用コンピュータ

諸説ありますが、はじめて商業的に成功したコンピュータは、1951年に販売開始されたUNIVAC I(UNIVersal Automatic Computer)とされています。UNIVAC Iは合計48台製造されました。

その後、IBM社が1952年にIBM 701(19台販売)、1954年に701よりも小型・低価格のIBM 601を発売しました。しかし、IBM 601でさえ、大きさは約1.5m×0.9m×1.8m、重量は約650kg、価格は現在の価値で約441万ドルと、一般には手の届かないものでした。そのため、1950年代半ばまではコンピュータの将来を悲観的に見る意見も多かったようです。

Lesson 2Chapter 12.4
真空管からトランジスタへ

コンピュータの心臓部であるCPUは、真空管からトランジスタへと進化しました。

トランジスタは真空管に比べて小型、低消費電力、低発熱、高信頼性、長寿命といった多くの利点を持っていました。トランジスタを採用したコンピュータの1つであるIBM 1401は、1960年から1964年にかけて10万台以上販売されました。

Lesson 2Chapter 12.5
トランジスタから集積回路へ

トランジスタの小型化が進み、多数のトランジスタを1つの部品に集積することが可能になりました。これが 集積回路 (IC) です。 LSI (Large Scale Integration) とも呼ばれます。

集積回路をCPUに用いたコンピュータの登場は、コンピュータの爆発的な普及のきっかけとなりました。代表例として、IBM社が50億ドルもの投資の末、1964年に発表したSystem/360が挙げられます。System/360はアーキテクチャを統一した6モデルを上位機種から下位機種まで展開し、大きな成功を収めました。

集積回路技術は、スーパーコンピュータ(ILLIAC IV、Cray 1など)やミニコンピュータ(DEC PDP-8など)の開発も促進しました。

Lesson 2Chapter 12.6
マイクロプロセッサとパーソナルコンピュータ

1971年、Intel社が世界初のマイクロプロセッサであるIntel 4004を開発しました。

マイクロプロセッサは、それまで多数の真空管、トランジスタ、集積回路で構成されていたCPUの機能を1つの集積回路に集約したものです。

マイクロプロセッサの登場により、家庭でも購入できる安価なパーソナルコンピュータの開発が進みました。初期のパーソナルコンピュータとしては、Apple社が1976年に発表したApple I、1977年に発売したApple IIが挙げられます。

しかし、パーソナルコンピュータが爆発的に普及するきっかけとなったのは、1981年にIBM社が発売した IBM PC です。IBM PC は他社によって多数コピー・互換機が製造され、部品価格の低下と IBM PC互換機 の市場シェア拡大につながりました。

Lesson 2Chapter 12.7
さらに小型化へ(スマートフォン・家電)

2007年のiPhone、2008年のAndroidスマートフォンの登場は、コンピュータの歴史における新たな転換点となりました。それ以前にもPDA(携帯情報端末)と呼ばれる小型機器は存在しましたが、処理能力や機能は限定的でした.

スマートフォンはパソコンに匹敵する処理性能を備え、ウェブブラウジング、メール、音楽再生、写真撮影、電話機能など多様な機能を提供することで、急速に普及しました.

近年では、家電製品にも高性能なCPUが搭載され、インターネットに常時接続したスマート家電が登場しています。冷蔵庫、洗濯機、エアコン、テレビなど、さまざまな家電がインターネットに接続され、スマートフォンや音声アシスタントを通じて制御できるようになりました。CPUやコンピュータの小型化・高性能化は、私たちの日常生活をより便利で豊かに変化させています。

Lesson 2Chapter 12.8
コンピュータ技術の進化

現代では、コンピュータ技術の進化に伴い、さまざまなサービスが登場してきています。

クラウドコンピューティングの台頭

2010年代以降、クラウドコンピューティング が急速に普及しました。クラウドコンピューティングとは、インターネット経由でアクセスできる、共有のリソースプール(サーバー、ストレージ、アプリケーションなど)を利用するコンピューティングモデルです。ユーザーは必要なときに必要なだけリソースを利用でき、初期投資や運用コストを削減できます。クラウドコンピューティングの普及により、ソフトウェアやデータへのアクセス方法が大きく変化し、SaaS(Software as a Service)、PaaS(Platform as a Service)、IaaS(Infrastructure as a Service)といったサービスモデルが広く利用されるようになりました。

AI(人工知能)の進化と深層学習

近年、AI(人工知能) 技術、特に深層学習(ディープラーニング)が急速に進歩しています。深層学習は、人間の脳の神経回路を模倣したニューラルネットワークを多層構造にすることで、大量のデータから複雑なパターンを学習できます。画像認識、音声認識、自然言語処理など、さまざまな分野で高い精度を達成し、自動運転、医療診断、金融取引など、さまざまな応用が進んでいます。GPU(Graphics Processing Unit)の性能向上や、大量のデータセットの整備が、深層学習の発展を支えています。

量子コンピュータの研究開発

量子コンピュータ は、量子力学の原理に基づいて動作するコンピュータです。従来のコンピュータとは異なり、量子ビットと呼ばれる情報単位を使用し、重ね合わせや量子もつれといった量子力学的な現象を利用することで、特定の種類の計算を従来のコンピュータよりもはるかに高速に実行できます。創薬、材料科学、金融モデリングなど、さまざまな分野への応用が期待されていますが、実用化にはまだ多くの技術的課題が残されています。

エッジコンピューティングの登場

データ処理をクラウドではなく、データが発生する場所に近い「エッジ」で行なう エッジコンピューティング も注目されています。IoTデバイスの普及により、生成されるデータ量が爆発的に増加しており、すべてのデータをクラウドに送信して処理することは現実的でなくなってきています。エッジコンピューティングは、データ処理の遅延を低減し、ネットワーク帯域幅の負担を軽減できるため、自動運転、工場の自動化、遠隔医療など、リアルタイム性が求められるアプリケーションで特に重要となります。

これらの技術革新は相互に関連し合い、コンピュータ技術は今後も進化を続けていくでしょう。これらの進歩は、私たちの社会や生活に大きな影響を与え、新たな可能性を切り開いていくと考えられます。