Skip to main content

Vad är ett mellanspråk?

I datorprogrammering, när mänsklig läsbar källkod analyseras av en kompilator, översätter kompilatorn ofta källkommandona till en sekvens av instruktioner som inte är helt inhemska maskinkod men kan behandlas ytterligare, optimeras eller sammanställas av kompilatorn eller andraProgramvaruverktyg.De filer som produceras innehåller instruktioner som sägs vara på ett mellanliggande språk, eftersom det språk som används av kompilatorn varken är meningsfullt för det större operativsystemet eller det språk som används av programmeraren för att skriva koden i första hand, utan iställetär ett språk som fungerar som en bro mellan skrivandet och genomförandet av programmet.Ett mellanliggande språk används ibland för att en kompilator kan göra mycket exakta optimeringar så att programmet körs mer effektivt, men det kan också användas för att producera utgångsfiler som är bärbara mellan olika, inkompatibla system.Den faktiska syntaxen på språket kan likna maskinkod eller andra typer av icke-human läsbar bytekod, eller språket kan bara vara ett befintligt tvärplattformad datorprogrammeringsspråk.

.En källkodfil och bryter ner kommandot i mellanspråket.Ett enda uttalande om mänskligt läsbart program kan bryta ner i dussintals maskinspråkinstruktioner, så det mellanliggande språket skapar en abstraktionsnivå som kompilatorn kan använda för att identifiera områden i koden där optimeringar kan göras utan att först behöva binda koden tillalla infödda implementeringar eller bibliotek.När den är klar kan mellanhandskodfilen sedan sammanställas för att göra en inbyggd binär fil, eller den kan köras genom ett annat program, känt som en tolk, som kommer att utföra koden genom att sammanställa den till infödda instruktioner efter behov. VissaSpråk, såsom Java , använder ett mellanspråk för att skapa sammanställda filer som är optimerade men också bärbara för andra datorsystem.Denna typ av kod är ibland känd som bytekod och liknar maskinkod eller monteringsspråk.Bytecode lagras i filer på ett sätt som är plattformsoberoende, vilket innebär att den kan överföras till alla datorsystem eller enheter som kan köra en tolk.När bytekoden är på ett system kan det antingen köras som ett tolkat program eller det kan sammanställas för att köras naturligt på målsystemet. I vissa fall är ett datorspråk utformat för att göra det enkelt att programmera mot en specifikSlut, till exempel en interaktiv webbapplikation, men designarna vill inte inkludera anpassade kompilatorer, tolkar eller plug-ins för olika system.I dessa fall kan kompilatorns mellanspråk vara ett befintligt språk som redan har etablerat tolkar över plattformar.Det resulterande mellanspråket i detta fall är mänsklig läsbar.Ett exempel på ett datorprogrammeringsspråk som också används som ett mellanspråk är JavaScript , som har fördelen att kunna köra i nästan alla webbläsare på alla plattformar från och med 2011.