Hvordan fungerer en leksikalsk analysator?
Hvordan fungerer en leksikalsk analysator?

Video: Hvordan fungerer en leksikalsk analysator?

Video: Hvordan fungerer en leksikalsk analysator?
Video: Architecture Kata #1 - Разбор с экспертом [Как работает настоящий Solution Architect] #ityoutubersru 2024, November
Anonim

Leksikalsk analyse er den første fase af en compiler. Det leksikalsk analysator opdeler disse syntakser i en række tokens ved at fjerne eventuelle mellemrum eller kommentarer i kildekoden. Hvis leksikalsk analysator finder et token ugyldigt, genererer det en fejl. Det leksikalsk analysator virker tæt med syntaksen analysator.

Hvad gør en leksikalsk analysator tilsvarende?

Lexeren, også kaldet leksikalsk analysator eller tokenizer, er et program, der nedbryder input kildekoden til en sekvens af leksemer. Det lyder input kildekode tegn for tegn, genkender leksemerne og udsender en sekvens af tokens, der beskriver leksemerne.

På samme måde, hvad er forskellen mellem leksikalsk og syntaksanalysator? Det vigtigste forskel på leksikalsk analyse og syntaksanalyse er det leksikalsk analyse læser kildekoden ét tegn ad gangen og konverterer den til meningsfulde leksemer (tokens), hvorimod syntaksanalyse tager disse tokens og producerer et parsetræ som output.

Efterfølgende er spørgsmålet, hvad er outputtet af leksikalsk analysator?

(I) Den produktion af en leksikalsk analysator er tokens. (II) Samlet antal tokens i printf("i=%d, &i=%x", i, &i); er 10. (III) Symboltabel kan implementeres ved at bruge array, hash-tabel, træ og linkede lister.

Hvordan fungerer en Lexer?

Det lexer forvandler bare den meningsløse streng til en flad liste over ting som "antal bogstavelig", "streng bogstavelig", "identifikator" eller "operatør", og kan gør ting som at genkende reserverede identifikatorer ("søgeord") og kassere mellemrum. Formelt set, a lexer genkender et sæt almindelige sprog.

Anbefalede: