stringtranslate.com

Código objeto

En informática , el código objeto o módulo objeto es el producto de un ensamblador o compilador . [1]

En un sentido general, el código objeto es una secuencia de instrucciones o sentencias en un lenguaje informático, [2] normalmente un lenguaje de código de máquina (es decir, binario ) o un lenguaje intermedio como el lenguaje de transferencia de registros (RTL). El término indica que el código es el objetivo o el resultado del proceso de compilación, y algunas fuentes antiguas se refieren al código fuente como un "programa objeto".

Detalles

Los archivos de objeto pueden, a su vez, vincularse para formar un archivo ejecutable o un archivo de biblioteca . Para poder utilizarlo, el código de objeto debe estar ubicado en un archivo ejecutable, un archivo de biblioteca o un archivo de objeto.

El código objeto es una parte del código de máquina que aún no se ha vinculado a un programa completo. Es el código de máquina para una biblioteca o módulo en particular que formará el producto completo. También puede contener marcadores de posición o desplazamientos, que no se encuentran en el código de máquina de un programa completo, que el enlazador usará para conectar todo. Mientras que el código de máquina es código binario que puede ser ejecutado directamente por la CPU, el código objeto tiene los saltos y las referencias entre módulos parcialmente parametrizados para que un enlazador pueda completarlos. Se supone que un archivo de objeto comienza en una ubicación específica en la memoria, a menudo cero. Contiene información sobre instrucciones que hacen referencia a la memoria, de modo que el enlazador puede reubicar el código al combinar múltiples archivos de objeto en un solo programa.

Un ensamblador se utiliza para convertir el código ensamblador en código de máquina (código objeto). Un enlazador enlaza varios archivos de objetos (y bibliotecas) para generar un ejecutable. Los ensambladores (y algunos compiladores) también pueden ensamblar directamente en código de máquina para producir archivos ejecutables sin el paso intermedio del objeto. [3]

Referencias

  1. ^ "Compilador". TechTarget . Consultado el 1 de septiembre de 2011 . Tradicionalmente, el resultado de la compilación se ha denominado código objeto o, en ocasiones, módulo objeto.
  2. ^ Aho, Alfred V. ; Sethi, Ravi ; Ullman, Jeffrey C. (1986). "10 Optimización de código". Compiladores: principios, técnicas y herramientas . Ciencias de la computación. Mark S. Dalton. p. 704. ISBN 0-201-10194-7.
  3. ^ Fischer, Charles N. "¿Qué producen los compiladores?" (PDF) . Universidad de Wisconsin Madison . Consultado el 2 de abril de 2024 .