- 締切済み
組込みでのC言語勉強法
はじめまして。 最近、組込みのC言語を勉強しています。 処理速度の面や、可読性の良いプログラム、効率のよいプログラムを書けるようになりたいと思っています。 引数の数はレジスタで処理できる範囲におさめる事や、 構造体を使用するときにはポインタで渡すなど、 コードを書く際に気をつけるポイントがまとまってる書籍やHPなどを知りませんか? もしくは参考にすべき、サンプルコードなど知っていましたら、情報をいただけるとありがたいです。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- yphkz4063
- ベストアンサー率23% (34/144)
教科書よりコンパイル後のコードを見たほうが、よほど勉強になると思います。 スキルの高い人なら、初めて使うコンパイラの性能を見るときにはそうします。 慣れれば、難しいことではありません。
- asuncion
- ベストアンサー率33% (2127/6289)
私は読んだことがないのでナニですが… Amazon.comで「組込み C言語」というキーワードで 検索してみると、何冊かの書籍が見つかります。 それらの中に、有用なものがあるかもしれませんし、 ないかもしれません。
- chie65536
- ベストアンサー率41% (2512/6032)
残念ながら「組み込み系にセオリーは無い」です。つまり「参考書が無い」のです。 どうして「セオリーが無い」かと言うと「組み込み系は、使用するCPUとメモリなど、マシンスペックが毎回違う」ので「あるCPUで最適な書き方が、別のCPUでは最悪の書き方になる」のです。 で、組み込み系のプロは「CPUごとに、そのCPUのマシンコードと、コンパイラがどんなマシンコードを出力するかを熟知していて、自分が書いているCのコードが、どんなマシンコードになるか予測しながら、Cのコードを書いている」のです。 まずは「良く使われているCPUの特性を知る」のが最初。 そして「こういうCのコードを書いたら、こういうマシンコードになる」と言うのを、少しづつ覚えて行くしかありません。
お礼
chie65536さん、ありがとうございます。 確かにそうですね。 H/Wの構成が違うだけで、同じCのコードでも動作は変わってきますもんね。 そうですね。一つのCPUの特性を知れば、応用が利くようになると思います。 そのポイントがまとまっていて、勉強を加速できるようなものがあれば良いのですが。。。
お礼
asuncionさん、ありがとうございます 早速検索してみました。 改訂版 組込みソフトウェア開発向けコーディング作法ガイド[C言語] (SEC BOOKS) (大型本) とか、良さ気な感じですね(題名だけですが。。。) 本屋で中身見てみようと思います。