Intermediate Language

Compilers that target the CLR translate their source code into CIL and metadata. CIL is often described as an object-oriented assembly language for an abstract stack-based machine. What exactly does this description mean? CIL instructions resemble an assembly language; they include instructions to load values onto an execution stack, sometimes referred to as push instructions; instructions to store values from the stack into memory locations, sometimes referred to as pop instructions; and instructions to invoke method calls. This assembly language is not specific to any hardware architecture. For example, it makes no assumptions about the number of registers or their size in its instruction set. Rather, the instructions ...

Get Programming in the .NET Environment now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.