CPUとは?意味・定義・仕組みを初心者向けにわかりやすく解説
あらゆるコンピューティングデバイスには、必ずCPUが搭載されています。
「CPU」という言葉を耳にしたことはあるけれど、実際に何を指すのか、そしてどのように動作しているのか、詳しく知らない方も多いのではないでしょうか。
この記事では、初心者の方でもわかるように、CPUの基本概念とその仕組みについてわかりやすく解説します。
CPUとは?コンピュータのどこにある?
CPUは「Central Processing Unit(中央演算処理装置)」の略称で、「プロセッサ」や「マイクロプロセッサ」とも呼ばれます。
デジタルコンピューティングシステムにおいて、最も重要といっても過言ではないハードウェア部品です。
CPUの内部には、何千個もの微細なトランジスタが詰め込まれています。トランジスタとは、集積回路を流れる電気のオン・オフを制御する極小のスイッチのようなものです。
CPUは、コンピュータのマザーボードと呼ばれる基板上に搭載されています。
マザーボードはコンピュータ内部の中心的な回路基板で、すべてのハードウェア部品を相互に接続する役割を担っています。
すべてのデジタルシステムの「脳」であり「心臓」とも称されるCPUは、コンピュータが行うあらゆる動作を実行し、プログラムを処理する責任を負っています。
コンピュータプログラムとは?どこに保存されている?
CPUが行う動作には、すべて対応するプログラムが存在します。
Webブラウザやワープロソフトを利用するためのプログラム、電卓で計算を行うプログラム、キーボードから文字を入力するプログラム。さらには、マウスによるクリックや選択、ノートPCのタッチパッド操作を管理するプログラムまであります。
何であれ、コンピュータ上のあらゆる活動には、必ずプログラムが存在するのです。
プログラムとは、論理的な順序に従って、正確に一歩ずつ実行されるべき命令の集まりです。
プログラムは、人間が読み書きできる言語――すなわちプログラミング言語――を使って、プログラマーによって記述されます。
しかし、コンピュータはプログラミング言語を直接理解することができません。そこで、機械が理解しやすい形式へと変換する必要があります。
この変換後の形式こそが、機械語(バイナリ)と呼ばれるものです。
バイナリは2進法の数値体系で、0と1というたった2つの数字だけで構成されます。
これは、電気の流れを制御するトランジスタが持つ2つの状態――オン(1)かオフ(0)か――と見事に対応しています。
つまり、プログラムは内部ではビットの連なりとして保存されています。ビットとは、2進数の桁(1と0の列)を指す別名です。
プログラムは、HDD(ハードディスクドライブ)やSSD(ソリッドステートドライブ)といったストレージデバイスに、長期的に保存されます。
これらは不揮発性メモリと呼ばれ、電源が切れていてもデータを保持し続けることができます。
一方、プログラムが起動して実行中の間は、そのデータはすべて主記憶装置であるRAM(ランダムアクセスメモリ)に置かれます。
RAMは揮発性メモリであり、電源が落ちると保存されていたデータはすべて失われてしまいます。
CPUは何をしているのか?
ひとことで言えば、CPUは論理演算や数値計算の処理を担当し、与えられた命令を遂行する役割を果たしています。
CPUは1秒間に数百万件もの命令を処理できますが、一度に実行できるのは原則として1つの命令だけです。
まず、CPUはモニター、キーボード、マウス、マイクなどの入力デバイス、あるいはWebブラウザやOSといったアプリケーション・システムソフトウェアから、何らかの入力を受け取ります。
続いて、CPUは以下の4つのタスクを担います。
- フェッチ(読み出し):メモリから命令を取得し、受け取った入力データに対してどの命令を実行すべきかを把握します。具体的には、対応する命令のアドレスを特定し、その要求をRAMへ送ります。CPUとRAMは常に密接に連携しながら動作しています。この工程は「メモリからの読み出し」とも呼ばれます。
- デコード(解読):取得した命令を、CPUが理解できる形式である機械語(バイナリ)へと変換します。
- 実行:解読された命令を実際に実行します。
- ストア(書き込み):実行結果をメモリへ書き戻し、後から要求された際にすぐ取り出せるようにします。この工程は「メモリへの書き込み」とも呼ばれます。
最後に、画面への表示など、何らかの形で出力が行われます。
この一連の流れはフェッチ・実行サイクル(fetch-execute cycle)と呼ばれ、1秒間に数百万回も繰り返されています。
CPUの主要な構成要素
CPUがコンピュータ上のあらゆる処理を担っていることがわかったところで、その作業を支えているのはどのような部品なのでしょうか。
ここでは、CPU内部の重要な構成要素をいくつか紹介します。
- CU(制御ユニット/Control Unit):入出力の流れ全体を制御する部分です。メインメモリから命令を取り出し(フェッチ)、それを解読(デコード)する役割を担っています。
- ALU(演算論理ユニット/Arithmetic Logic Unit):すべての処理が行われる中枢部分です。足し算・引き算・掛け算・割り算といった数値計算に加え、データの比較など意思決定に関わる論理演算もここで実行されます。
- レジスタ(Registers):極めて高速に動作する記憶領域です。フェッチ・実行サイクルの過程で処理中のデータや命令が一時的に格納され、プロセッサが素早くアクセスできるようになっています。
CPUコアとは?
これまでに、CPUは基本的に一度に1つの動作しか実行できないことを学びました。
CPUは1度に1つの命令を実行しており、この動作は物理コアによって支えられています。
本質的に、コアとはそれ自体がひとつのCPUであり、メインのCPUチップの中に収められた独立した処理装置です。つまり、それぞれのコアもまた、一度に1つの処理しか行えません。
しかし、現代のコンピュータでは、1つのチップ内に複数のコアを搭載することが可能になっています。
コアの数が多いほど計算能力は向上し、同時に実行・完了できるタスクも増えます。これにより、CPUは並列にマルチタスクをこなせるようになるのです。
たとえば、デュアルコアCPUは同一チップ上に2つのCPUを持ち、2つの命令を同時に実行できます。
クアッドコアCPUなら4つ、ヘキサコアCPUなら6つのコアを搭載している、という具合です。
ハイパースレッディングとは?
現代のCPUは、ハイパースレッディングと呼ばれる技術にも対応しています。
この技術では、1つの物理コアがあたかも複数の物理コアであるかのように振る舞い、OSは実際よりも多くのコアが存在すると認識します。その結果、コンピュータは本来以上の性能を持っているかのように動作できるのです。
つまり、前述の物理コアに加えて、仮想コア(スレッド)と呼ばれるものも存在します。
これらは実際の物理コアではありませんが、システムからは物理コアと同じように見えます。
物理コアと仮想コアを組み合わせることで、プログラムの実行速度はさらに向上し、CPUの計算能力も一段と高まります。
まとめ
最後までお読みいただき、ありがとうございました。CPUとは何か、どのような働きをしているのか、そしてなぜそれほど重要なのかについて、理解が深まったのではないでしょうか。
コンピュータの基礎知識をもっと身につけたい方は、コンピュータの基本構成を解説したガイド記事もぜひチェックしてみてください。
それでは、楽しい学びの時間を!
-
Svchost.exeとは?svchost.exe(netsvcs)によるCPU・メモリ使用率の高騰を解決する方法
多くのWindowsユーザーから、「svchost.exe(netsvcs)がCPU使用率を異常に占有する」という不審で深刻な問題の報告が寄せられています。この問題が発生すると、パソコンが正常に起動しなくなったり、場合によってはプログラムが一切実行できなくなることもあります。 あなたもnetsvcsによるメモリ使用量の高騰にお困りなら、ぜひこの記事を最後までお読みください。svchostが引き起こすCPU使用率の高騰やメモリリークを解決するための詳細な手順をご紹介します。 その前に、まずはsvchost.exeについての基本情報を確認しておきましょう。 Service Host(svchost
-
CPUとGPUの違いとは?仕組み・性能・役割の違いを徹底解説
CPUとGPUは、コンピューターシステムにおいて欠かせない2つの重要なデバイスですが、その働きはまったく異なります。CPU(中央処理装置)は、演算、論理、制御、入出力などの処理に従ってプログラムから与えられた命令を実行するマイクロプロセッサです。一方、GPU(グラフィックス処理装置)は、コンピューター画面に画像を描画するための内部デバイスです。CPUの設計思想は「低レイテンシ(低遅延)」を重視しているのに対し、GPUは「高いスループット(処理性能)」を持続的に提供することに重点を置いています。 この2つはまったく異なる存在ですが、コンピューターを正常に動作させるためにはどちらも同じくらい重要で