Ինչպե՞ս է աշխատում լեքսիկական անալիզատորը:
Ինչպե՞ս է աշխատում լեքսիկական անալիզատորը:

Video: Ինչպե՞ս է աշխատում լեքսիկական անալիզատորը:

Video: Ինչպե՞ս է աշխատում լեքսիկական անալիզատորը:
Video: Աշխատում է արդյոք ձեր ուղեղը ամբողջությամբ 2024, Ապրիլ
Anonim

Լեքսիկական վերլուծություն է կոմպիլյատորի առաջին փուլը. Այն բառարանային անալիզատոր բաժանում է այս շարահյուսությունները մի շարք նշանների՝ հեռացնելով ելակետային կոդի ցանկացած բացատ կամ մեկնաբանություն: Եթե բառարանային անալիզատոր գտնում է անվավեր նշան, այն առաջացնում է սխալ: Այն լեքսիկական անալիզատորի աշխատանքներ սերտորեն շարահյուսության հետ անալիզատոր.

Համապատասխանաբար, ի՞նչ է անում լեքսիկական անալիզատորը։

Լեքսերը, որը նաև կոչվում է լեքսիկական անալիզատոր կամ նշանաբան, ծրագիր է, որը խախտում է ծրագիրը մուտքագրում սկզբնական կոդը՝ լեքսեմների հաջորդականության մեջ: Այն կարդում է մուտքագրում սկզբնական կոդը նիշ առ նիշ, ճանաչում է լեքսեմները և թողարկում է լեքսեմները նկարագրող նշանների հաջորդականությունը:

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

Հետագայում հարց է ծագում, թե ինչ արդյունք է տալիս բառապաշար անալիզատորը:

(I) The ելքը ա բառարանային անալիզատոր նշաններ է: (II) Տոկենների ընդհանուր թիվը printf-ում ("i=%d, &i=%x", i, &i); են 10. (III) Նշանների աղյուսակը կարող է իրականացվել՝ օգտագործելով զանգված, հեշ աղյուսակ, ծառ և կապակցված ցուցակներ:

Ինչպե՞ս է աշխատում Lexer-ը:

Այն lexer պարզապես անիմաստ տողը վերածում է այնպիսի բաների հարթ ցուցակի, ինչպիսիք են «թիվը բառացի», «տառային բառացի», «նույնականացուցիչ» կամ «օպերատոր» և կարող է անել այնպիսի բաներ, ինչպիսիք են վերապահված նույնացուցիչների («հիմնաբառերի») ճանաչումը և բացատների հեռացումը: Ձևականորեն, ա lexer ճանաչում է կանոնավոր լեզուների մի շարք:

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