Taula de continguts:
- Definició: què significa Intermediate Language (IL)?
- Techopedia explica el llenguatge intermedi (IL)
Definició: què significa Intermediate Language (IL)?
El llenguatge intermedi (IL) és un llenguatge de programació orientat a objectes dissenyat per a ser utilitzat pels compiladors per a .NET Framework abans de la compilació estàtica o dinàmica al codi de màquina. .NET Framework utilitza la IL per generar codi independent de la màquina com a sortida de la compilació del codi font escrit en qualsevol llenguatge de programació .NET.
IL és un llenguatge d'assemblea basat en una pila que es converteix a bytecode durant l'execució d'una màquina virtual. Està definida per l’especificació de la infraestructura lingüística comuna (CLI). Com que s'utilitza IL per a la generació automàtica de codi compilat, no cal aprendre la seva sintaxi.
Aquest terme també es coneix com a llenguatge intermedi de Microsoft (MSIL) o llenguatge intermedi comú (CIL).
Techopedia explica el llenguatge intermedi (IL)
Amb l'ajut d'un compilador JIT (just-in-time) adequat, es pot executar codi IL en qualsevol arquitectura informàtica suportada pel compilador JIT. A diferència dels intèrprets, la recopilació JIT proporciona un millor rendiment, preserva la memòria i estalvia temps durant la inicialització de l'aplicació. IL permet la funció de independència de la plataforma i la CPU del framework .NET, permetent executar el codi font compilat en qualsevol entorn que admet l'especificació CLI.
La verificació de la seguretat del codi, per al codi IL, proporciona una millor seguretat i fiabilitat que els fitxers executables compilats de forma nativa. El metadat, que descriu el codi MSIL a l'executable portàtil, elimina la necessitat de biblioteques de tipus i fitxers de llenguatge de definició intermedis tal com s'utilitzava en la tecnologia Component Object Model (COM). Combinada amb metadades i un sistema de tipus comú, IL constitueix els mitjans per integrar mòduls escrits en diferents idiomes en una sola aplicació, permetent així la independència lingüística.
Tot i que l’IL és similar al bytecode Java en el seu ús per part dels compiladors, es diferencia d’aquest darrer perquè està dissenyat per a la independència de la plataforma i la independència del llenguatge. També difereix que es compila i no s'interpreta.
S'inclouen dos tipus de conjunts d'instruccions amb IL; instruccions de base, similars a les instruccions de la CPU natives i les instruccions del model d'objectes utilitzades pel llenguatge d'alt nivell. IL inclou totes les instruccions necessàries per carregar, emmagatzemar, inicialitzar i fer trucades a objectes. També inclou operacions aritmètiques i lògiques, flux de control, accés directe a la memòria, maneig d’excepcions i altres operacions. A diferència del format d’arxiu d’objectes comuns que s’utilitza per al contingut executable de l’executable portàtil de Microsoft tradicional, l’executable portàtil generat, després de la compilació de codi gestionat, conté tant instruccions IL com metadades.
Les dues eines associades al codi IL són MSIL Assembler (Ilasm.exe) i MSIL Disassemble (Ildasm.exe). El primer genera un fitxer executable portàtil a partir del codi IL i permet visualitzar el codi IL en format llegible per a humans, mentre que el segon converteix un fitxer executable portàtil a un fitxer de text, per a la seva visualització i modificació. Totes dues s’instal·len automàticament com a part de Visual Studio.