Hva er en programmeringskompilator?

En kompilator er et program som konverterer dataprogrammeringskode skrevet av en menneskelig programmerer til binær kode (maskinkode) som kan forstås og utføres av en bestemt CPU. Handlingen med å transformere kildekode til maskinkode kalles "kompilering." Når all koden blir transformert på en gang før den når plattformene som kjører den, kalles prosessen for forhåndsutvikling (AOT) -samling.

Hvilke programmeringsspråk bruker en AOT-kompilator?

Mange kjente programmeringsspråk krever en kompilator inkludert:

  • Fortran
  • Pascal
  • Samlingsspråk
  • C
  • C ++
  • Fort

Før Java og C # ble alle dataprogrammer enten samlet eller tolket.

Hva med tolket kode?

Tolket kode utfører instruksjoner i et program uten å kompilere dem til maskinspråk. Den tolke koden analyserer kildekoden direkte, er parret med en virtuell maskin som oversetter koden for maskinen på utførelsestidspunktet, eller benytter seg av forhåndskompilert kode. Javascript blir vanligvis tolket.

Kompilert kode kjører raskere enn tolket kode fordi den ikke trenger å gjøre noe arbeid når handlingen finner sted. Arbeidet er allerede gjort.

instagram viewer

Hvilke programmeringsspråk bruker en JIT-kompilator?

Java og C # bruker just-in-time kompilatorer. Just-in-time kompilatorer er en kombinasjon av AOT-kompilatorer og tolker. Etter at et Java-program er skrevet, gjør JIT-kompilatoren koden til bytekode i stedet for til kode som inneholder instruksjoner for en bestemt maskinvareplattforms prosessor. Bytekoden er plattformuavhengig og kan sendes og kjøres på hvilken som helst plattform som støtter Java. På en måte er programmet samlet i en totrinns prosess.

Tilsvarende bruker C # en JIT-kompilator som er en del av Common Language Runtime, som administrerer utførelsen av alle .NET-applikasjoner. Hver målplattform har en JIT-kompilator. Så lenge den mellomliggende bytekodespråkkonvertering kan forstås av plattformen, kjører programmet.

Fordeler og ulemper med AOT og JIT Compilation

AOT-of-time (AOT) -samling gir raskere oppstartstid, spesielt når mye av koden kjøres ved oppstart. Det krever imidlertid mer minne og mer diskplass. JOT-kompilering må være rettet mot de minst mulig av alle utførelsesplattformer.

Just-in-time (JIT) kompilering profilerer målplattformen mens den kjøres og kompileres på nytt for å gi forbedret ytelse. JIT genererer forbedret kode fordi den er målrettet mot den nåværende plattformen, selv om det vanligvis tar mer tid å kjøre enn AOT-kompilert kode.