NBLAekisupaC言語で学ぶCPUのしくみ講座

組込み系で役に立つ、C言語で知るCPUの12の謎!
●自分のプログラムがCPUやメモリ上でどう処理されているかが理解できるようになります。
●プログラムから生じるトラブルの原因究明がはやくできるようになります。
●C言語のポインタ、構造体、共用体が使いこなせるようになり,プログラミングの幅が格段に拡がります。

NBLAekisupa

学習期間 3 か月
受講料 webテスト:29,700円
教材・テスト形式 テキスト3冊/テスト3回  テスト形式:郵送、Web記述webテスト CD-ROM(コンパイラ LSIC-86試食版、サンプルプログラム、ライブラリ集収録)

●テストは「郵送」、「Web記述」テスト、「webテスト」テストのいずれかをお申込み時にお選びいただきます。
 【テスト提出のための学習環境】インターネットエクスプローラ(IE)6.0以上、MS-Office2000以上

 

講座一覧

 

講座概要

1969 年、米国AT&T ベル研究所でUNIX は誕生しました。UNIXの持つ優れた特徴の一つとして、インターネットとの高い親和性を挙げる事ができます。

 

これはインターネットの基盤技術が主にUNIX 上で研究開発されてきたことに起因しています。また、ワークステーション、LinuxやFreeBSD などの PC-UNIX 、そしてPDAに至るまで、多種多様なプラットフォーム上で稼動するスケーラビリティの高さやオープン性もUNIXの魅力の一つです。 現在、UNIX はその優れたネットワーク機能、異機種間接続機能、柔軟な拡張性を活かし、研究開発などのエンジニアリング分野はもとより、大規模なCIM (統合化製造システム)構築、株価の変動予測や市場分析、物流支援システム、Webアプリケーション開発など、あらゆる業種・業界において、オペ レーティングシステムとしての重要な役割を担っています。

 

本講座ではUNIX の基本的な操作はもとより、ファイルシステムやX-Window システム、ネットワーク、プログラミング環境、シェルスクリプトといった項目について、その基本から応用までをわかりやすく解説します。質問回答 のE-mailサービス、FAQ (質問回答集)などのインターネットサポートも充実していますので、最後まで安心して受講することが可能です。また、別に用意したコマンド集は受講中のみならず、受講後も皆さんのお役に立つこと間違いなしです。

 

講座の到達目標

●自分のプログラムがCPUやメモリ上でどう処理されているかが理解できるようになります。
●プログラムから生じるトラブルの原因究明がはやくできるようになります。
●自分の作ったシステムでCPUがどのように動作してるのかが理解できます。
●C言語のポインタ、構造体、共用体が使いこなせるようになり,プログラミングの幅が格段に拡がります

 

受講対象

●UNIX ユーザあるいはこれからUNIX ユーザになられる方。
●UNIX 上でアプリケーションプログラムの開発をする方。
●コンピュータについて基本的知識がある方。
●UNIX マシンを操作できる環境にある方。

 

学習環境

●Cコンパイラの動作環境:Windows2000,Xp (Windows Vista、7は対象外です)

 

監修・執筆

山下雅一

 

テキスト概要

1. 情報の表現

第1章 Hello world の謎
1.1 ”Hello world”
1.2 #include の謎
1.3 stdio.h
1.4 main() とprintf()

 

まとめと練習問題
第2章 int の謎
2.1 なぜ値がおかしくなるの?
2.2 なぜマイナスになるの?
2.3 なぜint 型が必要なの?
2.4 なぜ実数を表せるの?
まとめと練習問題

 

第3章 char の謎
3.1 1 と’1’ と”1”の違いは?
3.2 文字で何を表すの?
3.3 文字列を使いこなす!
3.4 文字列も数値も自由自在!

 

まとめと練習問題 第4 章 struct の謎
4.1 構造体は難しい?
4.2 ソフトウェア工学
4.3 構造体、共用体、配列
4.4 簡単なデータベース

 

まとめと練習問題
付録A コンパイラのインストール
A.1 各ファイルの解凍
A.2 プログラム開発用作業フォルダ作成
A.3 開発環境の自動設定
A.4 Cpad の基本設定
A.5 Cpad によるプログラム開発
STEP UP/参考文献/練習問題解答

プログラミングでは、文字列で表した情報がディジタル処理の世界でどのように扱われているかは通常は意識しなくてもよいはずです。しかしC言語は、比較的単純な言語であり、プログラマの指示通りに処理を行うため、プログラマの無知や勘違いから、時としてとんでもない悲劇が起こることがあります。C言語では、プログラマが情報のディジタル表現を確認しながら、CPUの世界では情報がどのように扱われるかを考えてみることにしましょう。

 

 

2. 情報の処理

第1章 CPUの謎
1.1 C言語をアセンブリ言語に変換
1.2 CPU アーキテクチャ
1.3 CPU のメモリ
1.4 CPU のスタック
まとめと練習問題

 

第2章 関数の謎
2.1 どうして再帰呼び出しできるの?
2.2 関数呼び出しのしくみ
2.3 アセンブラで関数を記述できる?
2.4 関数を利用し、必要なら作ろう
まとめと練習問題

 

第3章 変数の謎
3.1 変数の宣言場所を間違えると?
3.2 ヒープって何?
3.3 アラインメントって何?
3.4 ビットフィールドって何?
まとめと練習問題

 

第4章 演算の謎
4.1 ビット演算
4.2 型変換と優先度
4.3 アドレスの演算
4.4 データベースの改良

 

まとめと練習問題
付録A Cpad のオプション設定
A.1 コンパイルオプションの設定
STEP UP/参考文献/練習問題解答

C言語は、CPUのアーキテクチャを意識したシステム開発にも対応できる言語です。「C言語は高級アセンブリ言語だ」などという陰口がたたかれるのも、その証拠です。そのため、CPUやディジタル処理の基本を知らない人にとっては、C言語がわからない、使いにくいということになるのです。残念ながら、組み込みシステム開発現場では、CPUの基本的なしくみを理解していないためにC言語で記述されたプログラムの実行で問題が起こることが少なくありません。「C言語を使いこなすために、CPUの基本的な仕組みを理解しよう」というのがこの分冊のねらいです。

 

 

3. システム化

第1章 I/Oの謎
1.1 C言語でI/Oを制御
1.2 I/O はシステム資源
1.3 ロジックアナライザ
1.4 I/O 制御に挑戦
まとめと練習問題

 

第2章 割り込みの謎
2.1 C言語処理速度の限界
2.2 プログラムの高速化
2.3 LSI 制御
2.4 割り込みの利用
まとめと練習問題

 

第3章 OSの謎
3.1 並列処理と並行処理
3.2 マルチタスクの落とし穴
3.3 OS の落とし穴
3.4 メモリ管理の落とし穴
まとめと練習問題

 

第4章 オブジェクトの謎
4.1 C++
4.2 Java
4.3 verilogHDL
4.4 SystemC
まとめと練習問題
STEP UP/参考文献/練習問題解答

組み込みシステムをC言語で開発するときは、場合によってはOSもなく、ライブラリも貧弱なものしかサポートされないことがあります。I/Oポートには多くのハードウェアが接続され、決められた時間制限を守って、プログラムで直接制御しなくてはなりません。与えられた限りある資源で厳しい制約条件のもとで要求された使用を実現しなければならず、場合によってはOSを自分たちで作る必要もあります。この分冊では、組込み系システムの特殊性を理解し、CPUの資源を有効に活用するためのシステム実現方法について考えます。また、システム記述言語として進化を続けるC言語の動向にも目を向けます。

 

NBLAekisupa受講生の声

● C,アセンブラ、CPUの関係がわかりやすく説明されており、理解、学習しやすかった。
● 体系的に学ぶことができて、スキルの見直しができた。
● 最近、組み込み機器の仕事を始めたので、入門編として非常に役立った。
● テキストが非常にわかりやすかったです。
● 組み込みシステムを扱う上で通常のOSとは異なり各タスクの状態、メモリのアクセス最適化など、注意しなければならない点を学ぶことができた。

 

提供会社

NBLAekisupa

轄H学研究社

 

 

→トップに戻る


このページの先頭へ戻る