スタートアップコード– tag –
-
メモリ領域
スタートアップコード(Startup Code)とは?main()前の.data/.bss初期化処理を組み込み実務目線で解説
はじめに main()って電源入れたらすぐ動くんですよね? いや、それが違うんだよ。その前に“超重要な処理”があるんだ マイコンの電源を入れても、いきなり C言語の main() が実行されるわけではありません。 ARMマイコンでは、まず Reset_Handler と呼ばれ... -
メモリ領域
C言語 データ領域(.data)とBSS領域(.bss)の違いとは?初期値・ROM/RAM・起動処理まで実務目線で解説
データ領域(.data)とBSS領域(.bss)の概要 まず結論です。 ✔ .data → 初期値あり(ROMに保存 → 起動時にRAMへコピー)✔ .bss → 初期値なし(起動時にゼロクリア) この「初期値の有無」が、すべての違いの本質です。 そしてそれが「ROM使用量」に直結します...
1