Assembler vs tolmač
Na splošno je prevajalnik računalniški program, ki bere program, napisan v enem jeziku, ki se imenuje izvorni jezik, in ga prevede v drug jezik, ki se imenuje ciljni jezik. Tradicionalno je izvorni jezik jezik na visoki ravni, kot je C ++, ciljni jezik pa je jezik nizke ravni, kot je skupščina. Vendar obstajajo prevajalniki, ki lahko pretvorijo izvorni program, napisan v jeziku montaže, in ga pretvorijo v strojno kodo ali objektno kodo. Sestavljalci so takšno orodje. Po drugi strani so tolmači orodja, ki izvajajo navodila, napisana v nekem programskem jeziku. Tolmač lahko neposredno izvrši izvorno kodo na visoki ravni ali pa jo prevede v vmesno kodo in jo nato interpretira ali izvede predhodno sestavljeno kodo.
Kaj je assembler?
Assembler je programska oprema ali orodje, ki jezik montaže prevede v strojno kodo. Torej, sestavljavnik je vrsta prevajalnika in izvorna koda je napisana v montažnem jeziku. Sestavljanje je človeško berljiv jezik, vendar ima običajno odnos med seboj in ustrezno strojno kodo. Zato naj bi sestavljavec izvajal izomorfni (ena na ena preslikava) prevajanje. Napredni sestavljavci nudijo dodatne funkcije, ki podpirajo razvoj programov in procese odpravljanja napak. Na primer, vrsta sestavljavcev, imenovanih makro sestavljavci, zagotavlja makro objekt.
Kaj je tolmač?
Tolmač je računalniški program ali orodje, ki izvaja programska navodila. Tolmač lahko izvorno kodo izvrši neposredno ali pretvori vir v vmesno kodo in jo neposredno izvrši ali pa izvede predhodno sestavljeno kodo, ki jo izdela prevajalnik (nekateri tolmaški sistemi vključujejo prevajalnik za to nalogo). Jeziki, kot so Perl, Python, MATLAB in Ruby, so primeri programskih jezikov, ki uporabljajo vmesno kodo. UCSD Pascal razlaga predhodno sestavljeno kodo. Jeziki, kot so Java, BASIC in Samlltalk, izvor najprej sestavijo v vmesno kodo, imenovano bytecode, nato pa jo razlagajo.
Kakšna je razlika med sestavljavcem in tolmačem?
Sestavljalec se lahko šteje za posebno vrsto prevajalnika, ki jezik prevajalnika samo prevede v strojno kodo. Tolmači so orodja, ki izvajajo navodila, napisana v nekem jeziku. Interpreterski sistemi lahko vključujejo prevajalnik, ki predprevaja kodo pred interpretacijo, vendar tolmača ni mogoče imenovati posebne vrste prevajalnika. Sestavljalci ustvarijo objektno kodo, ki jo je morda treba povezati s povezovalnimi programi, da se lahko izvajajo na stroju, vendar večina tolmačev lahko izvedbo programa izvede sama. Sestavljalec običajno izvede prevod enega na enega, vendar to za večino tolmačev ne drži. Ker se v jeziku montaže uporablja kartiranje s strojno kodo, se lahko uporabi monter za izdelavo kode, ki deluje zelo učinkovito za primere, ko je zelo pomembna zmogljivost (npr. Grafični motorji, vgrajeni sistemi z omejenimi strojskimi viri v primerjavi z osebnim računalnikom kot so mikrovalovne pečice, pralni stroji itd.). Po drugi strani pa se tolmači uporabljajo, kadar potrebujete visoko prenosljivost. Na primer, isto bajtno kodo Java je mogoče izvajati na različnih platformah z uporabo ustreznega tolmača (JVM).