4.4 Дүкендік түрлендірушілер
Келтірілген префикстік жазылымдарды есептеу ережелері айтарлықтай жай, бірақ тәжірибеде бұндай формулаларды есептеу әдетте дүкендік қолданушымен іске асырылады. Постфикстік поляк жазылымын (ПоПЖ) келесідей анықтайық:
1 Егер инфикстік формуласы бір операндын көрсетсе, онда ПоПЖ формуласы бұл .
2 Егер формуласында *- операция белгісі, , – операндтарға арналған инфикстік формула болса, онда бұл ПоПЖ формуласы және бұнда –нің постфикстік формуласы.
3 Егер инфикстік формула болса, онда бұл ереженің постфикстік жазылымы постфикстік жазылым болады. Алдыңдағы мысалға ПоПЗ формуласын құрамыз.
және сыртқы операция операндыларын белгілей отырып, және түріндегі операндтардың постфикстік жазылымын табамыз.табылған постфикстік формуласына қойып, аяғында аламыз.
Формуланың постфикстік жазылымын есептеуді келесі тәсілмен көрсетуге болады:
Формуланы солдан оңға қарай артынан екі операнд жүретін операция белгісін тапқанша қараймыз.
Операцияны орындаймыз және нәтижені таңдалған операндтар мен операциялар орнына жазамыз.
(1) пунктіні формула орнына бір ғана жалғыз нәтиже алғанша қайталаймыз. Құрылған постфикстік формула есептеуін келесі түрде көрсетуге болады:
Тәжірибеде постфикстік формулаларды есептеуді іске асыру үшін дүкенді қолданумен орындаймыз. Бұл жағдайда есептеу келесі ережелер бойынша орындалады:
1 Кіріс шынжырдың кезекті символын оқу.
2 Егер кіріс символы – операнд болса, онда оны дүкенге жазу.
3 Егер кіріс символы – оператор болса, онда дүкеннен екі операндты оқып, операцияны орындау және қортындыны операнд ретінде дүкенге енгізу.
4 П.1 кіріс шынжырының барлық символдары оқылып бітпегенше қайталай беру.
Өткен бөлімде қарастырылған дүкендік автоматтар кірісте берілген шынжыр үшін автомат жіберетін тілге қатыстығын анықтауға мүмкіндік береді. Бұл бөлім дүкендік түрлендірушілер деп аталатын құрылғылар моделінің басқа типіне арналған. Бұндай құрылғылар берілген кіріс шынжырларына сәйкес келетін шығыс шынжырларын құруға мүмкіншілік береді. Ондай дүкендік түрлендірушілердің ауысымы немесе трансляция деп аталады.
Түрлендірушіні құру үшін алдын-ала ол қандай ауысым жүргізетінін білу керек. Және түрлендірушіні кез келген ауысымға емес, ал жай -кестесінің көмегімен мазмұндалатын ауысымға ғана құруға болады.
Достарыңызбен бөлісу: |