Java仮想マシン上で|シリーズ1 |建築概要

今日は特別なトピックを開きました。私たちは、プログラマが毎日のJava仮想マシン(JVM)に直面するJavaについて話しています。

コンパイラ(コンパイラ)とランタイム(実行時):基本的に、二つの部分をJVM。

いわゆるコンパイラは、簡単な言葉で、彼は機械翻訳され、英語の翻訳は、人間の世界のようなアナロジーで、英語の翻訳は、彼の主な仕事は英語に中国語翻訳することです。

(英語など)のクラスファイルへの翻訳:コンパイラは、その主な仕事は、(中国のような)Javaコードを記述するためのプログラマーにあります。仮想マシンの翻訳者とプログラマのように。

主に実行マシンで操作、簡単な言葉で、それはクラスファイルをロードし、より下のアセンブリ言語やマシンコードに翻訳することで、基礎となるオペレーティングシステムの関数呼び出しは、プログラムの実行を完了するために、プログラムロジックに従って。

コンパイラは、どのようにそれのようなものであることを?原則

言語パーサと字句解析:簡単に言えば、それは2つの部分からなります。

字句解析とは何ですか?

字句解析(字句解析)は、コンピュータサイエンスの変換ワード(トークン)プロセスの一連の文字のシーケンスです。字句解析プログラムまたは機能は字句アナライザ(字句解析、レクサーと呼ばれる)と呼ばれる、とも呼ばれるスキャナ(スキャナ)。一般パーサコールの存在の関数として字句解析。

簡単に言えば、これは、Javaのプログラムコードは、トークンのシーケンスに変換される必要があります。言い換えれば、それはパーサトランスレータです。

パーサとは何ですか?

コンピュータサイエンスと言語学では、 解析 (英語:も解析呼ばSyntacticanalysisは、)からなる(例えば、英語の単語列としての)配列のワードによって与えられる文法のいくつかの形態に基づいて 入力テキスト 分析し、その文法構造を決定されプロセスという。
パーサ として(パーサ)は、通常 、コンパイラ インタプリタ コンポーネントが表示され、それは構文チェックの役割であり、入力ワードで構成されるデータ構造を構築します(通常は木、解析 抽象構文木 などの階層を、データ構造)。パーサーは、一般的に分離するために使用される 字句解析は、 一つの入力文字ストリームから「ワード」、およびその入力としてトークンストリームずつ分離しました。実際の開発は、手書きパーサーは、ツールを使用して自動的に(半)であってもよいができます。
簡単に言えば、それはトークン列字句解析器を受け入れ、AST(抽象構文木)に変換され、AST動作し、最終的にも実行可能コードの仮想マシンのランタイム(実行時)、クラスファイルを生成することです。
聖書は、字句解析パーサの翻訳者、および字句解析パーサコンパイラの組成は、ランタイム(実行時)の翻訳者を言います。
私たちは、プログラマやコンパイラ、ランタイムの関係を説明するための図を使用します。

 


 

 図は、当事者間の関係の良い説明があり、プログラマがJavaコードを記述し、Javaコンパイラのコードが実行され、オペレーティングシステムの機能を呼び出すことによって、関連するタスクを完了するために、クラスファイル、負荷にコンパイルし、クラスファイルを実行しています。
 上記は、Java仮想マシン・アーキテクチャへの簡単な紹介です。
次のアーキテクチャの詳細について話を続けます。
 
 

おすすめ

転載: www.cnblogs.com/gyc567/p/11071712.html