コンパイラとエンタープライズ言語の違い
2340 ワード
コンパイラとinterpreterとは?
コンパイラとinterpreterの特徴を理解する前に、高度な言語と低レベルの言語を理解してください.前述のレベルとは、難易度ではなくどの主体に近いかを意味します.高いレベルのプログラミング言語が人間に近づくほど、低いレベルのプログラミング言語がコンピュータに近づく.代表的な高級言語としてはPython、Ruby、JAVA、Cなどがあり、低級言語としては機械言語、アセンブリ言語がある.
コンピュータは機械言語を認識できるが、高級言語は理解できない.そのため、高度な言語はコンピュータが理解できる機械言語に変換しなければならない.
翻訳の使い方はコンパイラとinterpreterです.
コンパイラと割り込みプロパティ
コンパイラ
インタプリタ
1行あたり
コンパイラとinterpriterの比較
スピード
コンパイラでは、プログラムをコンパイルするために、すべてのプログラムソースを同時に翻訳して目的コードを生成します.
Interpreterの場合、必要な部分を行単位文に翻訳し、すぐに実行します.
これらの特徴により、コンパイラはすべての部分を翻訳する速度が遅い.
これに対して、必要な部分のみをコンパイルするため、速度は速いが、プログラムを実行しながらコンパイルを実行するため、プログラム自体の速度は遅い.
開発が容易
たとえば、プロジェクトコードが完了しました.しかしコンパイルに1日かかりましたが、エラー入力でエラーが発生しました.
コンパイル方法では、エラーを修正してから1日後に再コンパイルする必要があります.これは論理的な問題ではなく、単純な誤りであり、欠点は時間の浪費が深刻である.
interpreter方式は、完全なコンパイルではなく、各ローを直接実行します.同様に、エラーによってエラーが発生した場合は、エラーを修正してプログラムを再実行するだけです.前の例に示すように、interpreterはデバッグに便利です.
なぜこの2つの方法を使うのですか?
コンパイル方式と割り込み方式には明確なメリットとデメリットがある.
コンパイラは「開発は不便だが、運行速度は速い」と話している.
interpreter氏は「開発は便利だが、運行速度は遅い」と話した.
コードの実行方式はプログラミング言語の特徴とも一致する
低レベルの言語開発は便利性が悪いが、実行速度が速く、高レベルの言語開発は便利性が高いが、実行速度が遅い.
ハイレベル言語は開発の利便性を生命とする言語であり、毎回コンパイルされると、その利点は失われる.そのため、Python、Rubyなどのハイレベル言語は主にinterpreter方式を用いている.
逆に、開発プロセスが困難であっても、低レベルの言語は最高の性能、効率、速度を創造することを望んでいます.しかし,interpreter方式で動作し,遅い環境で動作すると,低レベル言語を開発する理由は消えてしまう.したがって,C,C++のような比較的低レベルに近い言語は通常コンパイル方式で実行される.
[은핑]님의 글이 한 번에 정리가 잘 되어 가져왔다.
[ソース]マシンとコンポーネントの違い
[OS] Compiler vs Interpreter
[暗黙的]コンパイラとinterpreterの特徴、違い
コンパイラと割り込みの特性とメリットとデメリット
Reference
この問題について(コンパイラとエンタープライズ言語の違い), 我々は、より多くの情報をここで見つけました https://velog.io/@dat0802/컴파일과-인터프리터-언어의-차이점テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol