Es-compiler-design-compiler-design-lexical-analysis

提供:Dev Guides
移動先:案内検索

CompiladorDiseño-AnálisisLéxico

AnálisisLéxicoes la primera fase de un compilador。 トマ・エル・コーディゴ・フエンテ・モディフィカド・プリプロセサドーズ・デ・イディオマ・ケ・セ・イン・エン・ラ・フォルマ・デ・ラス・センテンシア。 El analizadorléxicose rompe estas sintaxis en una serie de fichas、quitando cualquier espacio en blanco o los comentarios en elcódigofuente。

Si el analizadorléxicoencuentra un token noválido、se genera un error。 エルアナリザドールレシコトラバハアンエストレチャコラボラシオンコンラシンタクシスアナリザドール。 Lee caracteres corrientes desde elcódigofuente、comprueba de tokens、y pasa los datos a la sintaxis analizador cuando que exige。

エルパソデルテスティゴアンエルコンピラドール

フィチャス

Lexema resulte-se dice que son una secuencia de caracteres(alfanumérico)en un token。 Hay algunas reglas predefinidas para cada lexeme a ser identificado como un tokenválido。 エストラスは、グラディティカラスレグラス、メディオデウンパトロンで定義されています。 定期的にパティオを使用して、常連客にパトロンを定義します。

プログラミング、パラクラスクラベス、定数、identificadores、cadenas、numeros、operadores y puntuaciones lossímbolospueden ser condiados como testigosなど。

Por ejemplo、en lenguaje C、ladeclaraciónde variablelínea

int value = 100;

Contiene las fichas:

int (keyword), value (identifier), = (operator), 100 (constant) and ; (symbol).

トークンの特定

不可抗力が認められていない場合は、次のようになります:

アルファベトス

Cualquier conjunto finito desímbolos\ {0,1} es un conjunto de caracteres binarios、\ {0,1,2,3,4,5,6,7,8,9、A、B、C、D、E、 F} es un conjunto de valores 16進数alfabetos、\ {az、AZ} es un conjunto de idiomaInglésalfabetos。

カデナ

Cualquier secuencia finita de alfabetos se llama una cadena。 カデナエスエルヌメロロンギチュードデロスアルファベトス、p。 ej。、la longitud de la cadena finddevguides es 14 y se denota por | finddevguides | = 14。 ウナカデナケアルファベトス、エスデシル、ウナカデナデロンチドセロセコノセコモウナカデナヴァシア、イセデノタポルε(イプシロン)。

シンボロス

ELtípicolenguaje de alto nivel contiene los siguientessímbolos:

Símbolos aritméticos Además (+), resta (-), módulo (%), Multiplication(*), división (/)
Puntuación Comas (,), punto y coma (;), punto (.), la flecha(→)
Asignación =
Asignación especial +=,/=, *=, -=
Comparación ==, !=, , >=
Preprocesador #
Especificador de ubicación &
Lógico &, &&,
,
, ! Operador de turno

イディオマ

国連イディオマとアカデミアの連合連合の連合、アルガンスの連合とフィンランドの連合。 息子のプログラムの連想は、共同結末のフィニトスであり、操作の合同の結末は、エベロスのカバエであります。 規則的な表現で表現された言語の説明文。

レグラ・デ・コペンデンシア・マス・ラルガ

Cuando el analizadorléxicoleer elcódigofuente、explora elcódigoletra por letra;スペイン語、スペイン語、オペラ座、シンボロス専門家は、パラーナとコンペラードを決定します。

  • Por ejemplo: *
int intvalue;

タント・レキセマ・結果のハインター 'int'、エル・アナリザドール・レキシコの決定的要素はありません。パラ・クラベ_int_ o las iniciales del identificador valor int。

偶然の一致ラーガ・ケ・エル・カプトゥラード語彙素語の決定地位の一致一致する偶然の一致

El analizadorléxicotambiénsigue* prioridad de regla * donde una palabra reservada、por ejemplo、una palabra clave、de un idioma se da Prioridad a entrada de usuario。 Es decir、si el analizadorléxicoencuentra un lexeme que coincide con conualquier palabra reservada、deberágenerar un error。