Különbség az összeszerelő és a tolmács között

Különbség az összeszerelő és a tolmács között
Különbség az összeszerelő és a tolmács között

Videó: Különbség az összeszerelő és a tolmács között

Videó: Különbség az összeszerelő és a tolmács között
Videó: Market Navigátor 33C rész - Mi a különbség a villaparkok és lakóparkok között" 2024, December
Anonim

Összeszerelő kontra tolmács

Általában a fordító egy számítógépes program, amely beolvassa az egyik nyelven írt programot, amelyet forrásnyelvnek neveznek, és lefordítja egy másik nyelvre, amelyet célnyelvnek neveznek. Hagyományosan a forrásnyelv egy magas szintű nyelv, például a C++, a célnyelv pedig egy alacsony szintű nyelv, például az Assembly nyelv. Vannak azonban olyan fordítók, amelyek az Assembly nyelven írt forrásprogramot képesek átalakítani, és gépi kódra vagy objektumkódra konvertálni. Az összeszerelők ilyen eszközök. Másrészt a tolmácsok olyan eszközök, amelyek valamilyen programozási nyelven írt utasításokat hajtanak végre. Az Interpreter vagy közvetlenül végrehajthatja a magas szintű forráskódot, vagy lefordíthatja azokat köztes kódra, majd értelmezheti vagy előre lefordított kódot hajthat végre.

Mi az Assembler?

Az Assembler olyan szoftver vagy eszköz, amely az Assembly nyelvet gépi kódra fordítja. Tehát az assembler egyfajta fordító, és a forráskód Assembly nyelven van írva. Az Assembly egy ember által olvasható nyelv, de jellemzően egy az egyhez kapcsolata van a megfelelő gépi kóddal. Ezért azt mondják, hogy az assembler izomorf (egy az egyhez leképezés) fordítást hajt végre. A fejlett összeállítók további szolgáltatásokat nyújtanak, amelyek támogatják a programfejlesztést és a hibakeresési folyamatokat. Például a makróösszeállítóknak nevezett összeszerelők makrólehetőséget biztosítanak.

Mi az a tolmács?

A tolmács egy számítógépes program vagy olyan eszköz, amely programozási utasításokat hajt végre. Az értelmező vagy közvetlenül végrehajtja a forráskódot, vagy átalakítja a forrást köztes kóddá, és közvetlenül végrehajtja, vagy végrehajthatja a fordító által előállított előre lefordított kódot (egyes értelmező rendszerek tartalmaznak fordítót ehhez a feladathoz). Az olyan nyelvek, mint a Perl, Python, MATLAB és Ruby, olyan programozási nyelvek példái, amelyek köztes kódot használnak. Az UCSD Pascal egy előre lefordított kódot értelmez. Az olyan nyelvek, mint a Java, a BASIC és a Samlltalk, először a forrást egy bytecode nevű köztes kódra fordítják, majd értelmezik.

Mi a különbség az Assembler és a Tolmács között?

Az assembler egy speciális fordítótípusnak tekinthető, amely csak az Assembly nyelvet fordítja le gépi kódra. A tolmácsok olyan eszközök, amelyek valamilyen nyelven írt utasításokat hajtanak végre. A tolmácsrendszerek tartalmazhatnak egy fordítót, amely az értelmezés előtt előre lefordítja a kódot, de az értelmező nem nevezhető a fordító speciális típusának. Az összeszerelők objektumkódot állítanak elő, amelyet linker programokkal kell összekapcsolni ahhoz, hogy egy gépen futhassanak, de a legtöbb interpreter képes önállóan befejezni a program végrehajtását. Az assembler általában egy az egyhez fordítást végez, de ez nem igaz a legtöbb tolmácsra. Mivel az Assembly nyelv egy az egyhez leképezéssel rendelkezik a gépi kóddal, az assembler használható olyan kódok előállítására, amelyek nagyon hatékonyan futnak olyan esetekben, amikor a teljesítmény nagyon fontos (pl. grafikus motorok, beágyazott rendszerek, amelyek hardver erőforrásai korlátozottak a személyi számítógépekhez képest mint a mikrohullámú sütő, mosógép stb.). Másrészt tolmácsokat használnak, ha nagy hordozhatóságra van szükség. Például ugyanaz a Java bájtkód futtatható különböző platformokon a megfelelő értelmező (JVM) használatával.

Ajánlott: