2.Cコンパイラと組み込み向けC言語の特徴

開発の流れ

 組み込み向けC言語といっても,プログラムの記述方法は,Windowsなどのアプリケーションを開発するときのC言語と同じです.パソコンやワークステーション上で動作するアプリケーションプログラムをC言語でプログラミングした経験があれば,組み込みシステムのプログラムも書けます.

 ただし,PC用のアプリケーションプログラムと組み込みシステム用のプログラムとでは,C言語でプログラムを記述する前の段階に決定的な違いがあります.

● 開発の流れ

 C言語で記述したソースプログラムは,そのままでは単なるテキストファイルです.ソースプログラムを,PCやワークステーション,マイコン組み込み機器などのハードウェアで実行できる形式(機械語)に変換する必要があります.このためのツールを総称して,ここではコンパイラと呼びます.

 コンパイラは,テキストベースのソースプログラムをコンパイル(翻訳)し,各種ライブラリやモジュールなど必要なファイルをリンク(結合)し,最終的にバイナリコード(機械語)へと変換します.

 コンパイラの仕様にもよりますが,一般的なコンパイラの動作について説明します(図2).起動すると,コンパイラドライバによりコンパイラ内部のプリプロセッサやパーサ,コードジェネレータなどのツールが呼び出されます.Cソースプログラムはアセンブラソースにいったん変換されます.アセンブラソースはアセンブラによりアセンブルされ,オブジェクトファイルが生成されます.オブジェクトファイルは,リンカにより,ライブラリやプログラム実行のために必要なモジュールとリンクされ,最終的な実行形式オブジェクトファイル(機械語:バイナリコード)が生成されます.そしてバイナリコードは,PCや組み込み機器などのCPUで実行されます.

〔図2〕コンパイラの基本的な動作

 

1.組み込み機器とさまざまなプログラミング言語
 機械語/アセンブリ言語/高級言語
 C言語のメリット/デメリット

2.Cコンパイラと組み込み向けC言語の特徴
 開発の流れ
 ネイティブコンパイラ/クロスコンパイラ...


3月号特集トップページへ戻る


Copyright 2002 山本繁寿/有末一寿