Verschil tussen assembler en tolk

Anonim

Assembler vs Interpreter

In het algemeen is compiler een computerprogramma dat een programma dat in één taal is geschreven, leest de brontaal heet en vertaalt het in een andere taal, die de doeltaal wordt genoemd. Traditioneel is de brontaal een taal op een hoog niveau, zoals C ++, en de doeltaal is een taal met een laag niveau, zoals Assembly Language. Er zijn echter compilers die een bronprogramma kunnen converteren die in Assembly-taal is geschreven en omzetten naar machinecode of objectcode. Assemblers zijn dergelijke hulpmiddelen. Aan de andere kant zijn tolken gereedschappen die instructies uitvoeren die in sommige programmeertalen zijn geschreven. Interpreter kan de broncode direct ook uitvoeren of vertalen naar intermediaire code en vervolgens interpreteren of expreteerde code uitvoeren.

Wat is een Assembler?

Assembler is software of een hulpprogramma dat de taal van de montage naar de machinecode vertaalt. Dus een assembler is een soort compiler en de broncode staat in Assembly Language. Assemblage is een menselijk leesbare taal, maar het heeft gewoonlijk een een tot een relatie met de overeenkomstige machinecode. Daarom wordt er gezegd dat er een isomorfe (een tot een mapping) vertaling wordt uitgevoerd. Geavanceerde assemblers bieden aanvullende functies die programma-ontwikkeling en debuggingprocessen ondersteunen. Bijvoorbeeld, het type assembleraars genaamd macro assemblers biedt een macro faciliteit.

Wat is een tolk?

Een tolk is een computerprogramma of een gereedschap dat programmeerinstructies uitvoert. Een tolk kan de broncode direct uitvoeren of de bron omzetten naar een tussencode en direct uitvoeren of de voorverpakte code uitvoeren die door een compiler wordt geproduceerd. Sommige tolksystemen bevatten een compiler voor deze taak. Talen als Perl, Python, MATLAB en Ruby zijn voorbeelden van programmeertalen die een tussencode gebruiken. UCSD Pascal interpreteert een precompiled code. Talen zoals Java, BASIC en Samlltalk compileren eerst de bron naar een tussencode die bytecode heet en vervolgens interpreteert.

Wat is het verschil tussen een assembler en een tolk?

Een assembler kan worden beschouwd als een speciaal type compiler, die alleen de montage taal vertaald naar de machinecode. Tolken zijn gereedschappen die instructies uitvoeren die in sommige talen zijn geschreven. Tolksystemen kunnen een compiler bevatten om code vooraf te compileren, maar een tolk kan geen speciaal type compiler genoemd worden. Assemblers produceren een objectcode die mogelijk via linkerprogramma's moet worden gekoppeld om op een machine te kunnen draaien, maar de meeste tolken kunnen de uitvoering van een programma zelf uitvoeren.Een assembler zal typisch een een tot een vertaling verrichten, maar dit geldt niet voor de meeste tolken. Omdat de assemblage taal een maal een mapping met een machinecode heeft, kan een assembler worden gebruikt voor het produceren van code die zeer efficiënt werkt voor situaties waarin prestaties erg belangrijk zijn (bijvoorbeeld grafische motoren, ingebedde systemen met beperkte hardwarebronnen in vergelijking met een persoonlijke computer zoals microgolven, wasmachines, enz.). Aan de andere kant worden tolken gebruikt wanneer u hoge draagbaarheid nodig hebt. Bijvoorbeeld, dezelfde Java bytecode kan op verschillende platforms worden uitgevoerd met behulp van de juiste tolk (JVM).