Kako radi leksički analizator?
Kako radi leksički analizator?

Video: Kako radi leksički analizator?

Video: Kako radi leksički analizator?
Video: Радиомониторинг, поиск помех, ЭМС с анализатором спектра FPL1000 2024, Novembar
Anonim

Leksička analiza je prva faza kompajlera. The leksički analizator razbija ove sintakse u niz tokena, uklanjanjem razmaka ili komentara u izvornom kodu. Ako je leksički analizator pronađe token nevažećim, generiše grešku. The radi leksički analizator blisko sa sintaksom analizator.

Shodno tome, šta radi leksički analizator?

Lekser, koji se još naziva i leksički analizator ili tokenizer, je program koji razlaže unos izvorni kod u niz leksema. Čita unos izvorni kod znak po znak, prepoznaje lekseme i ispisuje niz tokena koji opisuju lekseme.

Slično tome, koja je razlika između leksičkog i sintaksnog analizatora? Glavni razlika između leksičke analize i analiza sintakse je li to leksičke analize čita izvorni kod jedan po jedan znak i pretvara ga u smislene lekseme (tokene) dok analiza sintakse uzima te tokene i proizvodi stablo raščlanjivanja kao izlaz.

Nakon toga, postavlja se pitanje šta je rezultat leksičkog analizatora?

(I) The izlaz od a leksički analizator je tokeni. (II) Ukupan broj tokena u printf("i=%d, &i=%x", i, &i); je 10. (III) Tablica simbola može se implementirati korištenjem niza, hash tablice, stabla i povezanih lista.

Kako Lexer radi?

The lexer samo pretvara besmisleni niz u ravnu listu stvari kao što su "brojni literal", "literal niza", "identifikator" ili "operator" i može uradi stvari poput prepoznavanja rezerviranih identifikatora ("ključnih riječi") i odbacivanja razmaka. Formalno, a lexer prepoznaje neki skup regularnih jezika.

Preporučuje se: