• 締切済み

アセンブラとコンパイラ

アセンブラとコンパイラについて教えてください。

みんなの回答

  • alfeim
  • ベストアンサー率58% (114/195)
回答No.3

assemblerは常に命令を1対1で機械語コードに変換します 大してcompilerではソースコードを構文解析した後、各命令の前後関係から最適化処理をし、機械語コードに変換します(最適化処理は省く事も出来る) 違いとしてはassemblerでは常にコードは自分の作った通りに動く(コードの実行効率は全てプログラマの責任となる)のに対し、Compilerは最適化処理によって効率が変わる可能性があります また、Compilerは高度な構文解析機能を持っているので自然言語に近い構文でソースコードを書く事が出来ます(Assemberでは通常Opcode一つとOplandが数個で一命令が構成されます)

agnes
質問者

お礼

回答ありがとうございます。 参考にします。

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.2

プログラミング言語には機械語と自然言語が両極端に有ります。 機械語はコンピュータに一番都合のいい言語です。 自然言語は人間には都合がいいですが、コンピュータには難しすぎます。 そこで、機械語と自然言語の中間に人口の言語を作って、機械にも人間にも 出来るだけ都合の良いようにします。 アセンブラー言語は機械語の1命令ををそのまま人間の理解しやすい記号に 置き換えただけであくまでも機械語寄りです。 それに対し、コンパイラー言語は普通の英文に近い形で記述でき、日本語の 使えるものも有ります。高級言語とも言います。 アセンブラー言語もコンパイラー言語も機械語に直す(翻訳する)事で実行可能に なります。 この翻訳をする事を「アセンブル」「コンパイル」といい、翻訳プログラム の事を「アセンブラー」「コンパイラー」といいます。

agnes
質問者

お礼

回答ありがとうございます。 参考になりました。

  • arai163
  • ベストアンサー率22% (214/970)
回答No.1

アセンブラは、機械語に近い言語で書かれたソースを機械語にする事です。 関連URL   ↓ http://hp.vector.co.jp/authors/VA004474/zaurus/zrep40.html コンパイラは、BASIC,COBOL,VBAなど人間の言語に近いソースを機械語にすることです。 関連URL   ↓ http://webbase.ntts.co.jp/technical/wbspman/step3/compiler.html

agnes
質問者

お礼

回答ありがとうございます。 参考にします。

関連するQ&A