共通中間言語

提供: MonoBook
2012年4月3日 (火) 14:24時点におけるimported>Administratorによる版
ナビゲーションに移動 検索に移動

共通中間言語(きょうつうちゅうかんげんご、Common Intermediate Language、CIL)とは、Monoおよび.NET Frameworkで用いられるアセンブリ言語に類似した仮想マシン語のことである。.NET Frameworkがベータ版だったころまでは「Microsoft Intermediate Language」(MSIL)として知られており、今なおMSILと呼ぶひとは多い。

CILは、オブジェクト指向アセンブリ言語であり、かつ完全にスタックベースの言語である。

.NET系のプログラミング言語で書かれたソースコードコンパイルされてCILに変換される。CIL自体はプラットフォームに依存しない(特定CPUに依存しない)命令セットで構成されている。 そのためCILは、理論上はネイティブコードに変換することも(Monoでは実験的に可能)、.NET Frameworkの仮想マシンである共通言語基盤CLR)で実行することもできる。

使用例

CILによる「Hello, world」プログラムの例。

.method public static void Main() cil managed
{
    .entrypoint
    .maxstack 1
    ldstr "hello, world"
    call void [mscorlib]System.Console::WriteLine(string)
    ret
}

CILの命令セット

関連項目

参考文献

外部リンク