C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
Re[3]: コンパイラで
(過去ログ 58 を表示中)
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法/規約
トピック表示
ランキング
記事検索
過去ログ
[トピック内 4 記事 (1 - 4 表示)] <<
0
>>
■33103
/ inTopicNo.1)
コンパイラで
▼
■
□投稿者/ 桐山
(1回)-(2009/02/20(Fri) 19:58:51)
分類:[雑談]
超初心者の質問になるかと思いますが、コンパイラというのは、人間が理解しやすい言語を
コンピュータが理解できる機械語に変換するプログラムですが、
言語によってコンパイラは異なるのでしょうか?
もしそうであるなら、自分で作ったオリジナル言語をコンパイラするときには、その言語にあったコンパイラを作成しなければならないものなのでしょうか?
引用返信
編集キー/
編集
■33105
/ inTopicNo.2)
Re[1]: コンパイラで
▲
▼
■
□投稿者/ .SHO
(681回)-(2009/02/20(Fri) 20:02:24)
■
No33103
(桐山 さん) に返信
> 言語によってコンパイラは異なるのでしょうか?
異なります。
> もしそうであるなら、自分で作ったオリジナル言語をコンパイラするときには、その言語にあったコンパイラを作成しなければならないものなのでしょうか?
そうです。
ちなみに「コンパイラするとき」じゃなくて「コンパイルするとき」です。
コンパイルするのがコンパイラです。
引用返信
編集キー/
編集
■33146
/ inTopicNo.3)
Re[2]: コンパイラで
▲
▼
■
□投稿者/
ちゃっぴ
(215回)-(2009/02/21(Sat) 14:08:47)
> もしそうであるなら、自分で作ったオリジナル言語をコンパイラするときには、その言語にあったコンパイラを作成しなければならないものなのでしょうか?
初期の C++ がやっていたように、C++ から C への transrator を作って、C から compile させるという方法もありますね。
ここら辺は επιστημη さんの本を読むといいかも。
引用返信
編集キー/
編集
■33202
/ inTopicNo.4)
Re[3]: コンパイラで
▲
▼
■
□投稿者/
επιστημη
(1768回)-(2009/02/23(Mon) 09:47:52)
コンパイラがある言語から他の言語に変換するとき、ざっくりと
字句解析 → 構文解析 → コード生成
ってな手順を踏みます。
# 構文解析の後、必要に応じてオプチマイザ(最適化)が割り込みます。
字句(単語)解析と構文(文法)解析は コンパイラに食わす言語に依存するので、
食わす言語の"単語"と"文法"が異なればそれぞれに応じた字句解析と構文解析が必要となります。
コード生成はコンパイラに吐かす言語(アセンブラとかCとかその他モロモロ)に依存しますな。
引用返信
編集キー/
編集
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
過去ログには書き込み不可
管理者用
-
Child Tree
-