Tolong jelaskan mengenai Microsoft Intermediate Language

Microsoft Intermediate Language (disingkat MSIL) adalah sebuah set instruksi yang bersifat independen terhadap CPU yang digunakan oleh Microsoft .NET Framework, yang dibuat pada saat program-program bahasa .NET (C#, J#, Visual Basic .NET) dikompilasi. MSIL mengandung instruksi untuk memuat, menyimpan, melakukan inisialisasi, dan memanggil metode-metode terhadap objek, mengingat hampir semua bahasa .NET adalah bersifat berorientasi objek. Ketika dikompilasi, MSIL akan ditambahkan dengan metadata dan Common Type System (CTS), sehingga dapat dibilang bahwa MSIL merupakan bahasa yang bersifat "cross-language". Sebelum dieksekusi, MSIL akan diterjemahkan terlebih dahulu ke dalam bahasa mesin agar dapat dieksekusi oleh mikroprosesor yang digunakan.