Assembler vs tolk
Generelt er kompilator et dataprogram som leser et program skrevet på ett språk, som kalles kildespråket, og oversetter det til et annet språk, som kalles målspråket. Tradisjonelt er kildespråk et høyt nivå språk som C ++ og målspråk er et lavt nivå språk som Assembly språk. Imidlertid er det kompilatorer som kan konvertere et kildeprogram skrevet på Assembly-språk og konvertere det til maskinkode eller objektkode. Montører er slike verktøy. På den annen side er tolker verktøy som utfører instruksjoner skrevet på noe programmeringsspråk. Tolk kan enten direkte utføre kildekode på høyt nivå eller oversette dem til mellomkode og deretter tolke den eller utføre forhåndskompilert kode.
Hva er en montør?
Assembler er programvare eller et verktøy som oversetter monteringsspråk til maskinkode. Så, en assembler er en type kompilator, og kildekoden er skrevet på Assembly-språk. Montering er et lesbart språk, men det har vanligvis en til en sammenheng med den tilsvarende maskinkoden. Derfor sies det at en montør utfører isomorf (en til en kartlegging) oversettelse. Avanserte montører har tilleggsfunksjoner som støtter programutvikling og feilsøking. For eksempel gir den typen montører som kalles makroenheter en makrofasilitet.
Hva er en tolk?
En tolk er et dataprogram eller et verktøy som utfører programmeringsinstruksjoner. En tolk kan enten utføre kildekoden direkte eller konvertere kilden til en mellomkode og utføre den direkte eller utføre forhåndskompilert kode produsert av en kompilator (noen tolkesystemer inkluderer en kompilator for denne oppgaven). Språk som Perl, Python, MATLAB og Ruby er eksempler på programmeringsspråk som bruker en mellomliggende kode. UCSD Pascal tolker en forhåndskompilert kode. Språk som Java, BASIC og Samlltalk kompilerer først kilden til en mellomkode kalt bytecode og tolker den deretter.
Hva er forskjellen mellom en montør og en tolk?
En montør kan betraktes som en spesiell type kompilator, som bare oversetter monteringsspråk til maskinkode. Tolker er verktøy som utfører instruksjoner skrevet på noen språk. Tolkesystemer kan inneholde en kompilator for å forhåndskompilere kode før tolking, men en tolk kan ikke kalles en spesiell type kompilator. Monterere produserer en objektkode, som kanskje må kobles til ved hjelp av lenkerprogrammer for å kjøre på en maskin, men de fleste tolker kan fullføre kjøringen av et program alene. En montør vil vanligvis gjøre en til en oversettelse, men dette gjelder ikke for de fleste tolker. Fordi monteringsspråk har en til en kartlegging med maskinkode, kan en montør brukes til å produsere kode som går veldig effektivt for anledninger der ytelse er veldig viktig (for f.eks. Grafikkmotorer,innebygde systemer med begrensede maskinvareressurser sammenlignet med en personlig datamaskin som mikrobølger, vaskemaskiner osv.). På den annen side brukes tolker når du trenger høy bærbarhet. For eksempel kan den samme Java bytecode kjøres på forskjellige plattformer ved å bruke riktig tolk (JVM).