Turinys:

Kokie yra rekursinio nusileidimo analizatoriaus apribojimai?
Kokie yra rekursinio nusileidimo analizatoriaus apribojimai?

Video: Kokie yra rekursinio nusileidimo analizatoriaus apribojimai?

Video: Kokie yra rekursinio nusileidimo analizatoriaus apribojimai?
Video: CS50 2014 - Week 4 2024, Balandis
Anonim

Rekursyvaus nusileidimo analizatoriai turi tam tikrų trūkumų:

  • Jie nėra tokie greiti kaip kai kurie kiti metodai.
  • Sunku pateikti tikrai gerus klaidų pranešimus.
  • Jie negali atlikti analizės, kuriai reikia savavališkai ilgų laukų.

Taigi, kas yra rekursyvaus nusileidimo analizatorius su pavyzdžiu?

Rekursyvus nusileidimas yra iš viršaus į apačią analizuojant technika, kuri konstruoja analizuoti medį iš viršaus, o įvestis skaitoma iš kairės į dešinę. Jis naudoja procedūras kiekvienam terminalui ir neterminaliniam subjektui. Tai analizuojant yra laikoma technika rekursyvus nes jame naudojama bekontekstinė gramatika kuris yra rekursyvus gamtoje.

Be to, ar rekursyviosios kilmės analizatorius gali naudoti kairiąją rekursinę gramatiką? A Nuspėjamasis analizatorius yra ypatingas atvejis Rekursyvaus nusileidimo analizatorius , kur nereikia sekti atgal. Atidžiai rašydami a gramatikos reiškia pašalinti kairioji rekursija ir paliko faktoringo iš jo, gautas gramatikos valia būk a gramatikos kad gali išanalizuoti a rekursyvaus nusileidimo analizatorius.

Be to, kas yra nerekursyvus nusileidimo analizatorius?

Nuspėjamasis analizuojant yra ypatinga forma rekursinis nusileidimo analizavimas , kur nereikia grįžti, todėl galima numatyti, kurią produkciją naudoti norint pakeisti įvesties eilutę. Ne - rekursyvus nuspėjamasis analizuojant arba stalinis, taip pat žinomas kaip LL(1) analizatorius . Tai analizatorius seka kairįjį darinį (LMD).

Ką turi omenyje sakydamas analizatorius?

A analizatorius yra kompiliatoriaus arba vertėjo komponentas, kuris suskaido duomenis į mažesnius elementus, kad būtų lengva išversti į kitą kalbą. A analizatorius priima įvestį žetonų arba programos instrukcijų sekos pavidalu ir paprastai sukuria duomenų struktūrą analizuoti medis arba abstrakčios sintaksės medis.

Rekomenduojamas: