Muxammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti qarshi filiali


Download 352.7 Kb.
bet3/9
Sana11.11.2021
Hajmi352.7 Kb.
#173574
1   2   3   4   5   6   7   8   9
Bog'liq
8-laboratoriya ishi

Ассемблер кодини генерациялаш

Ассемблер кодини триадалар руйхати асосида генерациялаш кушимча айлантиришлар талаб этмайди, хар бир триада кандайдир ассемблер командалари кетма-кетлигига бир кийматли узгартирилиши мумкин. Бу холда асосий муаммо булиб микропроцессор регистрларини ассемблер кодини бажарилиш даврида тугри таксимлаш хисобланади.

Жорий триадага мос келувчи ассемблер командалари руйхатини куйишдан аввал аккумлятор кийматини узгартирилиш зарурияти текширилади. Агар у ерда аввалдан зарур киймат мавжуд булса, у холда унинг узгартирилиши ортикча хисобланади, акс холда, биринчи тугулувчи команда mov хисобланади. Худди шундай, амални бажарилиш натижаларини саклаш зарурияти тугилганда (агар у кейинчалик келувчи амалларда чакирилса), у регистрларнинг биронтасида саклаб куйилади.
Натижалар

Триадаларнинг руйхатларини генерацияси учун куйидаги модуллар Triad, TriListMaker ва TriListOptimizer жавоб берадилар. Triad синфи битта триадага мос келувчи структурани аниклайди. TriListMaker модули синтаксис чикиш дарахти асосида триадаларнинг бошлангич руйхатини генерациялайди, TriListOptimizer модул эса ортикча амалларни олиб ташлаш хисобига уни оптималлайди. Триадаларнинг оптималлаш тугалланиши биланок, натижавий руйхат AsmGenerator модулга жунатилади – бу модул эса ассемблер кодини генерациялашга жабоб беради. AsmGenerator модулнинг ишининг натижаси кирувчи матнли файл асосидаги натижавий объект коди хисобланади. Берилган амалларнинг натижалари экранга TriTab ва AsmTab модуллари оркали мос равишда чикарилади.



Download 352.7 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling