2007年10月3日水曜日

テルとカツオのC言語講座 その1-#pragmaとは?

C言語で使用されている#pragmaとは?

#pragmaはコンパイラ独自のコンパイラに対する拡張命令(機能)を提供する為のものです。
次の例はルネサステクノロジーのマイコンでの使用例です。
インラインアセンブラの様な使い方も可能な様です。

#pragma sfr
#pragma di
#pragma ei
#pragma interrupt INTTM80 vect_INTTM80

ちなみに#asmでインラインアセンブラを記述出来る処理系もあります。
C言語とアセンブラの両方を使うときびきびした動きのプログラムを作成出来ます。
プログラムが処理系に依存するのはお勧めではないですが、
ソフトはハードよりも硬いらしいのでこのような機能もどんどん使用して性能向上した方がいいと思っています。
コンパイラの最適化機能に頼りすぎたプログラムはどーも信用出来ません。
コンパイラの最適化の癖をつかんでそーすを記述するのが良いと考えています。

カツオ君、どう思いますか?

0 件のコメント: