Assembler vs tolk
Generelt er kompilator et computerprogram, der læser et program skrevet på et sprog, der kaldes kildesproget, og oversætter det til et andet sprog, der kaldes målsproget. Traditionelt er kildesprog et sprog på højt niveau såsom C ++, og målsprog er et lavt sprog som monteringssprog. Der er dog kompilatorer, der kan konvertere et kildeprogram skrevet på Assembly-sprog og konvertere det til maskinkode eller objektkode. Montører er sådanne værktøjer. På den anden side er tolke værktøjer, der udfører instruktioner skrevet på et eller andet programmeringssprog. Tolken kan enten udføre kildekode på højt niveau direkte eller oversætte dem til mellemkode og derefter fortolke den eller udføre prækompileret kode.
Hvad er en montør?
Assembler er software eller et værktøj, der oversætter monteringssprog til maskinkode. Så en samler er en type kompilator, og kildekoden er skrevet på forsamlingssprog. Samling er et menneskeligt læsbart sprog, men det har typisk en til en relation med den tilsvarende maskinkode. Derfor siges en samler at udføre isomorf oversættelse (en til en kortlægning). Avancerede montører giver yderligere funktioner, der understøtter programudvikling og fejlretningsprocesser. For eksempel giver typen af samlere kaldet makroenheder en makrofacilitet.
Hvad er en tolk?
En tolk er et computerprogram eller et værktøj, der udfører programmeringsinstruktioner. En tolk kan enten udføre kildekoden direkte eller konvertere kilden til en mellemkode og udføre den direkte eller udføre prækompileret kode produceret af en compiler (nogle tolkesystemer inkluderer en compiler til denne opgave). Sprog som Perl, Python, MATLAB og Ruby er eksempler på programmeringssprog, der bruger en mellemliggende kode. UCSD Pascal fortolker en forudkompileret kode. Sprog som Java, BASIC og Samlltalk kompilerer først kilden til en mellemkode kaldet bytecode og fortolker den derefter.
Hvad er forskellen mellem en montør og en tolk?
En samler kan betragtes som en særlig type kompilator, som kun oversætter monteringssprog til maskinkode. Tolke er værktøjer, der udfører instruktioner skrevet på et eller andet sprog. Tolkesystemer kan omfatte en kompilator til præ-kompilering af kode før fortolkning, men en tolk kan ikke kaldes en særlig type kompilator. Samlere producerer en objektkode, som muligvis skal linkes ved hjælp af linker-programmer for at køre på en maskine, men de fleste tolke kan afslutte udførelsen af et program alene. En montør vil typisk foretage en til en oversættelse, men det gælder ikke for de fleste tolke. Da monteringssprog har en til en kortlægning med maskinkode, kan en samler bruges til at producere kode, der kører meget effektivt til lejligheder, hvor ydeevne er meget vigtig (for f.eks. Grafikmotorer,indlejrede systemer med begrænsede hardwareressourcer sammenlignet med en personlig computer som mikrobølger, vaskemaskiner osv.). På den anden side bruges tolke, når du har brug for høj bærbarhed. For eksempel kan den samme Java-bytecode køres på forskellige platforme ved hjælp af den relevante tolk (JVM).