以下はCILで書かれた基本的なHello worldプログラムである。それは文字列 "Hello, world!" を表示する。.assembly Hello {}.assembly extern mscorlib {}.method static void Main(){    .entrypoint    .maxstack 1    ldstr "Hello, world!"    call void [mscorlib]System.Console::WriteLine(string)    ret}以下のコードはオペコードの数をより複雑にしたものである。以下のコードはJavaバイトコードについての記事の当該コードと比較することもできる。static void Main(string[] args){    for (int i = 2; i < 1000; i++)    {        for (int j = 2; j < i; j++)        {             if (i % j == 0)                 goto outer;        }        Console.WriteLine(i);outer:    }}CILシンタックスでは、以下のようになる:.method private hidebysig static void Main(string[] args) cil managed{    .entrypoint    .maxstack  2    .locals init (int32 V_0,                  int32 V_1)              ldc.i4.2              stloc.0              br.s       IL_001f    IL_0004:  ldc.i4.2              stloc.1              br.s       IL_0011    IL_0008:  ldloc.0              ldloc.1              rem              brfalse.s  IL_001b              ldloc.1              ldc.i4.1              add              stloc.1    IL_0011:  ldloc.1              ldloc.0              blt.s      IL_0008              ldloc.0              call       void [mscorlib]System.Console::WriteLine(int32)    IL_001b:  ldloc.0              ldc.i4.1              add              stloc.0    IL_001f:  ldloc.0              ldc.i4     0x3e8              blt.s      IL_0004              ret}これはVMレベル近くでどのようにCILが見えるかを表現したものである。コンパイルされた場合、メソッドはテーブルにストアされ、アセンブリ内部にバイトとして命令がストアされる。そしてそれはPortable Executable (PE) である。
CLIはコンパイルされたクラスについての情報をメタデータとして記録する。Component Object Modelのタイプライブラリのように、メタデータによってアプリケーションが、アセンブリ内にあるインタフェース、クラス、型、メソッド、そしてフィールドをサポートし発見することを可能とする。このようなメタデータを読み取る処理はリフレクションと呼ばれる。メタデータは属性 の形式のデータである。カスタム属性はAttributeクラスを継承することで作ることができる。これはとても強力な機能である。クラスの作成者が付加した追加情報は、クラスの消費者によってアプリケーション毎に様々な方法で活用される。
戦艦山城は1913年（大正2年）11月20日、横須賀海軍工廠で仮称艦名第四號戦艦として起工された。1914年（大正3年）10月12日、仮称艦名第四號戦艦を山城と命名、1915年（大正4年）11月3日、伏見宮博恭王が臨席して進水式が行われ、1917年（大正6年）3月31日竣工した。1927年（昭和2年）7月、昭和天皇が「聯合艦隊の戦闘射撃及爆撃実験御覧」するに当り山城が御召艦に指定された（護衛は第四駆逐隊、供奉艦は扶桑）。28日、天皇は山城に乗艦した。山城には事前に徹底的な清掃と修理、天皇滞在の為の改造が施されていた。また艦上水泳のためのプールも六・七番砲塔左舷側に設けられた。当時の乗組員は、佐官11、尉官35、准士官16、下士官257、兵1011、傭人4、計1334名であった。以後、天皇の御召艦として、佐伯湾、奄美大島、小笠原諸島を航海する。豊後水道では空母赤城、鳳翔の艦載機訓練や戦艦長門、陸奥の夜間射撃訓練を天皇が天覧した。8月10日、横須賀に入港して天皇御退艦。同年10月30日、横浜沖で行われた大演習観艦式（御召艦陸奥、先導艦鬼怒、供奉艦阿武隈、由良、球磨、長良）に参加。その後1928年（昭和3年）12月から1929年（昭和4年）11月まで、連合艦隊旗艦となった。1936年（昭和11年）2月4日、山城から長門に連合艦隊旗艦が変更されたように短時間ながら連合艦隊旗艦となった事例がある。1928年（昭和3年）12月4日、横浜沖で行われた御大礼特別観艦式（御召艦榛名、先導艦金剛、供奉艦比叡、磐手）に参加。1930年（昭和5年）10月26日、神戸沖で行われた特別大演習観艦式（御召艦霧島、先導艦足柄、供奉艦妙高、那智、羽黒）に参加。1934年（昭和9年）11月15月からの1年間、南雲忠一大佐（のちの南雲機動部隊司令長官）が山城の艦長を勤めた。翌年5月の第二水雷戦隊との夜間演習では軽巡洋艦神通（二水戦旗艦）と正面衝突しかけたが南雲大佐の冷静な判断で回避に成功、大事故を免れている。1936年（昭和11年）7月から10月にかけての特別大演習期間中、高松宮宣仁親王（天皇弟宮。当時、海軍少佐、海軍大学校2年生）は山城副砲長兼務分隊長を命じられた。7月23日、高松宮は横須賀鎮守府司令長官米内光政中将や参謀長井上成美少将に迎えられて横須賀在泊の山城に乗艦する。山城は赤軍艦隊の旗艦に指定され、塩沢幸一中将が乗艦した。演習中に立ち寄った伊勢湾では、伏見宮博恭王軍令部総長、高橋三吉連合艦隊司令長官、野村直邦連合艦隊参謀長が山城を訪問し、高松宮と歓談した。10月29日、神戸沖で行われた昭和11年特別大演習観艦式（御召艦比叡、先導艦鳥海、供奉艦愛宕、足柄）に参加する。特別大演習終了をもって、高松宮は退艦した。1940年（昭和15年）10月11日、横浜沖で行われた紀元二千六百年特別観艦式（御召艦比叡、先導艦高雄、供奉艦加古、古鷹）にも参加した。