У дома развитие Какво е анализатор? - определение от техопедия

Какво е анализатор? - определение от техопедия

Съдържание:

Anonim

Определение - Какво означава Parser?

Анализаторът е компонент на компилатор или интерпретатор, който разбива данните на по-малки елементи за лесен превод на друг език. Анализаторът приема вход под формата на последователност от маркери или инструкции на програмата и обикновено изгражда структура от данни под формата на дърво на разбор или абстрактно синтаксисно дърво.

Техопедия обяснява Парсер

Анализаторът обикновено се използва като компонент на интерпретатор или компилатор. Цялостният процес на разбор включва три етапа:

  1. Лексикален анализ: Лексикален анализатор се използва за създаване на маркери от поток от входни символни низове, които се разбиват на малки компоненти, за да образуват смислени изрази.
  2. Синтактичен анализ: Проверява дали генерираните маркери образуват смислен израз. Това използва граматика без контекст, която определя алгоритмични процедури за компоненти. Те работят за формиране на израз и определят конкретния ред, в който трябва да се поставят маркери.
  3. Семантичен парсинг: Последният етап на анализ, в който се определят значението и последиците от валидирания израз и се предприемат необходимите действия.

Основната цел на анализатора е да определи дали входните данни могат да бъдат извлечени от началния символ на граматиката. Ако да, тогава по какви начини могат да бъдат получени тези входни данни? Това се постига по следния начин:

  • Парширане отгоре надолу: включва търсенето на дърво за разбор, за да намери най-лявото производно на входния поток, като използва разширение отгоре надолу. Примерите включват LL парсери и рекурсивно-низходящи парсери.
  • Разбор отдолу нагоре: включва пренаписване на входа обратно към стартовия символ. Този тип синтактичен анализ е известен още като разместване-намаляване на парсинга. Един пример е LR парсер.

Парсерите са широко използвани в следните технологии:

  • Java и други езици за програмиране
  • HTML и XML
  • Интерактивен език на данните и език за дефиниране на обекти
  • Езици на базата данни, като SQL
  • Езици за моделиране, като език за моделиране на виртуална реалност
  • Езици на скриптове
  • Протоколи, като HTTP и интернет разговори с отдалечени функции
Какво е анализатор? - определение от техопедия