Hoppa till innehållet

Common Intermediate Language

Från Wikipedia
Version från den 5 augusti 2009 kl. 18.16 av Thijs!bot (Diskussion | Bidrag) (robot Lägger till: fa, fr Ändrar: es, he, zh)

Common Intermediate Language (CIL) (tidigare kallat Microsoft Intermediate Language eller MSIL) är ett mellanliggande högnivå-assemblyspråk som beskrivs i Common Language Infrastructure (CLI). Alla CLI-kompatibla programspråk kompileras till CIL bytekod. CIL är ett objektorienterat assemblyspråk som är baserad på stack-principen. CIL är plattformsoberoende och exekveras av en virtuell maskin. Bland språk som kompileras till CIL finner vi C#, Visual Basic .NET, C++/CLI och J#.

CIL gick tidigare under namnet Microsoft Intermediate Language (MSIL) men är sedan standardisering känt som CIL. Trots detta kallas det fortfarande MSIL av många utvecklarna som varit med från början.

Syntax

Common Intermediate Language är stack-baserat dvs. att variablerna som används i en operation sparas på en stack, till skillnad från vanliga assemblerspråk som är register-baserade. Utöver detta så är språket också objektorienterat. Dessa funktioner är integrerade i CIL för att göra det enklare för programmeringsspråken som delar det som ett mellanliggande språk lättare ska kunna interagera med varandra.

Exekvera CIL

  1. Källkoden (skriven i ett .NET-språk) kompileras till CIL och ett .NET Assembly skapas.
  2. Vid exekvering skickas CIL-instruktionerna genom exekveringsmotorns (t.ex. CLR) JIT-kompilator och översätts till maskinkod. (NGEN elminerar det här steget vid körning).
  3. Maskinkoden exekveras av datorns processor.

Exempel

Här är det berömda Hello World-programmet skrivet i CIL.

.assembly HelloWorld{}
.method public hidebysig static void Main() cil managed
{
   .entrypoint
   ldstr "Hello World!"
   call void [mscorlib]System.Console::WriteLine(string)
   ret
}

Se även

Externa länkar