コンピュータとコンピュータサイエンスの楽しさを伝えます。

【制御装置】プログラムの流れ自由自在

【制御装置】プログラムの流れ自由自在

売れっ子芸能人の陰に敏腕マネージャーあり。与えられた命令を全力で実行する処理装置に、次の命令、その次の命令をテンポよく与えていく制御装置は、処理装置に対するマネージャーのようなものです。

【制御装置】プログラムの流れ自由自在

命令を連ねたものがプログラム。普段はメモリに格納されています。条件分岐や繰り返しのないプログラムだったら、メモリに入っている順番に命令を実行していけばよいでしょう。しかし条件分岐や繰り返しがある場合には、実行順序を飛ばしたり、戻ったりする必要が生じます。

制御装置は、プログラムカウンタ(PC)というレジスタが指しているメモリアドレスから命令を取得し、処理装置に次々に与えます。状況に合わせてPCの値を操作することで、命令の実行順序を飛ばしたり戻したりしています。

PCの操作もプログラムに従って行われます。時に人間よりも賢い判断をしているように見えるコンピュータですが、全てはプログラマーの筋書きどおりなのです。

 

プログラムの流れを変える

プログラムの流れを変える(朝の準備のフローチャート)

「朝の準備」のフローチャートです。厳密なプログラムではありませんが、これを用いて制御装置の役割を解説します。寝坊したかどうか、雨が降っているかどうか、という2つの条件分岐を含んでいます。

 

プログラムの流れを変える(「朝の準備」プログラムのメモリ内での表現)

図の説明

  • 「朝の準備」プログラムのメモリ内での表現です。アドレス0からアドレス7までを使って格納していて、アドレス0が最初の命令です。
  • それぞれの命令には、「次の命令のアドレス」を指定する情報が含まれています。通常は次のアドレスを指定します。条件分岐の場合はYesの場合とNoの場合を別々に指定することができます。

 

プログラムカウンタ(PC)の仕組み

プログラムカウンタ(PC)の仕組み

プロセッサは命令を1つずつ実行していきます。命令1つの実行作業を「サイクル」と呼び、サイクルを繰り返すことで命令を順次実行していきます。

制御装置はPCを順次書き換えることで、次の命令のアドレスを処理装置に指示します。

処理装置はPCが指し示すアドレスの命令を実行します。条件分岐の際には、条件判定結果を生成すると、それに従って制御装置がPCを書き換えます。

 

 

  • Facebook
  • Hatena
  • twitter
  • Google+

2進数で遊ぼう!オリジナル商品

  • facebook
  • twitter

つぶやき

PAGETOP
Copyright © かながわグローバルIT研究所 All Rights Reserved.
Powered by WordPress & BizVektor Theme by Vektor,Inc. technology.