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 indbyggede maskinkode, men kan behandles yderligere, optimeres eller kompileres af kompilatoren eller andre softwarevæ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 stedet er et sprog, der fungerer som en bro mellem skrivningen og udførelsen 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 rEADABLE BYTECODE, ELLER SPROG SPROG ER BARE ET EKSISTERERING AF COMPUTSPUPPORSPROGRAMMERINGSprog.
Når det bruges til kompilatoroptimering, tager en sprogkompilator hver sætning i en kildekodefil og bryder kommandoen ned på mellemsproget. En enkelt menneskelig læsbar programmeringserklæring kan opdeles i snesevis af maskinsprogsinstruktioner, så det mellemliggende sprog skaber et niveau af abstraktion, som kompilatoren kan bruge til at identificere områder i koden, hvor optimeringer kan foretages uden først at skulle binde koden til eventuelle oprindelige implementeringer eller biblioteker. Når den er afsluttet, kan den mellemliggende 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 indfødte instruktioner efter behov.
Nogle sprog, såsom Java®, bruger en intermeDiate sprog 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 nemt at programmere mod en bestemt ende, såsom en interaktiv webapplikation, men designerne ønsker ikke at medtage brugerdefinerede compilere, 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å en computerprogrammiNG -sprog, 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.