Assembler vs tlumočník
Obecně je kompilátor počítačový program, který čte program napsaný v jednom jazyce, který se nazývá zdrojový jazyk, a překládá jej do jiného jazyka, který se nazývá cílový jazyk. Zdrojový jazyk je tradičně jazykem vysoké úrovně, jako je C ++, a cílovým jazykem je jazyk s nízkou úrovní, jako je například jazyk Shromáždění. Existují však kompilátory, které mohou převést zdrojový program napsaný v jazyce Assembly a převést jej na strojový kód nebo kód objektu. Sestavovatelé jsou takové nástroje. Na druhé straně tlumočníci jsou nástroje, které provádějí pokyny psané v nějakém programovacím jazyce. Tlumočník může buď přímo provést zdrojový kód na vysoké úrovni nebo jej překládat do přechodného kódu a poté jej interpretovat nebo provést předkompilovaný kód.
Co je Assembler?
Assembler je software nebo nástroj, který překládá jazyk sestavení do strojového kódu. Takže assembler je typ kompilátoru a zdrojový kód je psán v jazyce Assembly. Sestava je lidsky čitelný jazyk, ale obvykle má vztah jeden ku jednomu s odpovídajícím strojovým kódem. Proto se říká, že assembler provádí izomorfní (one to one mapping) překlad. Pokročilí sestavovatelé poskytují další funkce, které podporují vývoj a ladění programů. Například typ assemblerů nazývaných makro assemblery poskytuje makro funkci.
Co je tlumočník?
Tlumočník je počítačový program nebo nástroj, který provádí programovací pokyny. Tlumočník může buď přímo provést zdrojový kód, nebo převést zdroj na mezilehlý kód a provést jej přímo, nebo provést předkompilovaný kód vytvořený kompilátorem (některé systémy tlumočníka zahrnují kompilátor pro tuto úlohu). Jazyky jako Perl, Python, MATLAB a Ruby jsou příklady programovacích jazyků, které používají přechodný kód. Pascal UCSD interpretuje předkompilovaný kód. Jazyky jako Java, BASIC a Samlltalk nejprve kompilují zdroj do přechodného kódu nazvaného bytecode a poté jej interpretují.
Jaký je rozdíl mezi Assemblerem a tlumočníkem??
Assembler lze považovat za speciální typ kompilátoru, který překládá pouze jazyk sestavení do strojového kódu. Tlumočníci jsou nástroje, které provádějí instrukce psané v nějakém jazyce. Tlumočnické systémy mohou zahrnovat překladač pro předkompilování kódu před interpretací, ale tlumočníka nelze nazvat zvláštním typem kompilátoru. Sestavovatelé produkují kód objektu, který bude možná muset být propojen pomocí linkerových programů, aby mohl běžet na počítači, ale většina tlumočníků může provedení programu provést sami. Sestavovatel obvykle provede překlad jeden na jednoho, ale to neplatí pro většinu tlumočníků. Protože jazyk Assembly má individuální mapování se strojovým kódem, může být assembler použit pro výrobu kódu, který běží velmi efektivně v případech, kdy je výkon velmi důležitý (např. Grafické stroje, vestavěné systémy s omezenými hardwarovými prostředky ve srovnání s osobním počítačem) jako jsou mikrovlnné trouby, pračky atd.). Na druhé straně se tlumočníci používají, když potřebujete vysokou přenositelnost. Například stejný Java bytecode může být spuštěn na různých platformách pomocí vhodného tlumočníka (JVM)..