コンピュータ業界で営業をし始めた新人です。
プログラマーの皆様には簡単な質問かもしれないのですが・・・
組み込みソフトってC言語の使い方を知っていれば開発できるものなのですか?
それとも、C言語がどうやって作られていて、その中身がどうなっていて、
ということまで知っていないと開発できないものなのでしょうか?
それと、この際ぜひ教えていただきたいのですが、
(1)C言語のもとになっているような言語というのはあるのでしょうか?
(2)C言語にバグがあるってことはあるのでしょうか?
誰かわかりやすく教えてください。よろしくおねがいします。
No.1ベストアンサー
- 回答日時:
「組み込みソフト」とは「組み込みプロセッサ上で動作するソフトウェア」の
ことを指しています。
で、組み込みプロセッサって言うのが、
一般的に知られている、ペンティアムのようなものではなくて、
電子レンジやDVDプレイヤーなどに入っている小さなプロセッサのことです。
質問の本題ですが、
C言語で開発できるかどうかは、そのプロセッサ次第です。
そのプロセッサ用のコンパイラがあればC言語で開発できますし、
コンパイラがなければ、マシン語で書かなきゃいけません。
組み込み用として、実績のあるプロセッサ(ARMなど)ならコンパイラがあると思いますが、
自社で開発中のプロセッサということでしたら、ない可能性が高いと思います。
仮にコンパイラがあったとして、話を進めますが、
(1)(2)に関しては、意識する必要はないです。
どこかにバグがあるとしたら、コンパイラに問題があることがほとんどです。
C言語がどうなっているかよりも、どういうプロセッサを使っているのかを、
考えた方がいいと思います。
例えば、関数呼び出しのオーバーヘッドは?ループは何重までできる?
みたいなことの方が重要です。
No.2
- 回答日時:
>組み込みソフトってなんですか?
機器に組み込みで、専用の機能を実現するソフトです。
たいていはわれわれの身の回りで、意識されることなく働いています。たとえば、自動車には、たくさんの組み込みソフトが「組み込まれて」います
>組み込みソフトってC言語の使い方を知っていれば開発できるものなのですか?
8割がたは、可能です。
あとの2割は、↓の方がおっしゃるように、「そのプロセッサに対応のCコンパイラがない場合」「Cコンパイラでは実現できないものをつくる場合」「機器独特の特性を知らないとできない場合」です。たいていアセンブラは、ありますが、まれにマシン語で書きこむことがあります。
Cコンパイラを使う上では、その中身までは、まず必要ないですが、より高性能なもの、コンパクトなものを作る場合、中身を知っていると有利です。
(1)「C言語のもとになっている」の意味があいまいですので、回答できません。
(2)C言語(Cコンパイラ)にも、バグはあります。
Cコンパイラもひとつのプログラムで、人間が作ったプログラムですから。
よく考えたら計算機なんかも組み込みソフトがなければ計算できないですよね。説明がわかりやすくてうれしかったです。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- IT・エンジニアリング プログラマーです 未経験から一年半汎用系(.NET、C#)システムを作っていました。自社なので1から 3 2023/03/16 20:13
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- 哲学 日本語は 言語類型として あたかも始原のごとくである 3 2022/05/29 04:41
- IT・エンジニアリング FORTRAN、COBOL、C、Java、C++とか誰が作ったのですか?言語習い使いまた出て、キリが 4 2023/05/06 23:11
- IT・エンジニアリング c言語とjavaの需要について 3 2022/06/23 22:59
- その他(言語学・言語) ピダハン語 2 2022/07/14 12:41
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
- 哲学 ヨリ・イリ・ヨセなる知性の区分からインタムライズム 1 2023/05/03 01:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
cc と gcc の違い
-
ソフトの開発言語を調べる方法
-
組み込みソフト。ROM領域にデータ
-
C言語の規格
-
unsigned long long 型のフォー...
-
関数形式マクロ dtaは戻り値が...
-
bcpadのコンパイラのインストー...
-
Win32のIME制御について
-
オープン系とか、組込み系とか...
-
C99の導入方法を教えてください。
-
2つのマシンでコンパイルしたld...
-
OpenMAXというものについて、簡...
-
C言語のフリーソフト。
-
void型のポインタで構造体の参照
-
二つの整数を昇順に並べ換える...
-
家庭用家電などのマイコンのOS...
-
VBでVC++の処理速さを実...
-
パクるのに最適なソースの本、...
-
VC++の/Zm オプションについて
-
アセンブリ言語から何がわかる...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
unsigned long long 型のフォー...
-
ソフトの開発言語を調べる方法
-
C++でデスクトップGUIアプリ開...
-
組み込みソフト。ROM領域にデータ
-
cc と gcc の違い
-
C++Builder → Visual C++ 移植...
-
printfなど、標準関数のソース...
-
COBOLのALPHABET...
-
COBOLの論理演算子について質問...
-
Visual Studio でmakefileを使...
-
cobolで実行環境って何ですか?
-
パーサとコンパイラの違いって?
-
昔のgraph.hというファイル
-
未使用引数の注意文出力を回避...
-
C言語でのコンパイラの作成方法
-
C言語はC言語でできている?
-
COBOL計算式の中間ワーク桁数に...
-
リリースモードとデバッグモー...
-
『Bin』ディレクトリは何の略語?
-
POWERCOBOLのSQL...
おすすめ情報