小さなプログラムの場合、サイズの大部分は、プログラムが依存するライブラリ/DLL によって決まります。ARM/Freescale/Pic を参照しているので、データ サイズが MB 単位ではなくバイト単位で測定されるコンパクトな組み込みアプリケーションを扱っていると思います。
独自のコードの場合、サイズの違いは次のように決定されます。
- ワード サイズ (つまり、32 ビット プログラムは、8 ビットよりも少し大きい/データが多い傾向があります)
- アーキテクチャ (つまり、Intel コードと ARM、freescale、PIC の比較)
あなたの場合、PICが最も重要な部分であると予想しています(RAM / ROMの制約のため)。したがって、PC 開発中に PIC コンパイル サイズを適切に監視するだけで十分です。リンカ出力には、監視できる TEXT/DATA/BSS サイズに関する情報が含まれます。
私は一般的に組み込みシステムに取り組んでいます。私の仕事では、データ サイズの多くは設計時にわかっています (つまり、バッファ数 * バッファ サイズ)。コード サイズについては、設計時にサニティ チェックを行うのに役立つさまざまなアーキテクチャの経験則があります。たとえば、いくつかの既存のコード ライブラリのスイートを定義します。これらのライブラリについては、各アーキテクチャのパフォーマンスとサイズの数値がわかっています。このようにして、設計時に期待できる比率を知ることができます。PC プログラムに 1 MB のデータがある場合、8 ビット PIC には収まりません.....