• 締切済み

組込みでのC言語勉強法

はじめまして。 最近、組込みのC言語を勉強しています。 処理速度の面や、可読性の良いプログラム、効率のよいプログラムを書けるようになりたいと思っています。 引数の数はレジスタで処理できる範囲におさめる事や、 構造体を使用するときにはポインタで渡すなど、 コードを書く際に気をつけるポイントがまとまってる書籍やHPなどを知りませんか? もしくは参考にすべき、サンプルコードなど知っていましたら、情報をいただけるとありがたいです。 よろしくお願いします。

みんなの回答

  • yphkz4063
  • ベストアンサー率23% (34/144)
回答No.3

教科書よりコンパイル後のコードを見たほうが、よほど勉強になると思います。 スキルの高い人なら、初めて使うコンパイラの性能を見るときにはそうします。 慣れれば、難しいことではありません。

  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.2

私は読んだことがないのでナニですが… Amazon.comで「組込み C言語」というキーワードで 検索してみると、何冊かの書籍が見つかります。 それらの中に、有用なものがあるかもしれませんし、 ないかもしれません。

catsuya
質問者

お礼

asuncionさん、ありがとうございます 早速検索してみました。 改訂版 組込みソフトウェア開発向けコーディング作法ガイド[C言語] (SEC BOOKS) (大型本) とか、良さ気な感じですね(題名だけですが。。。) 本屋で中身見てみようと思います。

  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.1

残念ながら「組み込み系にセオリーは無い」です。つまり「参考書が無い」のです。 どうして「セオリーが無い」かと言うと「組み込み系は、使用するCPUとメモリなど、マシンスペックが毎回違う」ので「あるCPUで最適な書き方が、別のCPUでは最悪の書き方になる」のです。 で、組み込み系のプロは「CPUごとに、そのCPUのマシンコードと、コンパイラがどんなマシンコードを出力するかを熟知していて、自分が書いているCのコードが、どんなマシンコードになるか予測しながら、Cのコードを書いている」のです。 まずは「良く使われているCPUの特性を知る」のが最初。 そして「こういうCのコードを書いたら、こういうマシンコードになる」と言うのを、少しづつ覚えて行くしかありません。

catsuya
質問者

お礼

chie65536さん、ありがとうございます。 確かにそうですね。 H/Wの構成が違うだけで、同じCのコードでも動作は変わってきますもんね。 そうですね。一つのCPUの特性を知れば、応用が利くようになると思います。 そのポイントがまとまっていて、勉強を加速できるようなものがあれば良いのですが。。。

関連するQ&A