質問: cpuの1周期で行われること こんにちは。前から疑問に思っていたことを質問させていただきます。 それは、cpuのクロック周波数のことです。 クロック周波数とは、cpuのリズムのようなものであると思っています。例えば、512mhzだったら、1秒間に512m回のリズムでcpuがデータを処理しているという風に想像しています。 ここでの「データの処理」というのが、自分の頭の中ではっきりしていません。cpuの1周期では一体何が、どれだけ実行されるのでしょうか。 (cpuの中でどのようなことが行われているのかは大体わかります。cpuの1周期で何が起きているということがわかりません。) どれだけという点で言うなら、例えば32bitcpuなら、単純に1秒間に32bit*512mのデータを処理する(100%能力を発揮したとして)ということになるのでしょうか。
回答: cpuにはいろいろあるので一概にはいえませんが1クロックで1命令を処理します。 つまり単純なものだったら メモリからデータaの読み込み メモリからデータbの読み込み 数式(たとえばかけ算) 計算結果をストアする ストアされたものをメモリに書き込む などこれだけのステップがかかります。 ですからクロック数では一概に処理数は読めません。 cpuによてはたとえばrisc型のものだったら複数の命令を1クロックで処理できるなどして高速化できます。アップルのマッキントッシュなどに使われているpowerpcなんかはこのタイプですね。ですからwindowsマシンと単純にクロックによる速度比較ができないんです。 >例えば32bitcpuなら、単純に1秒間に32bit*512mのデータを処理する(100%能力を発揮したとして)ということになるのでしょうか。 上記に書いたように処理手順があるのでそんなことはないです。