Ինչու է անհրաժեշտ բառապաշարային անալիզատոր:

Ինչու է անհրաժեշտ բառապաշարային անալիզատոր:
Ինչու է անհրաժեշտ բառապաշարային անալիզատոր:
Anonim

Լեքսիկական անալիզատորին անհրաժեշտ է ՝ սկանավորելու և հայտնաբերելու վավեր տողերի/նշանների/լեքսեմների միայն վերջավոր շարքը, որը պատկանում է ձեռքի տակ գտնվող լեզվին: Այն որոնում է լեզվի կանոններով սահմանված օրինաչափությունը։ Կանոնավոր արտահայտությունները կարող են արտահայտել վերջավոր լեզուներ՝ սահմանելով որոշակի օրինաչափություն նշանների վերջավոր տողերի համար:

Ինչո՞ւ է մեզ անհրաժեշտ բառապաշար անալիզատոր։

Լեքսիկական անալիզատորի դերը

Կազմողի առաջին փուլը: Լեքսիկական վերլուծություն. նիշերի մուտքագրման տող վերցնելու գործընթաց (օրինակ՝ համակարգչային ծրագրի սկզբնաղբյուրը) և ստեղծելու խորհրդանիշների հաջորդականություն, որը կոչվում է բառապաշար կամ պարզապես նշաններ, որոնք կարող են ավելի հեշտ վարվել վերլուծողի կողմից:

Ո՞րն է բառարանային անալիզատորի դերը կոմպիլյատորում։

Վերլուծիչից get-next-tohen հրամանը ստանալուց հետո բեքսիական անալիզատորը կարդում է մուտքային նիշերը, մինչև որ կարողանա նույնականացնել հաջորդ նշանը: նշանները ազդում են վերլուծության որոշումների վրա, … հատկանիշներն ազդում են նշանների թարգմանության վրա:

Ի՞նչ է առաջացնում բառարանային անալիզատորը:

Լեքսիկական անալիզատորը (ինքնաբերաբար ստեղծվում է այնպիսի գործիքի միջոցով, ինչպիսին է lex-ը կամ ձեռքով պատրաստված) կարդում է նիշերի հոսքով, նույնականացնում է հոսքի բառակապակցությունները և դասակարգում դրանք նշանների. Սա կոչվում է նշանավորում: Եթե lexer-ը գտնի անվավեր նշան, այն կհայտնի սխալի մասին:

Ի՞նչ կարիք կա բառապաշարի և շարահյուսական անալիզատորի տարբեր փուլերում:

Լեքսիկական անալիզատորը օրինաչափությունների համապատասխանող է: Շարահյուսական վերլուծությունը ներառում է ծառի ձևավորում՝ ծրագրի շարահյուսության դեֆորմացիաները հայտնաբերելու համար: Լեքսիկական վերլուծության համար հաճախ օգտագործվում են ոչ այնքան բարդ մոտեցումներ: Շարահյուսական վերլուծությունը պահանջում է շատ ավելի բարդ մոտեցում:

Խորհուրդ ենք տալիս: