Verschil tussen compiler en cross-compiler

Inhoudsopgave:

Anonim

Het belangrijkste verschil tussen compiler en cross-compiler is dat de compiler is een software die een computerprogramma dat is geschreven in programmeertaal op hoog niveau omzet in machinetaal, terwijl de cross-compiler een type compiler is die een uitvoerbare code kan maken voor een ander platform dan dat waarop de compiler draait.

Programmeurs schrijven programma's voor de computer in talen op hoog niveau. De computer begrijpt deze programma's niet. Een compiler is een vertaler die de broncode kan omzetten in een machinecode. Er zijn verschillende soorten compilers. De native code-compilers converteren de broncode alleen voor hetzelfde type platform. Incrementele compiler compileert de gewijzigde regels uit de broncode en werkt de objectcode bij. Cross-compiler is ook een type compiler. Het is in staat om uitvoerbare code te maken voor verschillende platforms.

Compiler, Cross Compiler, Programmeren, Retargeting, Retargetable Compiler

Wat is een compiler?

Een computerprogramma bestaat uit een reeks instructies voor de computer om een ​​specifieke taak uit te voeren. De meeste computerprogramma's zijn geschreven met programmeertalen op hoog niveau. De computer begrijpt deze programma's dus niet. Daarom worden ze geconverteerd naar machine begrijpelijke, machinetaal. Een compiler is een software die deze conversie uitvoert. Het zet het bronprogramma om in machinecode.

Afbeelding 1: Compiler

Een compiler vertaalt het hele programma tegelijk in machinecode. De compilatie vindt plaats vóór de uitvoering. Het toont alle foutmeldingen in het programma tegelijk. Het is onmogelijk om het programma uit te voeren zonder deze fouten te herstellen. Na de compilatie genereren deze programma's een tussenliggende objectcode. Daarom hebben deze talen meer geheugen nodig. Taal zoals C en C++ gebruiken compilers. Gewoonlijk zijn op compilers gebaseerde talen snel in uitvoering en moeilijk te debuggen.

Wat is een cross-compiler?

Een cross-compiler is een type compiler. Dit type compiler kan een uitvoerbare code maken voor een ander platform dan het platform waarop de compiler draait. Een compiler die bijvoorbeeld op een Windows-platform draait, genereert ook een code die op een Linux-platform draait, is een cross-compiler. Het proces van het maken van uitvoerbare code voor een andere machine wordt ook wel retargeting. Daarom is de cross-compiler ook bekend als a retargetable compiler. GNU GCC is een voorbeeld voor cross-compiler.

Verschil tussen compiler en cross-compiler

Definitie

Een compiler is een software die de computercode die in programmeertaal op hoog niveau is geschreven, vertaalt naar machinetaal. Een cross-compiler is software die uitvoerbare code kan maken voor andere platforms dan die waarop de compiler draait.

Gebruik

Een compiler helpt om de broncode op hoog niveau om te zetten in voor de machine begrijpelijke machinecode. Een cross-compiler is een type compiler die uitvoerbare code kan maken voor andere machines dan de machine waarop deze draait.

Conclusie

Het belangrijkste verschil tussen compiler en cross-compiler is dat de compiler software is die het computerprogramma dat in een programmeertaal op hoog niveau is geschreven, omzet in de machinetaal, terwijl cross-compiler een type compiler is die uitvoerbare code voor verschillende platforms kan maken.

Verwijzing:

1. "Cross-compiler." Wikipedia, Wikimedia Foundation, 23 juni 2018, hier beschikbaar. 2. Cross Compiler, Itechnica, 7 februari 2018, hier beschikbaar. 3. "Compiler en hun typen." LinkedIn SlideShare, 22 september 2015, hier beschikbaar.

Afbeelding met dank aan:

1. "Compiler" door I, Surachit (CC BY-SA 3.0) via Commons Wikimedia

Verschil tussen compiler en cross-compiler