Как работи лексикален анализатор?
Как работи лексикален анализатор?

Видео: Как работи лексикален анализатор?

Видео: Как работи лексикален анализатор?
Видео: Как работает лексический анализатор 2024, Ноември
Anonim

Лексикален анализ е първата фаза на компилатора. В лексикален анализатор разбива тези синтаксиси на поредица от токени, като премахва всякакви бели интервали или коментари в изходния код. Ако лексикален анализатор намира токен за невалиден, генерира грешка. В лексикален анализатор работи тясно със синтаксиса анализатор.

Съответно какво прави лексикален анализатор?

Лексаторът, наричан още лексикален анализатор или токенизатор, е програма, която разбива вход изходен код в поредица от лексеми. То чете вход изходен код символ по знак, разпознава лексемите и извежда поредица от лексеми, описващи лексемите.

По същия начин, каква е разликата между лексикален и синтактичен анализатор? Основното разлика между лексикалния анализ и синтактичен анализ е това лексикален анализ чете изходния код един знак в даден момент и го преобразува в смислени лексеми (токени), докато синтактичен анализ взема тези токени и произвежда дърво за синтактичен анализ като изход.

Впоследствие въпросът е какъв е изходът от лексикалния анализатор?

(I) изход на а лексикален анализатор е токени. (II) Общ брой токени в printf("i=%d, &i=%x", i, &i); са 10. (III) Таблицата със символи може да бъде реализирана чрез използване на масив, хеш таблица, дърво и свързани списъци.

Как работи Lexer?

В lexer просто превръща безсмисления низ в плосък списък от неща като "числовен литерал", "низов литерал", "идентификатор" или "оператор" и може направи неща като разпознаване на запазени идентификатори („ключови думи“) и отхвърляне на интервали. Формално, а lexer разпознава някакъв набор от обикновени езици.

Препоръчано: