Унар операторлар учун туртликнинг иккинчи операндини майдонини игнорировать(қайтариш ёки e'tibor bermaslik) килиш мумкин, иккитадан ортик операндларни талаб киладиган амалларни эса бир неча туртликлардан ташкил топган кетма-кетликлар куринишида ифодалаш мумкин. - Унар операторлар учун туртликнинг иккинчи операндини майдонини игнорировать(қайтариш ёки e'tibor bermaslik) килиш мумкин, иккитадан ортик операндларни талаб киладиган амалларни эса бир неча туртликлардан ташкил топган кетма-кетликлар куринишида ифодалаш мумкин.
- Масалан, куйидаги операторни X:= F(A,B,C,D) учта туртлик куринишидаги гурух сифатида ёзиш мумкин.
- (F1,A,B, Т1)
- (F2, Т1,С, Т2)
- (F, Т2, D, Х)
- F1 ва F2 функциялар оралик хисоблашларни амалга оширадилар, Т1 ва Т2 ячейкалар эса ушбу харакатларнинг натижаларини саклаш учун мулжалланган. Дастурни фактик куриш вактида код генератори объект кодида F1 ( бу амал учун F2 ва F амаллар оркали) амални
- тугри ифодалаши мумкин.
мисол - Яна оралик ячейкалардан фойдаланишга боглик мисол караймиз. Фараз килайлик куйидаги постфикс ёзувли гап берилган булсин. SxSxSySz*+:=.......Бу гапга Y ва Z купайтириш амаллари, натижани Х билан кушувчи ва Х узгарувчига олинган суммани узлаштириувчи амаллар киради. Туртликни генерациялаш вактида купайтиришни амалга оширувчи учун ушбу оралик натижани сакловчи ячейка керак булади. Бу холатда, вактинчалик ва ички узгарувчи ташкил этилади деб фараз киламиз. Шундай килиб, каралаётган гап куйидаги кетма-кетликда ифодаланади.
- (MULT_OP, Sy, Sz,T1)
- (ADD_OP,Sx,T1,Sx), Бу ерда биринчи туртлик Y ни Z га купайтириш ва натижани T1 ячейкага ёзишни, иккинчи туртлик эса X узгарувчини Y*Z амал натижасини сакловчи T1
- узгарувчи билан кушишни ва суммани X га ёзувни аниклайди.
- Ob'ekt kodini yaratish - kompilyator tomonidan boshlang’ dasturning ichki ko'rinishini chiqish tilidagi belgilar qatoriga tarjima qilish. Ob'ekt kodini yaratish natijasida hosil bo'lgan ob'ekt dasturini assembler tilida yoki to'g'ridan-to'g'ri mashina tilida yaratadi. Dasturning ichki ko'rinishi kompilyatorning bajarilishiga qarab har qanday tuzilishga ega bo'lishi mumkin, natijada olingan dastur har doim komandalarning chiziqli ketma-ketligidir.
Do'stlaringiz bilan baham: |