COMPILERS
Mkusanyaji hurejelea programu ya kompyuta inayotumiwa kutafsiri msimbo wa kompyuta ambao umeandikwa katika lugha moja ya programu (inayojulikana kama lugha chanzi) hadi lugha nyingine ya programu (inayojulikana kama lugha lengwa). Neno mkusanyaji hutumika kimsingi kwa programu zinazotafsiri misimbo ya chanzo kutoka lugha ya kiwango cha juu ya upangaji hadi lugha ya kiwango cha chini ya programu. Kwa mfano, msimbo wa mashine, msimbo wa kitu au lugha ya kusanyiko ili kuunda programu inayoweza kutekelezwa.
Ni muhimu kutambua kwamba kuna aina nyingi za compilers. Iwapo programu ambayo imetungwa inaweza kuendeshwa kwenye kompyuta ambayo mfumo wake wa uendeshaji au CPU ni tofauti na ile inayoendeshwa na mkusanyaji, mkusanyaji hurejelewa kama mkusanyaji mtambuka. Mkusanyaji wa bootstrap kwa upande mwingine imeandikwa katika lugha ambayo inakusudia kukusanya. Decompiler ni programu ambayo hutumiwa kutafsiri lugha ya kiwango cha chini hadi lugha ya kiwango cha juu. Mpango unaotumika kutafsiri kati ya lugha za kiwango cha juu hurejelewa kama mkusanyaji kutoka chanzo hadi chanzo. Inaweza pia kujulikana kama transpiler. Programu ambayo ina jukumu la kutafsiri muundo wa misemo bila mabadiliko ya lugha inajulikana kama mwandishi wa lugha. Neno mkusanyaji-mkusanyaji hurejelea zana hizo ambazo hutumika kuunda vichanganuzi vinavyowajibika kufanya uchanganuzi wa sintaksia.
Baadhi ya shughuli zinazofanywa na mkusanyaji ni pamoja na: usindikaji wa awali, uchanganuzi, (tafsiri iliyoelekezwa kwa sintaksia) uchanganuzi wa kisemantiki, uchanganuzi wa kileksia, utengenezaji wa msimbo, uboreshaji wa msimbo na ubadilishaji wa programu za ingizo kuwa uwakilishi wa kati. Wakusanyaji wana jukumu la kutekeleza shughuli hizi katika awamu tofauti ambazo zinakuza mabadiliko sahihi na muundo bora wa ingizo la chanzo kwa matokeo lengwa. Makosa ya programu ambayo husababishwa na tabia isiyo sahihi ya mkusanyaji inaweza kuwa ngumu sana kufuatilia na kufanya kazi karibu. Watekelezaji wa mkusanyaji kwa hivyo huwekeza juhudi kubwa ili kuhakikisha usahihi wa mkusanyaji.
Ni muhimu kutambua kwamba wakusanyaji sio watafsiri pekee ambao hutumiwa kubadilisha programu za chanzo. Programu ya kompyuta ambayo ina jukumu la kubadilisha na kisha kutekeleza shughuli zilizoonyeshwa inajulikana kama mkalimani. Mchakato wa kutafsiri huathiri muundo wa lugha za kompyuta ambao hupelekea upendeleo wa ukalimani au mkusanyo. Kwa vitendo, utekelezaji wa mkalimani kwa watunzi na lugha zilizokusanywa zinaweza kutekelezwa kwa lugha zilizotafsiriwa.
Kumbuka kuwa wakati wa kutumia mkusanyaji, mchakato wa hatua mbili hutumiwa kuendesha programu,
Mnyororo wa zana ya Mkusanyiko
Kwa programu ambazo ni kubwa, mkusanyaji ni sehemu ya mlolongo wa zana nyingi,
(preprocessor)- (mkusanyaji)- (mkusanyaji)- (kiunga)- (kipakiaji).
MUUNDO WA MTUNZI
Wakusanyaji wa kisasa wameundwa na sehemu kuu mbili. Kila moja ya sehemu hizi mara nyingi hugawanywa. Sehemu hizi kuu mbili ni sehemu ya mbele na ya nyuma.
Mwisho wa mbele ni wajibu wa kuchambua programu ya chanzo, huunda uwakilishi wa kati wa programu na huamua sehemu zake za msingi. Kwa ujumla, sehemu ya mbele haitegemei lugha lengwa.
Mwisho wa nyuma kwa upande mwingine una jukumu la kuunganisha programu inayolengwa kutoka kwa uwakilishi wa kati ambao hutolewa na mwisho wa mbele. Kwa ujumla, sehemu ya nyuma inasemekana kuwa huru kutokana na lugha chanzi.