組み込み設計– tag –
-
ソフトウェア設計
ソフトウェア設計解説シリーズまとめ|保守性・変更容易性・設計思想を実務目線で学ぶ
ソフトウェア設計解説シリーズ 「動けばOK」から一歩進んで、“保守しやすいソフトウェア” を作れるようになりたい そんな方向けに、 なぜその設計にするのか なぜその書き方が危険なのか なぜ現場では設計が重要なのか を実務目線で整理したシリーズです。... -
メモリ領域
C言語 .rodataとは?const変数・文字列の配置とROM/RAMの関係を実務目線で解説
.rodataとは?【結論】 まず結論です。 ✔ .rodata → 読み取り専用データ(主にROMに配置)✔ const変数や文字列リテラルが入る✔ 書き換え不可(安全&RAM節約) 👉 「書き換えないデータをROMに置く」ための領域です。 .rodataとは何か .rodataとは、読み取... -
C言語
C言語のregisterとは?意味・使いどころ・現在は使われない理由を分かりやすく解説
registerとは 今回は register いくよ。ちょっと地味だけど、知っておくと“分かってる感”出るやつだね 名前からして速そうですね…! register は、変数をできるだけCPUのレジスタに配置してほしい、という意図をコンパイラに伝えるキーワードです。 レジス... -
メモリ領域
スタックオーバーフローとは?原因と対策をC言語・組み込み目線で解説
スタックオーバーフローとは スタックオーバーフローとは、スタック領域の使用量が上限を超えてしまう状態のことです。 関数呼び出しのたびにスタックフレームが積まれていきますが、その積み重ねが限界を超えると、正常な動作ができなくなります。 スタッ... -
C言語
malloc / freeとは?C言語の動的メモリ確保を初心者向けに解説
C言語ポインタ解説シリーズ 本記事は「C言語ポインタ解説シリーズ」の1つです。C言語のポインタを、組み込み開発の視点も交えて解説します。 C言語ポインタ解説シリーズ一覧はこちら C言語では、プログラムの実行中にメモリを確保することができます。これ... -
C言語
C言語文法一覧まとめ|修飾子・型・ポインタ・関数・制御文【解説シリーズ】
C言語文法解説シリーズ C言語はシンプルな言語ですが、修飾子・型・ポインタ・関数・制御文など、理解しておくべき文法が多くあります。 このシリーズでは、C言語の文法をテーマごとに整理して解説しています。気になる文法から読めるように一覧としてまと... -
C言語
volatileとは?C言語で最適化を防ぐ理由と使いどころをわかりやすく解説
C言語の volatile は、static・const・extern と並ぶ修飾子の1つです。しかし、この volatile は初心者がつまずきやすいキーワードでもあります。 理由はシンプルで、 「なぜ必要なのか」が直感的に分かりにくいからです。 この記事では volatileとは何か ... -
メモリ領域
リンカスクリプトとは?組み込みC言語のメモリ配置の仕組みをわかりやすく解説
メモリ領域解説シリーズ 本記事は「メモリ領域解説」シリーズの1つです。 メモリ領域解説シリーズの全体像はこちら 組み込み開発では、プログラムや変数がROMやRAMのどこに配置されるかが決まっています。 メモリ領域の全体像 この配置(メモリマップ)を... -
メモリ領域
メモリマップとは?組み込み開発でのROM・RAM配置をわかりやすく解説
メモリ領域解説シリーズ 本記事は「メモリ領域解説」シリーズの1つです。 メモリ領域解説シリーズの全体像はこちら 組み込み開発では、プログラムや変数がどこに配置されるかを理解することが重要です。その配置を示したものが メモリマップ です。 メモリ... -
メモリ領域
DRAMとSRAMの違いとは?組み込み開発での使い分けをわかりやすく解説
メモリ領域解説シリーズ 本記事は「メモリ領域解説」シリーズの1つです。 メモリ領域解説シリーズの全体像はこちら RAMにはいくつか種類があり、代表的なのが DRAM と SRAM です。 どちらもRAMですが、仕組みや特性が大きく異なります。この違いは、組み込...