TEL:092-822-1550 FAX:092-822-1565

基盤技術講座 講座詳細

講座概要
講座名 BP31 「C言語プログラミング道場<初級>」
BP32 「C言語プログラミング道場<中級>」
日数 2~3日 時間 14~21時間
ソフトウェア(組込プログラミング)
講座詳細

【ね ら い】
C言語による組込みプログラムを、様々な目的/技術要素を題材としてゼロから開発する体験を通して、プログラミング能力を大幅に向上させるとともに、実務上有用なアルゴリズムを蓄積する。レベルは初級/中級の2段階を用意し、実習課題は必要に応じて選択する。

【対  象】
➢ 初級:組込みソフト開発の実務経験が数ヶ月~1年以内の方。
➢ 中級:組込みソフト開発の実務経験1年以上ある方。

【講義内容】
<初級>

開発要件:01  文字列操作関数の開発
  • 設問:01 文字列のコピー
  • 設問:02 文字列のクリア
  • 設問:03 文字列の移動
  • 設問:04 文字列の比較
  • 設問:05 文字列の結合
  • 設問:06 文字列からの文字の検索
  • 設問:07 文字列を数値に変換
開発要件:02  エンディアンの変換
  • 設問:01 エンディアンを変換
  • 設問:02 エンディアンを確認
開発要件:03  エンディアンの変換
  • 設問:01 白黒反転
  • 設問:02 時計方向90度回転
  • 設問:03 反時計方向90度回転
  • 設問:04 180度回転
開発要件:04  パリティ処理
  • 設問:01 パリティドットの付加
  • 設問:02 誤り検出
開発要件:05  現在時刻の計算
  • 設問:01 西暦年号の閏年判定
  • 設問:02 現在時刻算出
参考:文字コードとその種類
開発要件:06  エンコードとデコード
  • 設問:01 ファイルをBase64変換
  • 設問:02 Base64からのデコード
<中級>
開発要件:01  データのソート
  • 設問:01 Byte単位
  • 設問:02 Word単位
  • 設問:03 同じデータがある場合は詰める
  • 設問:04 任意の値の個数を返す
  • 設問:05 最も多く存在するデータを検索する
開発要件:02  簡易データベース
  • 設問:01 生年月日でソート
  • 設問:02 生年月日でソート(エラー処理あり)
  • 設問:03 イニシャルでソート
  • 設問:04 イニシャルでソート(エラー処理あり)
  • 設問:05 性別でソート
  • 設問:06 血液型でソート
開発要件:03  シリアル通信でのフロー制御
  • 設問:01 リングバッファの初期化
  • 設問:02 リングバッファへの書き込み
  • 設問:03 リングバッファから読み出し
  • 設問:04 リングバッファのデータ数
  • 設問:05 受信側:初期化
  • 設問:06 受信側:受信開始要求
  • 設問:07 受信側:受信動作
  • 設問:08 受信側:受信バッファ読み出し
  • 設問:09 送信側:初期化
  • 設問:10 送信側:送信バッファ書き込み
  • 設問:11 送信側:送信動作
開発要件:04  ビットマップデータの処理
  • 設問:01~04 反転と回転
  • 設問:05~08 1dotシフト
  • 設問:09~11 重ね合わせ
開発要件:05  電話番号抽出処理
  • 設問:01 電話番号抽出(1byte文字のみ)
  • 設問:02 電話番号抽出(2byte文字混在)
開発要件:06  セマフォの実装
  • 設問:01 資源のアクセス要求(P関数)
  • 設問:02 資源の開放要求(V関数)
  • 設問:03 資源がロックされているか確認
  • 設問:04 資源の強制解放

次の講座へ >>