Renesas Synergy™

FAQ 1006477 : マイコンの命令は、どういう構成になっているのですか。

マイコンの動作をレジスタ・レベルで直接定義する命令(インストラクション)記述は、アセンブリ言語です。アセンブリ言語は、基本動作を定義するニモニックと、アクセス対象の内部レジスタやアドレス(メモリ、I/O)を指定するオペランドで構成されます。
C言語では、マイコンの命令を直接意識せず、演算や転送、判断などの概念を記述します。C言語とマイコンの命令セットとの関連付けは、Cコンパイラが行います。このため、Cコンパイラによって、コードの生成効率が異なります。
また、Cコンパイラやアセンブラが生成する機械語は、マイコンが直接実行できる形式の命令コードとなります。



内部レジスタ間アクセスを1バイトの命令コードで記述するマイコンであっても、転送先(dst)や転送元(src)に、メモリやI/Oのアドレスの値を記述する場合は、命令コードが2バイト以上になります。命令コードの1バイト目をオペコード(オペレーション・コード)と呼び、マイコンがオペコードを読み取ることをオペコード・フェッチといいます。マイコンは、フェッチしたオペコードを解析して、何バイト命令かを認識し、残りの命令コードがあるかどうか(さらに読み取ってから実行するかどうか)を判断します。

他にご質問がございましたら、リクエストを送信してください