知っておきたいプロの常識!組み込みC言語、移植性と効率向上のテクニック(縮小版)【オンライン限定セミナ】

知っておきたいプロの常識!組み込みC言語、移植性と効率向上のテクニック(縮小版)【オンライン限定セミナ】
―― やってはいけない or やって欲しいコーディング集

  

【開催日】2020年6月14日(日) 13:00-17:00 半日コース
【セミナNo.】ES20-0047  【受講料】15,000円(税込)
【会場】オンライン限定セミナ


※本セミナはGoogle Meetを使ったオンライン限定セミナです。
詳細は、オンライン限定セミナについてを参照ください。

※本セミナは、以前開催した「知っておきたいプロの常識!組み込みC言語、移植性と効率向上のテクニック」の内容をオンライン限定用に見直して半日コースとしたものです。

 現在、組み込みシステムのソフトウェア開発言語はC言語が主流となっている。しかし、C言語の文法は曖昧な部分が多く、移植性を保つのは至難の業である。自動車業界でもMISRA-Cのコーディング規則により、曖昧な文法を利用しないためのルールを策定している。
 本講義では、組み込み向けのソフトウェア開発にC言語を使い初めてから2,3年程度を経過したプログラマを対象に、C言語の文法のどこが曖昧なのかを解説し、その罠に落ちた例/罠を回避する例を紹介する。

 以下は本講義で紹介するプログラムの一例である。Unsigned int型が16bitで最大値が65,535である時、変数aとbとcに代入される値を答えよ。

long x = 75536;
unsigned int a, b, c;

a = x;
b = -a;
c = 1 & 1 | 0 ^ 1;

答え


●対象聴講者
・C言語の文法のどこが曖昧なのかを知りたい方
・C言語で組み込み系ソフトウェアの開発を初めてから2,3年程度経過した方
・組み込み系C言語で移植性や効率をアップさせる方法を知りたい方

●講演の目標
・C言語の正しい文法が理解できる
・MISRA-Cのコーディング規則の内容が理解できる
・組み込み系C言語で移植性や効率をアップさせる方法が理解できる

●内容
1. 整数型はこんなにも曖昧
 1.1 char型とint型の注意事項
 1.2 符号付き整数型は内部表現すら決まっていない
 1.3 異なる型での演算には暗黙のルールが適用されるんだよ!

2. 浮動小数点型の演算はとても複雑
 2.1 浮動小数点型の内部表現はIEEEの規格が殆ど
 2.2 浮動小数点定数の型の割り当ては自動的には変わらない
 2.3 浮動小数点型の演算にはFPU機能が必須

3. 派生型のあれこれ
 3.1 typedefで紐解く配列とポインタ
 3.2 ケチの付けようがない構造体
 3.3 文法的には使い物にならないビットフィールド
 3.4 移植性は担保できない共用体

4. 知っているようで知らない演算子
 4.1 演算子優先順位表の左上は関数呼出し
 4.2 意外に説明できない後置インクリメントの動作
 4.3 乗除算はC言語とマイコンでは仕様が異なる
 4.4 条件式とif文は全く異なるもの
 4.5 非常に便利なのに知名度が低いカンマ演算子

5. 最適化とvolatile型修飾子
 5.1 基本的な最適化の内容とは
 5.2 volatile型修飾子が必要な変数
 5.3 volatile型修飾子を付けても回避できない項目


【講師】
鹿取 祐二 氏〔トロンフォーラム学術・教育WG講師 〕
 ルネサス半導体トレーニングセンターにて,マイコン,C言語,リアルタイムOSのセミナー講師を約25年間担当.ルネサス退社後は,組み込みシステム関係の書籍を執筆する傍ら,トロンフォーラム学術・教育WGのメンバーとして,リアルタイムOSのセミナー講師として活動中.


このセミナの参加募集について
募集終了のお知らせ
満席のため募集終了となりました.

類似するセミナをお探しの場合
以下にある「このセミナのタグ情報」の中から,ご希望のタグをお選び下さい. お選びいただいたセミナと同じタグ情報を持つセミナを一覧表示します.

このセミナのタグ情報
各タグをクリックすると,類似するセミナの一覧を表示します.

コース

 半日コース

カテゴリ

 組み込みシステム

シリーズ

 

特徴

 オンライン限定セミナ
 講師実演

キーワード

 コンピュータ
 ソフトウェア
 プログラミング言語
 マイコン
 開発環境
 開発手法

セミナ事務局からのお知らせ

・オンラインセミナを始めました(2020/5/21).

キャンセルの規定が変わりました(2020/2/21).