Assembler vs Compiler
Općenito, prevoditelj je računalni program koji čita program napisan na jednom jeziku, koji se zove izvorni jezik, i prevodi ga u drugi jezik, koji se naziva ciljni jezik. Tradicionalno, izvorni jezik bio je jezik visoke razine poput C ++, a ciljni jezik bio je jezik niske razine poput skupštinskog jezika. Međutim, postoje prevoditelji koji mogu pretvoriti izvorni program napisan na jeziku skupštine i pretvoriti ga u strojni kod ili objektni kod. Monitori su takav alat. Dakle, i sakupljači i prevoditelji u konačnici proizvode kôd koji se može izravno izvršiti na stroju.
Što je prevoditelj?
Compiler je računalni program koji čita program napisan na jednom jeziku, koji se zove izvorni jezik, i prevodi ga u drugi jezik, koji se naziva ciljni jezik. Najčešće je izvorni jezik jezik visoke razine, a ciljni jezik jezik niske razine. Dakle, općenito prevoditelji se mogu vidjeti kao prevoditelji koji prevode s jednog jezika na drugi. Pored toga, prevoditelji provode određene optimizacije za kod. Tipični sastavljač sastoji se od nekoliko glavnih komponenti. Prva komponenta je skener (poznat i kao leksički analizator). Skener čita program i pretvara ga u niz tokena. Druga komponenta je parser. Pretvara niz tokena u stablo raščlanjivanja (ili apstraktno stablo sintakse), koje bilježi sintaktičku strukturu programa. Sljedeća komponenta su semantičke rutine koje tumače semantiku sintaktičke strukture. Slijede optimizacije koda i stvaranje krajnjeg koda.
Što je Assembler?
Assembler je softver ili alat koji prevodi skupštinski jezik u strojni kod. Dakle, montažer je tip prevodilaca, a izvorni kôd je napisan na skupštinskom jeziku. Sastavljanje je ljudski razumljiv jezik, ali obično ima odnos jedan na jedan s odgovarajućim strojnim kodom. Stoga se kaže da montažer izomorfni (jedan na jedan preslikavanje) prevodi. Napredni alati za montažu pružaju dodatne značajke koje podržavaju razvoj programa i postupke uklanjanja pogrešaka. Na primjer, vrsta alata za sastavljanje naziva makro aparatori pruža makro olakšanje.
Koja je razlika između sastavljača i sastavljača?
Compiler je računalni program koji čita program napisan na jednom jeziku i prevodi ga na drugi jezik, dok se alata za sastavljanje može smatrati posebnom vrstom prevoditelja koji prevodi samo skupštinski jezik u strojni kod. Sastavljači obično proizvode izvršni kod stroja izravno s jezika visoke razine, ali sastavljači proizvode objektni kôd koji se možda mora povezati pomoću programa za povezivanje da bi se pokrenuo na stroju. Budući da se na jeziku skupštine nalazi mapiranje jedan na jedan s strojnim kodom, sastavljač se može koristiti za proizvodnju koda koji se vrlo učinkovito izvodi za prilike u kojima su performanse vrlo važne (npr. Grafički motori, ugrađeni sustavi s ograničenim hardverskim resursima u usporedbi s osobnim računalom poput mikrovalnih pećnica, perilica rublja itd.).