Skip to main content

Hvad er et mellemsprog?

I computerprogrammering, når menneskelig læsbar kildekode er parset af en kompilator, oversætter kompilatoren ofte kildekommandoerne til en række instruktioner, der ikke er helt indbygget maskinkode, men kan behandles yderligere, optimeres eller kompileres af kompilatoren eller andenSoftwareværktøjer.De filer, der produceres, indeholder instruktioner, der siges at være på et mellemsprog, fordi det sprog, der bruges af kompilatoren, hverken er meningsfuldt for det større operativsystem eller det sprog, der bruges af programmereren til at skrive koden i første omgang, men i stedeter et sprog, der fungerer som en bro mellem skrivning og udførelse af programmet.Et mellemsprog bruges undertiden til at give en kompilator mulighed for at foretage meget præcise optimeringer, så programmet kører mere effektivt, men det kan også bruges til at producere outputfiler, der er bærbare mellem forskellige, inkompatible systemer.Den faktiske syntaks for sproget kan ligne maskinkode eller andre typer ikke-menneskelige læsbare bytekode, eller sproget kan bare være en eksisterende cross-platform computerprogrammeringssprog.

Når det bruges til kompilatoroptimering, tager en sprogkompilator hver erklæring iEn kildekodefil og bryder kommandoen ned på mellemsproget.En enkelt menneskelig læsbar programmeringserklæring kan nedbrydes i snesevis af maskinsprogsinstruktioner, så det mellemliggende sprog skaber et abstraktionsniveau, som kompilatoren kan bruge til at identificere områder i koden, hvor optimeringer kan foretages uden først at skulle binde koden tilEventuelle indfødte implementeringer eller biblioteker.Når den er afsluttet, kan den formidlende kodefil derefter samles yderligere for at lave en indbygget binær fil, eller den kan køres gennem et andet program, kendt som en tolk, der udfører koden ved at udarbejde den til indbyggede instruktioner efter behov.

NogleSprog, såsom Java , bruger et mellemsprog til at oprette kompilerede filer, der er optimeret, men også bærbare til andre computersystemer.Denne type kode er undertiden kendt som bytecode og ligner maskinkode eller samlingssprog.Bytecode gemmes i filer på en måde, der er platformuafhængig, hvilket betyder, at den kan overføres til ethvert computersystem eller enhed, der kan køre en tolk.Når bytekoden er på et system, kan den enten køres som et fortolket program, eller det kan samles til at køre naturligt på målsystemet.

I nogle tilfælde er et computersprog designet til at gøre det let at programmere mod en bestemtAfslut, såsom en interaktiv webapplikation, men designerne ønsker ikke at inkludere brugerdefinerede kompilatorer, tolke eller plug-ins til forskellige systemer.I disse tilfælde kan kompilatorens mellemsprog være et eksisterende sprog, der allerede har etableret tolkeplatformtolk.Det resulterende mellemsprog i dette tilfælde er menneskelig læsbar.Et eksempel på et computerprogrammeringssprog, der også bruges som et mellemsprog, er JavaScript , som har fordelen ved at være i stand til at køre i næsten enhver webbrowser på enhver platform, fra 2011.